Schemas

Advanced Application Key Query

Schema for advanced application key queries

Advanced Application Key Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$and": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedApplicationKeyQuery"
      },
      "maxItems": 100
    },
    "$or": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedApplicationKeyQuery"
      },
      "maxItems": 100
    },
    "$nor": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedApplicationKeyQuery"
      },
      "maxItems": 100
    },
    "id": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "creationDate": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "lastUpdated": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "status": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "deviceIds": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "deviceTags": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "$tagKey": {
                  "type": "string",
                  "maxLength": 255
                },
                "$tagValue": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "additionalProperties": false,
              "minProperties": 1
            },
            {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "$eq"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$ne": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "$ne"
          ],
          "additionalProperties": false
        }
      ]
    },
    "key": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "description": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "filterType": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "pubTopics": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "subTopics": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    }
  }
}

Advanced Application Key Query Example

{
  "$nor": [
    {
      "id": "575ec8687ae143cd83dc4a97"
    },
    {
      "description": "my access key"
    },
    {
      "lastUpdated": {
        "$lt": 1612189931000
      }
    }
  ]
}

Advanced Device Query

Schema for advanced device queries

Advanced Device Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$and": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedDeviceQuery"
      },
      "maxItems": 100
    },
    "$or": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedDeviceQuery"
      },
      "maxItems": 100
    },
    "$nor": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedDeviceQuery"
      },
      "maxItems": 100
    },
    "id": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "creationDate": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "lastUpdated": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "name": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "deviceClass": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "gatewayId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "parentId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "ancestorId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "attributeName": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "experienceUserId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "experienceGroupId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "tags": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "$tagKey": {
                  "type": "string",
                  "maxLength": 255
                },
                "$tagValue": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "additionalProperties": false,
              "minProperties": 1
            },
            {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "$eq"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$ne": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "$ne"
          ],
          "additionalProperties": false
        }
      ]
    },
    "disconnectedAt": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "connectedAt": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "connectionStatus": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    }
  },
  "additionalProperties": false
}

Advanced Device Query Example

{
  "$or": [
    {
      "name": {
        "$ne": "myValue"
      }
    },
    {
      "parentId": "575ec8687ae143cd83dc4a97"
    }
  ]
}

Advanced Event Query

Schema for advanced event queries

Advanced Event Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$and": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedEventQuery"
      },
      "maxItems": 100
    },
    "$or": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedEventQuery"
      },
      "maxItems": 100
    },
    "$nor": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedEventQuery"
      },
      "maxItems": 100
    },
    "id": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "creationDate": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "lastUpdated": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "sourceId": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "sourceType": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "level": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "state": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "subject": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "deviceId": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "experienceUserId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "experienceGroupId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "eventTags": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "$tagKey": {
                  "type": "string",
                  "maxLength": 255
                },
                "$tagValue": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "additionalProperties": false,
              "minProperties": 1
            },
            {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "$eq"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$ne": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "$ne"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "additionalProperties": false
}

Advanced Event Query Example

{
  "$or": [
    {
      "level": {
        "$ne": "myValue"
      }
    },
    {
      "level": 5
    }
  ]
}

Advanced Experience Group Query

Schema for advanced experience group queries

Advanced Experience Group Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$and": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedExperienceGroupQuery"
      },
      "maxItems": 100
    },
    "$or": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedExperienceGroupQuery"
      },
      "maxItems": 100
    },
    "$nor": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedExperienceGroupQuery"
      },
      "maxItems": 100
    },
    "id": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "creationDate": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "lastUpdated": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "name": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "parentId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "ancestorId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "groupTags": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "$tagKey": {
                  "type": "string",
                  "maxLength": 255
                },
                "$tagValue": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "additionalProperties": false,
              "minProperties": 1
            },
            {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "$eq"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$ne": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "$ne"
          ],
          "additionalProperties": false
        }
      ]
    },
    "experienceUserId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "experienceEndpointId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    }
  },
  "additionalProperties": false
}

Advanced Experience Group Query Example

{
  "name": "My Great Group",
  "lastUpdated": "2022-01-30T17:18:11.911Z"
}

Advanced Workflow By Version Query

Schema for advanced workflow queries

Advanced Workflow By Version Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$and": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowByVersionQuery"
      },
      "maxItems": 100
    },
    "$or": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowByVersionQuery"
      },
      "maxItems": 100
    },
    "$nor": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowByVersionQuery"
      },
      "maxItems": 100
    },
    "name": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "id": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "creationDate": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "lastUpdated": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "flowClass": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "enabled": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "flowId": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    }
  },
  "additionalProperties": false
}

Advanced Workflow By Version Query Example

{
  "flowId": "000000000000000000000000"
}

Advanced Workflow Query

Schema for advanced workflow queries

Advanced Workflow Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$and": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowQuery"
      },
      "maxItems": 100
    },
    "$or": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowQuery"
      },
      "maxItems": 100
    },
    "$nor": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowQuery"
      },
      "maxItems": 100
    },
    "name": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "id": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "creationDate": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "lastUpdated": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "flowClass": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "enabled": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "defaultVersion": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "triggers": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "maxLength": 255
            },
            "key": {
              "type": "string",
              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
            },
            "config": {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}$": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ],
                  "maxLength": 1024
                }
              }
            }
          },
          "required": [
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "$eq"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$ne": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "$ne"
          ],
          "additionalProperties": false
        }
      ]
    },
    "nodes": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "maxLength": 255
            },
            "config": {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}$": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ],
                  "maxLength": 1024
                }
              }
            }
          },
          "required": [
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "$eq"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$ne": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "$ne"
          ],
          "additionalProperties": false
        }
      ]
    },
    "customNodeSupports": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    }
  },
  "additionalProperties": false
}

Advanced Workflow Query Example

{
  "$or": [
    {
      "name": {
        "$ne": "flowie"
      }
    },
    {
      "enabled": false
    }
  ]
}

Advanced Workflow Version Query

Schema for advanced workflow queries

Advanced Workflow Version Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$and": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowVersionQuery"
      },
      "maxItems": 100
    },
    "$or": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowVersionQuery"
      },
      "maxItems": 100
    },
    "$nor": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedFlowVersionQuery"
      },
      "maxItems": 100
    },
    "name": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "id": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$ne": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lt": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$gte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$lte": {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            }
          },
          "additionalProperties": false,
          "minProperties": 1,
          "maxProperties": 1
        }
      ]
    },
    "creationDate": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "lastUpdated": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "flowClass": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "enabled": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "version": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    },
    "triggers": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "maxLength": 255
            },
            "key": {
              "type": "string",
              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
            },
            "config": {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}$": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ],
                  "maxLength": 1024
                }
              }
            }
          },
          "required": [
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "$eq"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$ne": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "$ne"
          ],
          "additionalProperties": false
        }
      ]
    },
    "nodes": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "maxLength": 255
            },
            "config": {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}$": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ],
                  "maxLength": 1024
                }
              }
            }
          },
          "required": [
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "$eq"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "$ne": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "$ne"
          ],
          "additionalProperties": false
        }
      ]
    },
    "customNodeSupports": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    }
  },
  "additionalProperties": false
}

Advanced Workflow Version Query Example

{
  "version": "theVersion"
}

Advanced Query

Schema for advanced filters and queries

Advanced Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$and": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedQuery"
      },
      "maxItems": 100
    },
    "$or": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedQuery"
      },
      "maxItems": 100
    },
    "$nor": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/advancedQuery"
      },
      "maxItems": 100
    }
  },
  "patternProperties": {
    "^[0-9a-zA-Z_-]{1,255}$": {
      "oneOf": [
        {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        },
        {
          "type": "object",
          "properties": {
            "$eq": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$ne": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lt": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$gte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$lte": {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            "$startsWith": {
              "type": "string",
              "minLength": 1
            },
            "$endsWith": {
              "type": "string",
              "minLength": 1
            },
            "$contains": {
              "type": "string",
              "minLength": 1
            },
            "$ci": {
              "type": "boolean"
            },
            "$in": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            },
            "$nin": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "type": [
                  "string",
                  "number",
                  "boolean"
                ]
              }
            }
          },
          "additionalProperties": false
        }
      ]
    }
  },
  "additionalProperties": false
}

Advanced Query Example

{
  "$or": [
    {
      "level": {
        "$ne": "myValue"
      }
    },
    {
      "level": 5
    }
  ]
}

API Token

Schema for a single API Token

API Token Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "apiTokenId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "ownerId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "ownerType": {
      "type": "string",
      "enum": [
        "application",
        "user"
      ]
    },
    "creatorId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creatorType": {
      "type": "string",
      "enum": [
        "apiToken",
        "user",
        "flow"
      ]
    },
    "creatorName": {
      "type": "string",
      "maxLength": 1024
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "expirationDate": {
      "type": "string",
      "format": "date-time"
    },
    "scope": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "token": {
      "type": "string",
      "minLength": 1
    }
  }
}

API Token Example

{
  "id": "575ec7417ae143cd83dc4a95",
  "apiTokenId": "575ec7417ae143cd83dc4a95",
  "creatorId": "575ed70c7ae143cd83dc4aa9",
  "creatorType": "user",
  "ownerId": "575ec8687ae143cd83dc4a97",
  "ownerType": "application",
  "name": "My API Token",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "expirationDate": "2017-06-13T04:00:00.000Z",
  "scope": [
    "all.Application"
  ],
  "status": "active",
  "token": "the_actual_token_string"
}

API Token Patch

Schema for the body of an API Token modification request

API Token Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    }
  },
  "additionalProperties": false
}

API Token Patch Example

{
  "name": "My Updated API Token",
  "status": "inactive"
}

API Token Post

Schema for the body of an API Token creation request

API Token Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "expirationDate": {
      "type": "string",
      "format": "date-time"
    },
    "scope": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "oneOf": [
          {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "all.Application",
                  "all.Application.read",
                  "all.Application.cli",
                  "all.Device",
                  "all.Device.read",
                  "application.*",
                  "applicationApiToken.*",
                  "applicationApiTokens.*",
                  "applicationCertificate.*",
                  "applicationCertificates.*",
                  "applicationCertificateAuthority.*",
                  "applicationCertificateAuthorities.*",
                  "applicationDashboards.*",
                  "applicationDashboard.*",
                  "applicationKey.*",
                  "applicationKeys.*",
                  "credential.*",
                  "credentials.*",
                  "data.*",
                  "dataTable.*",
                  "dataTables.*",
                  "dataTableRow.*",
                  "dataTableRows.*",
                  "device.*",
                  "deviceRecipe.*",
                  "deviceRecipes.*",
                  "devices.*",
                  "edgeDeployment.*",
                  "edgeDeployments.*",
                  "embeddedDeployment.*",
                  "embeddedDeployments.*",
                  "event.*",
                  "events.*",
                  "experience.*",
                  "experienceDomain.*",
                  "experienceDomains.*",
                  "experienceEndpoint.*",
                  "experienceEndpoints.*",
                  "experienceGroup.*",
                  "experienceGroups.*",
                  "experienceSlug.*",
                  "experienceSlugs.*",
                  "experienceUser.*",
                  "experienceUsers.*",
                  "experienceVersion.*",
                  "experienceVersions.*",
                  "experienceView.*",
                  "experienceViews.*",
                  "integration.*",
                  "integrations.*",
                  "file.*",
                  "files.*",
                  "flow.*",
                  "flows.*",
                  "flowVersion.*",
                  "flowVersions.*",
                  "resourceJobs.*",
                  "resourceJob.*",
                  "notebook.*",
                  "notebooks.*",
                  "webhook.*",
                  "webhooks.*",
                  "application.applyTemplate",
                  "application.archiveData",
                  "application.backfillArchiveData",
                  "application.clone",
                  "application.export",
                  "application.import",
                  "application.fullEventsArchive",
                  "application.fullDataTablesArchive",
                  "application.debug",
                  "application.delete",
                  "application.get",
                  "application.mqttPublishMessage",
                  "application.mqttSubscriptionStream",
                  "application.patch",
                  "application.payloadCounts",
                  "application.payloadCountsBreakdown",
                  "application.deviceCounts",
                  "application.notebookMinuteCounts",
                  "application.search",
                  "application.importLogs",
                  "applicationApiToken.delete",
                  "applicationApiToken.get",
                  "applicationApiToken.patch",
                  "applicationApiTokens.get",
                  "applicationApiTokens.post",
                  "applicationCertificate.delete",
                  "applicationCertificate.get",
                  "applicationCertificate.patch",
                  "applicationCertificates.get",
                  "applicationCertificates.post",
                  "applicationCertificateAuthority.delete",
                  "applicationCertificateAuthority.get",
                  "applicationCertificateAuthority.patch",
                  "applicationCertificateAuthorities.get",
                  "applicationCertificateAuthorities.post",
                  "applicationDashboard.get",
                  "applicationDashboard.patch",
                  "applicationDashboard.sendReport",
                  "applicationDashboard.delete",
                  "applicationDashboards.get",
                  "applicationDashboards.post",
                  "applicationKey.delete",
                  "applicationKey.get",
                  "applicationKey.patch",
                  "applicationKeys.get",
                  "applicationKeys.post",
                  "credential.get",
                  "credential.linkedResources",
                  "credential.patch",
                  "credential.delete",
                  "credentials.get",
                  "credentials.post",
                  "data.export",
                  "data.lastValueQuery",
                  "data.timeSeriesQuery",
                  "dataTable.addColumn",
                  "dataTable.delete",
                  "dataTable.get",
                  "dataTable.patch",
                  "dataTable.removeColumn",
                  "dataTableRow.delete",
                  "dataTableRow.get",
                  "dataTableRow.patch",
                  "dataTableRows.get",
                  "dataTableRows.post",
                  "dataTableRows.query",
                  "dataTableRows.export",
                  "dataTableRows.delete",
                  "dataTableRows.truncate",
                  "dataTables.get",
                  "dataTables.post",
                  "device.agentLogs",
                  "device.commandStream",
                  "device.debug",
                  "device.delete",
                  "device.export",
                  "device.get",
                  "device.getCommand",
                  "device.getCompositeState",
                  "device.getLogEntries",
                  "device.getState",
                  "device.patch",
                  "device.payloadCounts",
                  "device.payloadCountsBreakdown",
                  "device.removeData",
                  "device.sendCommand",
                  "device.sendState",
                  "device.setConnectionStatus",
                  "device.stateStream",
                  "deviceRecipe.bulkCreate",
                  "deviceRecipe.delete",
                  "deviceRecipe.get",
                  "deviceRecipe.patch",
                  "deviceRecipes.get",
                  "deviceRecipes.post",
                  "devices.attributeNames",
                  "devices.patch",
                  "devices.delete",
                  "devices.removeData",
                  "devices.detailedSummary",
                  "devices.deviceNames",
                  "devices.export",
                  "devices.get",
                  "devices.getCompositeState",
                  "devices.historicalImport",
                  "devices.payloadCounts",
                  "devices.post",
                  "devices.sendCommand",
                  "devices.tagKeys",
                  "devices.tagValues",
                  "edgeDeployment.get",
                  "edgeDeployments.get",
                  "edgeDeployments.release",
                  "edgeDeployments.remove",
                  "edgeDeployments.replace",
                  "embeddedDeployment.get",
                  "embeddedDeployments.get",
                  "embeddedDeployments.release",
                  "embeddedDeployments.remove",
                  "embeddedDeployments.replace",
                  "embeddedDeployments.export",
                  "event.delete",
                  "event.get",
                  "event.patch",
                  "events.delete",
                  "events.detailedSummary",
                  "events.get",
                  "events.mostRecentBySeverity",
                  "events.patch",
                  "events.post",
                  "events.export",
                  "experience.delete",
                  "experience.bootstrap",
                  "experienceDomain.delete",
                  "experienceDomain.get",
                  "experienceDomain.patch",
                  "experienceDomains.get",
                  "experienceDomains.post",
                  "experienceEndpoint.delete",
                  "experienceEndpoint.get",
                  "experienceEndpoint.linkedResources",
                  "experienceEndpoint.patch",
                  "experienceEndpoints.get",
                  "experienceEndpoints.post",
                  "experienceEndpoints.stats",
                  "experienceGroup.delete",
                  "experienceGroup.get",
                  "experienceGroup.patch",
                  "experienceGroups.detailedSummary",
                  "experienceGroups.get",
                  "experienceGroups.post",
                  "experienceSlug.delete",
                  "experienceSlug.get",
                  "experienceSlug.patch",
                  "experienceSlugs.get",
                  "experienceSlugs.post",
                  "experienceUser.delete",
                  "experienceUser.get",
                  "experienceUser.patch",
                  "experienceUsers.detailedSummary",
                  "experienceUsers.get",
                  "experienceUsers.post",
                  "experienceVersion.delete",
                  "experienceVersion.get",
                  "experienceVersion.patch",
                  "experienceVersions.get",
                  "experienceVersions.post",
                  "experienceView.debug",
                  "experienceView.delete",
                  "experienceView.get",
                  "experienceView.linkedResources",
                  "experienceView.patch",
                  "experienceViews.debug",
                  "experienceViews.detailedSummary",
                  "experienceViews.get",
                  "experienceViews.post",
                  "file.get",
                  "file.patch",
                  "file.move",
                  "file.delete",
                  "file.upload",
                  "files.get",
                  "files.post",
                  "flow.clearStorageEntries",
                  "flow.debug",
                  "flow.delete",
                  "flow.errors",
                  "flow.get",
                  "flow.getStorageEntries",
                  "flow.log",
                  "flow.patch",
                  "flow.pressVirtualButton",
                  "flow.setStorageEntry",
                  "flow.getStorageEntriesMetadata",
                  "flow.stats",
                  "flows.get",
                  "flows.getByVersion",
                  "flows.import",
                  "flows.palette",
                  "flows.post",
                  "flowVersion.delete",
                  "flowVersion.debug",
                  "flowVersion.errors",
                  "flowVersion.get",
                  "flowVersion.log",
                  "flowVersion.patch",
                  "flowVersion.stats",
                  "flowVersions.delete",
                  "flowVersions.get",
                  "flowVersions.post",
                  "integration.delete",
                  "integration.get",
                  "integration.patch",
                  "integrations.get",
                  "integrations.post",
                  "notebook.delete",
                  "notebook.execute",
                  "notebook.get",
                  "notebook.logs",
                  "notebook.notebookMinuteCounts",
                  "notebook.patch",
                  "notebook.requestInputDataExport",
                  "notebook.upload",
                  "notebooks.get",
                  "notebooks.post",
                  "resourceJob.get",
                  "resourceJob.logs",
                  "resourceJob.patch",
                  "resourceJob.delete",
                  "resourceJob.execute",
                  "resourceJob.cancelExecution",
                  "resourceJobs.get",
                  "resourceJobs.post",
                  "webhook.delete",
                  "webhook.get",
                  "webhook.patch",
                  "webhooks.get",
                  "webhooks.post"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "all.Organization",
                  "all.Organization.read",
                  "applications.*",
                  "auditLog.*",
                  "auditLogs.*",
                  "dashboard.*",
                  "dashboards.*",
                  "org.*",
                  "applications.get",
                  "applications.post",
                  "applications.import",
                  "applications.detailedSummary",
                  "applications.periodSummaries",
                  "auditLog.get",
                  "auditLogs.get",
                  "dashboard.patch",
                  "dashboard.delete",
                  "dashboard.sendReport",
                  "dashboards.get",
                  "dashboards.post",
                  "org.get",
                  "org.patch",
                  "org.delete",
                  "org.pendingInvites",
                  "org.inviteMember",
                  "org.revokeInvite",
                  "org.modifyMember",
                  "org.removeMember",
                  "org.payloadCounts",
                  "org.payloadCountsBreakdown",
                  "org.deviceCounts",
                  "org.notebookMinuteCounts",
                  "org.invoices",
                  "org.currentCard",
                  "org.chargeDetails",
                  "org.transferResources"
                ]
              }
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.Instance",
              "all.Instance.read",
              "instance.*",
              "instance.get",
              "instance.patch",
              "instance.historicalSummaries",
              "instance.generateReport",
              "instance.payloadCountsBreakdown",
              "instance.deviceCounts",
              "instance.notebookMinuteCounts",
              "instanceOrg.*",
              "instanceOrg.get",
              "instanceOrg.patch",
              "instanceOrg.delete",
              "instanceOrg.payloadCountsBreakdown",
              "instanceOrg.deviceCounts",
              "instanceOrg.notebookMinuteCounts",
              "instanceOrgs.*",
              "instanceOrgs.get",
              "instanceOrgs.post",
              "instanceMember.*",
              "instanceMember.get",
              "instanceMember.patch",
              "instanceMember.delete",
              "instanceMembers.*",
              "instanceMembers.get",
              "instanceMembers.post",
              "instanceOrgMember.*",
              "instanceOrgMember.get",
              "instanceOrgMember.patch",
              "instanceOrgMember.delete",
              "instanceOrgMembers.*",
              "instanceOrgMembers.get",
              "instanceOrgMembers.post",
              "instanceOrgInvite.*",
              "instanceOrgInvite.get",
              "instanceOrgInvite.delete",
              "instanceOrgInvite.resendInvite",
              "instanceOrgInvites.*",
              "instanceOrgInvites.get",
              "instanceOrgInvites.post",
              "instanceApiTokens.*",
              "instanceApiTokens.get",
              "instanceApiTokens.post",
              "instanceApiToken.*",
              "instanceApiToken.get",
              "instanceApiToken.patch",
              "instanceApiToken.delete",
              "instanceCustomNodes.*",
              "instanceCustomNodes.get",
              "instanceCustomNodes.post",
              "instanceCustomNode.*",
              "instanceCustomNode.get",
              "instanceCustomNode.patch",
              "instanceCustomNode.delete",
              "instanceCustomNode.errors",
              "instanceCustomNode.stats",
              "instanceSandbox.*",
              "instanceSandbox.get",
              "instanceSandbox.delete",
              "instanceSandbox.undelete",
              "instanceSandboxes.*",
              "instanceSandboxes.get",
              "instanceAuditLog.*",
              "instanceAuditLog.get",
              "instanceAuditLogs.*",
              "instanceAuditLogs.get"
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.User",
              "all.User.read",
              "all.User.cli",
              "userApiToken.*",
              "userApiToken.get",
              "userApiToken.patch",
              "userApiToken.delete",
              "userApiTokens.*",
              "userApiTokens.get",
              "userApiTokens.post",
              "applicationTemplate.*",
              "applicationTemplate.get",
              "applicationTemplates.*",
              "applicationTemplates.get",
              "applicationTemplates.getCategories",
              "applicationTemplates.getUniqueKeywords",
              "instances.*",
              "instances.get",
              "me.*",
              "me.get",
              "me.patch",
              "me.delete",
              "me.verifyEmail",
              "me.changePassword",
              "me.generateTwoFactorAuth",
              "me.enableTwoFactorAuth",
              "me.disableTwoFactorAuth",
              "me.disconnectGithub",
              "me.connectGithub",
              "me.addRecentItem",
              "me.fetchRecentItems",
              "me.payloadCounts",
              "me.payloadCountsBreakdown",
              "me.deviceCounts",
              "me.notebookMinuteCounts",
              "me.transferResources",
              "me.invite",
              "me.invites",
              "me.respondToInvite",
              "orgs.*",
              "orgs.get",
              "orgs.post"
            ]
          }
        ]
      }
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

API Token Post Example

{
  "name": "My New API Token",
  "expirationDate": "2017-06-13T04:00:00.000Z",
  "scope": [
    "all.Application"
  ],
  "status": "active"
}

API Tokens

Schema for a collection of API Tokens

API Tokens Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "API Token",
        "description": "Schema for a single API Token",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "apiTokenId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "ownerId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "ownerType": {
            "type": "string",
            "enum": [
              "application",
              "user"
            ]
          },
          "creatorId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creatorType": {
            "type": "string",
            "enum": [
              "apiToken",
              "user",
              "flow"
            ]
          },
          "creatorName": {
            "type": "string",
            "maxLength": 1024
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "expirationDate": {
            "type": "string",
            "format": "date-time"
          },
          "scope": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            }
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "inactive"
            ]
          },
          "token": {
            "type": "string",
            "minLength": 1
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "ownerId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "ownerType": {
      "type": "string",
      "enum": [
        "application",
        "user"
      ]
    }
  }
}

API Tokens Example

{
  "items": [
    {
      "id": "575ec7417ae143cd83dc4a95",
      "apiTokenId": "575ec7417ae143cd83dc4a95",
      "creatorId": "575ed70c7ae143cd83dc4aa9",
      "creatorType": "user",
      "ownerId": "575ec8687ae143cd83dc4a97",
      "ownerType": "application",
      "name": "My API Token",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "expirationDate": "2017-06-13T04:00:00.000Z",
      "scope": [
        "all.Application"
      ],
      "status": "active",
      "token": "the_actual_token_string"
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "ownerId": "575ec8687ae143cd83dc4a97",
  "ownerType": "application"
}

Application

Schema for a single Application

Application Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "appliedTemplateIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "ownerId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "ownerType": {
      "type": "string",
      "enum": [
        "user",
        "organization"
      ]
    },
    "organizationName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "organizationIconColor": {
      "type": "string",
      "maxLength": 64
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 1024
    },
    "endpointSlug": {
      "type": "string",
      "minLength": 3,
      "maxLength": 63,
      "pattern": "^[0-9a-z-]*$"
    },
    "expUserTokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "endpointDefaultCors": {
      "type": "boolean"
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          },
          "cloudOnly": {
            "type": "boolean",
            "default": false
          },
          "description": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "blobUrlTTL": {
      "type": "number",
      "minimum": 3600,
      "maximum": 604800
    },
    "summary": {
      "type": "object",
      "properties": {
        "apiTokenCount": {
          "type": "integer"
        },
        "certificateCount": {
          "type": "integer"
        },
        "certificateAuthorityCount": {
          "type": "integer"
        },
        "credentialCount": {
          "type": "integer"
        },
        "dashCount": {
          "type": "integer"
        },
        "dataTableCount": {
          "type": "integer"
        },
        "deviceCount": {
          "type": "integer"
        },
        "deviceRecipeCount": {
          "type": "integer"
        },
        "eventCount": {
          "type": "integer"
        },
        "experienceDomainCount": {
          "type": "integer"
        },
        "experienceEndpointCount": {
          "type": "integer"
        },
        "experienceGroupCount": {
          "type": "integer"
        },
        "experienceSlugCount": {
          "type": "integer"
        },
        "experienceUserCount": {
          "type": "integer"
        },
        "experienceVersionCount": {
          "type": "integer"
        },
        "experienceViewCount": {
          "type": "integer"
        },
        "fileCount": {
          "type": "integer"
        },
        "flowCount": {
          "type": "integer"
        },
        "integrationCount": {
          "type": "integer"
        },
        "keyCount": {
          "type": "integer"
        },
        "notebookCount": {
          "type": "integer"
        },
        "resourceJobCount": {
          "type": "integer"
        },
        "webhookCount": {
          "type": "integer"
        },
        "payloadCount": {
          "title": "Payload Stats",
          "description": "Schema for the result of a payload stats request",
          "type": "object",
          "properties": {
            "dataTable": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceCommand": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceConnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceDisconnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceState": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "endpoint": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "event": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "flowError": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "integration": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttIn": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttOut": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "notebook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "timer": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "virtualButton": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "webhook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "resourceJob": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            }
          }
        },
        "storageStats": {
          "type": "object",
          "properties": {
            "count": {
              "type": "integer"
            },
            "size": {
              "type": "integer"
            }
          }
        },
        "notebookStats": {
          "type": "object",
          "properties": {
            "awaitingCompletion": {
              "type": "integer"
            },
            "minutesThisPeriod": {
              "type": "integer"
            },
            "runsThisPeriod": {
              "type": "integer"
            }
          }
        }
      }
    },
    "ftueTracking": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "version": {
            "type": "number"
          },
          "status": {
            "type": "string",
            "enum": [
              "skipped",
              "completed"
            ]
          }
        },
        "required": [
          "name",
          "version",
          "status"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "archiveConfig": {
      "type": "object",
      "properties": {
        "directory": {
          "type": "string",
          "maxLength": 255
        },
        "mode": {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        "deviceIds": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "maxItems": 1000
        },
        "deviceTags": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "value": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "maxItems": 100
        },
        "includeDevices": {
          "type": "boolean",
          "default": true
        },
        "includeEvents": {
          "type": "boolean",
          "default": false
        },
        "includeDataTables": {
          "type": "boolean",
          "default": false
        },
        "dataTablesMode": {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        "dataTableIds": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "maxItems": 1000
        },
        "s3": {
          "type": "object",
          "properties": {
            "bucket": {
              "type": "string",
              "maxLength": 255
            },
            "accessKeyId": {
              "type": "string",
              "minLength": 4,
              "maxLength": 128
            },
            "secretAccessKey": {
              "type": "string",
              "minLength": 4,
              "maxLength": 128
            },
            "region": {
              "type": "string",
              "maxLength": 128
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        },
        "credentialName": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "gcs": {
          "type": "object",
          "properties": {
            "projectId": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            },
            "keyJson": {
              "type": "string",
              "maxLength": 32767,
              "minLength": 4
            },
            "bucket": {
              "type": "string",
              "maxLength": 255
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        },
        "azure": {
          "type": "object",
          "properties": {
            "account": {
              "type": "string",
              "minLength": 3,
              "maxLength": 24
            },
            "accountKey": {
              "type": "string",
              "maxLength": 255
            },
            "bucket": {
              "type": "string",
              "minLength": 3,
              "maxLength": 63
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    }
  }
}

Application Example

{
  "id": "575ec8687ae143cd83dc4a97",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "ownerId": "575ed70c7ae143cd83dc4aa9",
  "ownerType": "user",
  "name": "My Application",
  "description": "The is the best application description",
  "summary": {
    "deviceCount": 5,
    "flowCount": 2,
    "webhookCount": 0,
    "eventCount": 0,
    "keyCount": 1,
    "deviceRecipeCount": 0
  },
  "archiveConfig": {
    "s3": {
      "bucket": "bucketName",
      "accessKeyId": "awsAccessKey",
      "secretAccessKey": "awsSecretKey",
      "region": "us-west-1"
    },
    "mode": "all",
    "deviceIds": [
      "575ec8687ae143cd83dc4a95",
      "575ec8687ae143cd83dc4a91"
    ]
  }
}

Application Apply Template Patch Schema

Schema for the body of an application template import request

Application Apply Template Patch Schema Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "templateId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    }
  },
  "required": [
    "templateId"
  ],
  "additionalProperties": false
}

Application Apply Template Patch Schema Example

{
  "templateId": "575ec8687ae143cd83dc4a97",
  "email": "email@example.com"
}

Application Certificate

Schema for a single Application Certificate

Application Certificate Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationCertificateId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "certificateInfo": {
      "type": "object",
      "properties": {
        "serialNumber": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "fingerprint": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "commonName": {
          "type": "string",
          "maxLength": 1024
        },
        "issuerName": {
          "type": "string",
          "maxLength": 1024
        },
        "notValidBefore": {
          "type": "string",
          "format": "date-time"
        },
        "notValidAfter": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "filterType": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        {
          "type": "string",
          "enum": [
            "none"
          ]
        }
      ]
    },
    "pubTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "subTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    }
  }
}

Application Certificate Example

{
  "id": "5cd02a50df66feb0994c7196",
  "applicationCertificateId": "5cd02a50df66feb0994c7196",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "status": "active",
  "description": "An example certificate description",
  "certificateInfo": {
    "serialNumber": "ad:0e:ff:63:27:83:e5:3e:6b:a9:fb:57:0d:37:fc:e9",
    "fingerprint": "FF:4A:88:5D:93:E7:FF:61:E4:72:94:EE:82:4B:56:B2:AB:71:38:06",
    "commonName": "example.com",
    "issuerName": "Example Issuer",
    "notValidBefore": "2019-04-10T00:00:00.000Z",
    "notValidAfter": "2020-04-10T00:00:00.000Z"
  },
  "filterType": "all",
  "pubTopics": [],
  "subTopics": []
}

Application Certificate Authorities

Schema for a collection of Application Certificate Authorities

Application Certificate Authorities Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Application Certificate Authority",
        "description": "Schema for a single Application Certificate Authority",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationCertificateAuthorityId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "inactive"
            ]
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "caBundle": {
            "type": "string",
            "maxLength": 32767,
            "minLength": 50
          },
          "caInfo": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "serialNumber": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "fingerprint": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "commonName": {
                  "type": "string",
                  "maxLength": 1024
                },
                "issuerName": {
                  "type": "string",
                  "maxLength": 1024
                },
                "notValidBefore": {
                  "type": "string",
                  "format": "date-time"
                },
                "notValidAfter": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Application Certificate Authorities Example

{
  "items": [
    {
      "id": "5cd02a7bdf66feb0994c7197",
      "applicationCertificateAuthorityId": "5cd02a7bdf66feb0994c7197",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "status": "active",
      "name": "my certificate authority",
      "description": "An example certificate authority description",
      "caBundle": "-----BEGIN CERTIFICATE-----\nMY_SSL_CERTIFICATE\n-----END CERTIFICATE-----",
      "caInfo": [
        {
          "serialNumber": "ad:0e:ff:63:27:83:e5:3e:6b:a9:fb:57:0d:37:fc:e9",
          "fingerprint": "FF:4A:88:5D:93:E7:FF:61:E4:72:94:EE:82:4B:56:B2:AB:71:38:06",
          "commonName": "example.com",
          "issuerName": "Example Issuer",
          "notValidBefore": "2019-04-10T00:00:00.000Z",
          "notValidAfter": "2020-04-10T00:00:00.000Z"
        }
      ]
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "key",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Application Certificate Authority

Schema for a single Application Certificate Authority

Application Certificate Authority Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationCertificateAuthorityId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "caBundle": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    },
    "caInfo": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "serialNumber": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "fingerprint": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "commonName": {
            "type": "string",
            "maxLength": 1024
          },
          "issuerName": {
            "type": "string",
            "maxLength": 1024
          },
          "notValidBefore": {
            "type": "string",
            "format": "date-time"
          },
          "notValidAfter": {
            "type": "string",
            "format": "date-time"
          }
        }
      }
    }
  }
}

Application Certificate Authority Example

{
  "id": "5cd02a7bdf66feb0994c7197",
  "applicationCertificateAuthorityId": "5cd02a7bdf66feb0994c7197",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "status": "active",
  "name": "my certificate authority",
  "description": "An example certificate authority description",
  "caBundle": "-----BEGIN CERTIFICATE-----\nMY_SSL_CERTIFICATE\n-----END CERTIFICATE-----",
  "caInfo": [
    {
      "serialNumber": "ad:0e:ff:63:27:83:e5:3e:6b:a9:fb:57:0d:37:fc:e9",
      "fingerprint": "FF:4A:88:5D:93:E7:FF:61:E4:72:94:EE:82:4B:56:B2:AB:71:38:06",
      "commonName": "example.com",
      "issuerName": "Example Issuer",
      "notValidBefore": "2019-04-10T00:00:00.000Z",
      "notValidAfter": "2020-04-10T00:00:00.000Z"
    }
  ]
}

Application Certificate Authority Patch

Schema for the body of an Application Certificate Authority modification request

Application Certificate Authority Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "caBundle": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    }
  },
  "additionalProperties": false
}

Application Certificate Authority Patch Example

{
  "status": "active",
  "description": "An example updated authority description"
}

Application Certificate Authority Post

Schema for the body of an Application Certificate Authority creation request

Application Certificate Authority Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "caBundle": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    }
  },
  "required": [
    "name",
    "caBundle"
  ],
  "additionalProperties": false
}

Application Certificate Authority Post Example

{
  "name": "my certificate authority",
  "description": "An example new authority description",
  "caBundle": "-----BEGIN CERTIFICATE-----\nMY_SSL_CERTIFICATE\n-----END CERTIFICATE-----"
}

Application Certificate Patch

Schema for the body of an Application Certificate modification request

Application Certificate Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "certificate": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    },
    "filterType": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        {
          "type": "string",
          "enum": [
            "none"
          ]
        }
      ]
    },
    "pubTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "subTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    }
  },
  "additionalProperties": false
}

Application Certificate Patch Example

{
  "status": "active",
  "description": "An example updated certificate description"
}

Application Certificate Post

Schema for the body of an Application Certificate creation request

Application Certificate Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "certificate": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    },
    "filterType": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        {
          "type": "string",
          "enum": [
            "none"
          ]
        }
      ]
    },
    "pubTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "subTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    }
  },
  "required": [
    "certificate"
  ],
  "additionalProperties": false
}

Application Certificate Post Example

{
  "description": "An example new certificate description",
  "certificate": "-----BEGIN CERTIFICATE-----\nMY_SSL_CERTIFICATE\n-----END CERTIFICATE-----",
  "filterType": "all",
  "pubTopics": [],
  "subTopics": []
}

Application Certificates

Schema for a collection of Application Certificates

Application Certificates Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Application Certificate",
        "description": "Schema for a single Application Certificate",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationCertificateId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "inactive"
            ]
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "deviceIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "deviceTags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "value": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            },
            "maxItems": 100
          },
          "certificateInfo": {
            "type": "object",
            "properties": {
              "serialNumber": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "fingerprint": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "commonName": {
                "type": "string",
                "maxLength": 1024
              },
              "issuerName": {
                "type": "string",
                "maxLength": 1024
              },
              "notValidBefore": {
                "type": "string",
                "format": "date-time"
              },
              "notValidAfter": {
                "type": "string",
                "format": "date-time"
              }
            }
          },
          "filterType": {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "all",
                  "whitelist",
                  "blacklist"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "none"
                ]
              }
            ]
          },
          "pubTopics": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            }
          },
          "subTopics": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Application Certificates Example

{
  "items": [
    {
      "id": "5cd02a50df66feb0994c7196",
      "applicationCertificateId": "5cd02a50df66feb0994c7196",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "status": "active",
      "description": "An example certificate description",
      "certificateInfo": {
        "serialNumber": "ad:0e:ff:63:27:83:e5:3e:6b:a9:fb:57:0d:37:fc:e9",
        "fingerprint": "FF:4A:88:5D:93:E7:FF:61:E4:72:94:EE:82:4B:56:B2:AB:71:38:06",
        "commonName": "example.com",
        "issuerName": "Example Issuer",
        "notValidBefore": "2019-04-10T00:00:00.000Z",
        "notValidAfter": "2020-04-10T00:00:00.000Z"
      },
      "filterType": "all",
      "pubTopics": [],
      "subTopics": []
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "key",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Success Dry Run

Schema for reporting a successful dry run of clone application

Success Dry Run Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "success": {
      "type": "boolean",
      "enum": [
        true
      ]
    },
    "requiresJob": {
      "type": "boolean"
    }
  }
}

Success Dry Run Example

{
  "success": true,
  "jobRequired": false
}

Application Clone Post Schema

Schema for the body of an application clone request

Application Clone Post Schema Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "dryRun": {
      "type": "boolean",
      "default": false
    },
    "includeFiles": {
      "type": "boolean",
      "default": false
    },
    "includeDataTableRows": {
      "type": "boolean",
      "default": false
    },
    "includeDevices": {
      "type": "boolean",
      "default": false
    },
    "ownerId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "ownerType": {
      "type": "string",
      "enum": [
        "user",
        "organization"
      ]
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "forceJob": {
      "type": "boolean",
      "default": false
    }
  },
  "additionalProperties": false
}

Application Clone Post Schema Example

{
  "includeFiles": true,
  "includeDevices": true,
  "ownerType": "organization",
  "ownerId": "575ec8687ae143cd83dc4a98"
}

Application Creation By Template Result

Schema for creating an application by template result

Application Creation By Template Result Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "application": {
      "title": "Application",
      "description": "Schema for a single Application",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "creationDate": {
          "type": "string",
          "format": "date-time"
        },
        "lastUpdated": {
          "type": "string",
          "format": "date-time"
        },
        "appliedTemplateIds": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "maxItems": 1000
        },
        "ownerId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "ownerType": {
          "type": "string",
          "enum": [
            "user",
            "organization"
          ]
        },
        "organizationName": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "organizationIconColor": {
          "type": "string",
          "maxLength": 64
        },
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "description": {
          "type": "string",
          "maxLength": 1024
        },
        "endpointSlug": {
          "type": "string",
          "minLength": 3,
          "maxLength": 63,
          "pattern": "^[0-9a-z-]*$"
        },
        "expUserTokenCutoff": {
          "type": "string",
          "format": "date-time"
        },
        "endpointDefaultCors": {
          "type": "boolean"
        },
        "globals": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "json": {
                "type": "string",
                "minLength": 1,
                "maxLength": 32767
              },
              "cloudOnly": {
                "type": "boolean",
                "default": false
              },
              "description": {
                "type": "string",
                "maxLength": 1024
              }
            },
            "additionalProperties": false,
            "required": [
              "key",
              "json"
            ]
          }
        },
        "blobUrlTTL": {
          "type": "number",
          "minimum": 3600,
          "maximum": 604800
        },
        "summary": {
          "type": "object",
          "properties": {
            "apiTokenCount": {
              "type": "integer"
            },
            "certificateCount": {
              "type": "integer"
            },
            "certificateAuthorityCount": {
              "type": "integer"
            },
            "credentialCount": {
              "type": "integer"
            },
            "dashCount": {
              "type": "integer"
            },
            "dataTableCount": {
              "type": "integer"
            },
            "deviceCount": {
              "type": "integer"
            },
            "deviceRecipeCount": {
              "type": "integer"
            },
            "eventCount": {
              "type": "integer"
            },
            "experienceDomainCount": {
              "type": "integer"
            },
            "experienceEndpointCount": {
              "type": "integer"
            },
            "experienceGroupCount": {
              "type": "integer"
            },
            "experienceSlugCount": {
              "type": "integer"
            },
            "experienceUserCount": {
              "type": "integer"
            },
            "experienceVersionCount": {
              "type": "integer"
            },
            "experienceViewCount": {
              "type": "integer"
            },
            "fileCount": {
              "type": "integer"
            },
            "flowCount": {
              "type": "integer"
            },
            "integrationCount": {
              "type": "integer"
            },
            "keyCount": {
              "type": "integer"
            },
            "notebookCount": {
              "type": "integer"
            },
            "resourceJobCount": {
              "type": "integer"
            },
            "webhookCount": {
              "type": "integer"
            },
            "payloadCount": {
              "title": "Payload Stats",
              "description": "Schema for the result of a payload stats request",
              "type": "object",
              "properties": {
                "dataTable": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "deviceCommand": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "deviceConnect": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "deviceDisconnect": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "deviceState": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "endpoint": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "event": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "flowError": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "integration": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "mqttIn": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "mqttOut": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "notebook": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "timer": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "virtualButton": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "webhook": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                },
                "resourceJob": {
                  "type": "object",
                  "patternProperties": {
                    ".*": {
                      "type": "number"
                    }
                  }
                }
              }
            },
            "storageStats": {
              "type": "object",
              "properties": {
                "count": {
                  "type": "integer"
                },
                "size": {
                  "type": "integer"
                }
              }
            },
            "notebookStats": {
              "type": "object",
              "properties": {
                "awaitingCompletion": {
                  "type": "integer"
                },
                "minutesThisPeriod": {
                  "type": "integer"
                },
                "runsThisPeriod": {
                  "type": "integer"
                }
              }
            }
          }
        },
        "ftueTracking": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "version": {
                "type": "number"
              },
              "status": {
                "type": "string",
                "enum": [
                  "skipped",
                  "completed"
                ]
              }
            },
            "required": [
              "name",
              "version",
              "status"
            ],
            "additionalProperties": false
          },
          "maxItems": 100
        },
        "archiveConfig": {
          "type": "object",
          "properties": {
            "directory": {
              "type": "string",
              "maxLength": 255
            },
            "mode": {
              "type": "string",
              "enum": [
                "all",
                "whitelist",
                "blacklist"
              ]
            },
            "deviceIds": {
              "type": "array",
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "maxItems": 1000
            },
            "deviceTags": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 100
            },
            "includeDevices": {
              "type": "boolean",
              "default": true
            },
            "includeEvents": {
              "type": "boolean",
              "default": false
            },
            "includeDataTables": {
              "type": "boolean",
              "default": false
            },
            "dataTablesMode": {
              "type": "string",
              "enum": [
                "all",
                "whitelist",
                "blacklist"
              ]
            },
            "dataTableIds": {
              "type": "array",
              "items": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "maxItems": 1000
            },
            "s3": {
              "type": "object",
              "properties": {
                "bucket": {
                  "type": "string",
                  "maxLength": 255
                },
                "accessKeyId": {
                  "type": "string",
                  "minLength": 4,
                  "maxLength": 128
                },
                "secretAccessKey": {
                  "type": "string",
                  "minLength": 4,
                  "maxLength": 128
                },
                "region": {
                  "type": "string",
                  "maxLength": 128
                }
              },
              "required": [
                "bucket"
              ],
              "additionalProperties": false
            },
            "credentialName": {
              "type": "string",
              "minLength": 1,
              "maxLength": 255
            },
            "gcs": {
              "type": "object",
              "properties": {
                "projectId": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "keyJson": {
                  "type": "string",
                  "maxLength": 32767,
                  "minLength": 4
                },
                "bucket": {
                  "type": "string",
                  "maxLength": 255
                }
              },
              "required": [
                "bucket"
              ],
              "additionalProperties": false
            },
            "azure": {
              "type": "object",
              "properties": {
                "account": {
                  "type": "string",
                  "minLength": 3,
                  "maxLength": 24
                },
                "accountKey": {
                  "type": "string",
                  "maxLength": 255
                },
                "bucket": {
                  "type": "string",
                  "minLength": 3,
                  "maxLength": 63
                }
              },
              "required": [
                "bucket"
              ],
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    "validationErrors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      }
    }
  },
  "additionalProperties": false
}

Application Creation By Template Result Example

{
  "application": {
    "id": "575ec8687ae143cd83dc4a98",
    "applicationId": "575ec8687ae143cd83dc4a97",
    "creationDate": "2016-06-13T04:00:00.000Z",
    "lastUpdated": "2016-06-13T04:00:00.000Z",
    "ownerId": "575ed70c7ae143cd83dc4aa9",
    "ownerType": "user",
    "name": "My Application Cloned",
    "description": "The is the best application description",
    "summary": {
      "deviceCount": 5,
      "flowCount": 2,
      "webhookCount": 0,
      "eventCount": 0,
      "keyCount": 1,
      "deviceRecipeCount": 0
    },
    "archiveConfig": {
      "s3": {
        "bucket": "bucketName",
        "accessKeyId": "awsAccessKey",
        "secretAccessKey": "awsSecretKey",
        "region": "us-west-1"
      },
      "mode": "all",
      "deviceIds": [
        "575ec8687ae143cd83dc4a95",
        "575ec8687ae143cd83dc4a91"
      ]
    }
  }
}

Application Dashboard Post

Schema for the body of an Application scoped Dashboard creation request

Application Dashboard Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "blocks": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "application-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "bar"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "xAxisFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "xAxisLabel": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "xAxisMax": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "xAxisMin": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "custom-chart",
                  "custom-html"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "configuration": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "headContent": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "bodyContent": {
                            "type": "string",
                            "maxLength": 32767
                          }
                        },
                        "additionalProperties": false
                      },
                      {
                        "type": "string",
                        "maxLength": 32767
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "time-series"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            },
                            "resolution": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "null"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "gauge"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "data-table"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "dataTableId": {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            "query": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "queryMode": {
                              "type": "string",
                              "enum": [
                                "$or",
                                "$and",
                                "advanced"
                              ]
                            },
                            "sortColumn": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "sortDirection": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "limit": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "offset": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "device-info"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attributes": {
                              "oneOf": [
                                {
                                  "type": "null"
                                },
                                {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                }
                              ]
                            },
                            "excludeConnectionInfo": {
                              "type": "boolean"
                            },
                            "sortField": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "sortDirection": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "page": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "perPage": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "query": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "compositeStateType": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "vegaVersion": {
                    "type": "string",
                    "enum": [
                      "vegaLite2",
                      "vegaLite3",
                      "vegaLite4",
                      "vegaLite5",
                      "vega4",
                      "vega5"
                    ]
                  },
                  "tooltipEventSubscribe": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "dashboard-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "data-table"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "dataTableId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "defaultSortColumn": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultSortDirection": {
                    "oneOf": [
                      {
                        "type": "string",
                        "enum": [
                          "asc",
                          "desc",
                          "ASC",
                          "DESC",
                          ""
                        ]
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "defaultLimit": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultOffset": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "queryMode": {
                    "type": "string",
                    "enum": [
                      "$or",
                      "$and",
                      "advanced"
                    ]
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "type": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                "$custom"
                              ]
                            }
                          ]
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-count"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "segments": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "required": [
                        "id",
                        "query"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "defaultCondition": {
                    "type": "object",
                    "properties": {
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "value": {
                        "type": "string",
                        "maxLength": 32767
                      }
                    },
                    "required": [
                      "color"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "segments",
                  "defaultCondition"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "excludeConnectionInfo": {
                    "type": "boolean"
                  },
                  "deviceLinkNewWindow": {
                    "type": "boolean"
                  },
                  "deviceLinkType": {
                    "type": "string",
                    "enum": [
                      "custom",
                      "default"
                    ]
                  },
                  "deviceLinkUrl": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "match": {
                    "type": "string",
                    "enum": [
                      "unfiltered",
                      "all",
                      "any"
                    ]
                  },
                  "showPublicFilter": {
                    "type": "boolean"
                  },
                  "sortField": {
                    "type": "string",
                    "enum": [
                      "id",
                      "creationDate",
                      "lastUpdated",
                      "name"
                    ]
                  },
                  "sortDirection": {
                    "type": "string",
                    "enum": [
                      "asc",
                      "desc",
                      "ASC",
                      "DESC",
                      ""
                    ]
                  },
                  "filter": {
                    "oneOf": [
                      {
                        "type": "string",
                        "maxLength": 255
                      },
                      {
                        "type": "object",
                        "properties": {
                          "ids": {
                            "type": "array",
                            "maxItems": 100,
                            "items": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "tags": {
                            "type": "array",
                            "maxItems": 100,
                            "items": {
                              "type": "object",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "value": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "fromCtx": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "searchParam": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      }
                    ]
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "id",
                            "connectionStatus",
                            "attribute",
                            "tag",
                            "name",
                            "custom",
                            "created",
                            "updated"
                          ]
                        },
                        "source": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-log"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "includeDeviceInfo": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-state-table"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "attributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "sortDirection": {
                    "type": "integer",
                    "minimum": -1,
                    "maximum": 1
                  },
                  "sortIndex": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceTags",
                            "deviceId",
                            "deviceName",
                            "timestamp",
                            "attribute"
                          ]
                        },
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "event-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "allowUpdates": {
                    "type": "boolean"
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "sortDirection": {
                    "type": "string",
                    "enum": [
                      "asc",
                      "desc",
                      "ASC",
                      "DESC",
                      ""
                    ]
                  },
                  "sortField": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "eventState": {
                    "oneOf": [
                      {
                        "type": "string",
                        "maxLength": 255
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "object",
                        "additionalProperties": false
                      }
                    ]
                  },
                  "columnErrors": {
                    "type": "object",
                    "additionalProperties": false
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "selectedTag": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "level",
                            "subject",
                            "subjectWithMessage",
                            "creationDate",
                            "creationDateWithSource",
                            "lastUpdatedDate",
                            "lastUpdatedDateWithSource",
                            "id",
                            "state",
                            "tag",
                            "deviceName",
                            "sourceId",
                            "custom"
                          ]
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "gauge"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "displayAsPercentage": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "gaugeMax": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "gaugeMin": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "gaugeType": {
                    "type": "string",
                    "enum": [
                      "battery",
                      "dial",
                      "number",
                      "tank",
                      "thermometer"
                    ]
                  },
                  "precision": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "precisionType": {
                    "type": "string",
                    "enum": [
                      "floating",
                      "significant"
                    ]
                  },
                  "segment": {
                    "type": "object",
                    "properties": {
                      "attribute": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "aggregation": {
                        "oneOf": [
                          {
                            "oneOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "FIRST",
                                  "LAST",
                                  "COUNT",
                                  "MAX",
                                  "MIN",
                                  "MEDIAN",
                                  "MEAN",
                                  "SUM",
                                  "STD_DEV"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "NONE"
                                ]
                              }
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "oneOf": [
                                  {
                                    "type": "string",
                                    "enum": [
                                      "FIRST",
                                      "LAST",
                                      "COUNT",
                                      "MAX",
                                      "MIN",
                                      "MEDIAN",
                                      "MEAN",
                                      "SUM",
                                      "STD_DEV"
                                    ]
                                  },
                                  {
                                    "type": "string",
                                    "enum": [
                                      "NONE"
                                    ]
                                  }
                                ]
                              },
                              "options": {
                                "type": "object",
                                "additionalProperties": false
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "type"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TIMEATVALUE"
                                ]
                              },
                              "options": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "boolean"
                                      }
                                    ]
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "value"
                                ]
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "type",
                              "options"
                            ]
                          }
                        ]
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "deviceIds": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "deviceTags": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "value": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "fromCtx": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "expression": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "yAxisLabel": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "lineWeight": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 5
                      },
                      "detectDataGaps": {
                        "type": "boolean"
                      },
                      "graphType": {
                        "type": "string",
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "graph"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "hideLegend": {
                    "type": "boolean"
                  },
                  "disallowUserSelectedDuration": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "recharts": {
                    "type": "boolean"
                  },
                  "displayType": {
                    "type": "string",
                    "enum": [
                      "stick",
                      "line"
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "cumulative": {
                          "type": "boolean"
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "graphType": {
                          "type": "string",
                          "enum": [
                            "area",
                            "bar",
                            "line"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisFormat": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisMax": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "yAxisMin": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "yAxisId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "lineType": {
                          "type": "string",
                          "enum": [
                            "monotone",
                            "step",
                            "stepAfter",
                            "linear",
                            "stepBefore"
                          ]
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "dotWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "yAxes": {
                    "type": "array",
                    "maxItems": 10,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "position": {
                          "type": "string",
                          "enum": [
                            "left",
                            "right",
                            "hidden"
                          ],
                          "default": "left"
                        },
                        "min": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "max": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "format": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "id"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "heatmap"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "defaultBearing": {
                    "type": "number"
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultPitch": {
                    "type": "number"
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "locationTagKey": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "mapStyle": {
                    "type": "string",
                    "enum": [
                      "normal",
                      "satellite"
                    ]
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "iframe"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "maxLength": 2048
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "image"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "bgColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "imageLinkNewWindow": {
                    "type": "boolean"
                  },
                  "imageLinkUrl": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "imageSource": {
                    "type": "string",
                    "enum": [
                      "static",
                      "attribute"
                    ]
                  },
                  "deviceId": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "image-overlay"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "backgroundColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "defaultZoom": {
                    "type": "number"
                  },
                  "disableZoom": {
                    "type": "boolean"
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 300,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "gauge"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "overlays": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "indicator",
                                "label",
                                "image"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "value"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "valueTemplate": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "bar"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "min": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "max": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "backgroundColor": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "valueTemplate": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "length": {
                              "type": "integer",
                              "minimum": 1,
                              "maximum": 10
                            },
                            "orientation": {
                              "type": "string",
                              "enum": [
                                "horizontal",
                                "vertical"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height",
              "config"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "indicator"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "defaultCondition": {
                    "type": "object",
                    "properties": {
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "condition": {
                        "type": "string",
                        "maxLength": 2048
                      },
                      "imageUrl": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "shape": {
                        "type": "string",
                        "enum": [
                          "circle",
                          "square",
                          "triangle-down",
                          "triangle-up",
                          "octagon"
                        ]
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "input"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "defaultMode": {
                    "type": "string",
                    "enum": [
                      "unlocked",
                      "locked"
                    ]
                  },
                  "controls": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "range"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "max": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "min": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "step": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "defaultValue": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "toggle"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "boolean"
                            },
                            "includeLabel": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "text"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 2048
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "select"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "options": {
                              "type": "array",
                              "maxItems": 500,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "help"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "help": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "button"
                              ]
                            },
                            "action": {
                              "type": "string",
                              "enum": [
                                "workflow",
                                "command"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "buttonId": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "workflowId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "commandName": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "map"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "clusterPoints": {
                    "type": "boolean"
                  },
                  "compositeResult": {
                    "type": "boolean"
                  },
                  "defaultBearing": {
                    "type": "number"
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultPitch": {
                    "type": "number"
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "endColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "iconTemplate": {
                    "type": "string",
                    "maxLength": 73727
                  },
                  "includeArrows": {
                    "type": "boolean"
                  },
                  "includeLines": {
                    "type": "boolean"
                  },
                  "locationTagKey": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "mapStyle": {
                    "type": "string",
                    "enum": [
                      "normal",
                      "satellite"
                    ]
                  },
                  "pinMode": {
                    "type": "string",
                    "enum": [
                      "simple",
                      "advanced"
                    ]
                  },
                  "popupTemplate": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "resizedPins": {
                    "type": "boolean"
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "startColor": {
                    "type": "string",
                    "maxLength": 64
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "open-event-indicator"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "allowUpdates": {
                    "type": "boolean"
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "pie"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "percentFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "valueFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "position-chart"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "compositeResult": {
                    "type": "boolean"
                  },
                  "coordinateA": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "coordinateB": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "disableZoom": {
                    "type": "boolean"
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "endColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "iconTemplate": {
                    "type": "string",
                    "maxLength": 73727
                  },
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "includeArrows": {
                    "type": "boolean"
                  },
                  "includeLines": {
                    "type": "boolean"
                  },
                  "pinMode": {
                    "type": "string",
                    "enum": [
                      "simple",
                      "advanced"
                    ]
                  },
                  "pixelA": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "pixelB": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "popupTemplate": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "resizedPins": {
                    "type": "boolean"
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "startColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "xAttribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "yAttribute": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "section-header"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "title": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "content": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "workflow-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "includeCloud": {
                    "type": "boolean"
                  },
                  "includeEdge": {
                    "type": "boolean"
                  },
                  "includeEmbedded": {
                    "type": "boolean"
                  },
                  "includeExperience": {
                    "type": "boolean"
                  },
                  "experienceVersion": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "refreshRate": {
      "type": "number",
      "minimum": 5,
      "maximum": 600
    },
    "duration": {
      "type": "integer",
      "minimum": 1
    },
    "resolution": {
      "type": "integer",
      "minimum": 1
    },
    "defaultTheme": {
      "type": "string",
      "enum": [
        "dark",
        "light"
      ]
    },
    "reportConfigs": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 48
          },
          "cron": {
            "type": "string",
            "maxLength": 255
          },
          "toEmail": {
            "type": "array",
            "minItems": 1,
            "maxItems": 10,
            "items": {
              "type": "string",
              "format": "email",
              "maxLength": 1024
            }
          },
          "callbackUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "subject": {
            "type": "string",
            "maxLength": 255
          },
          "message": {
            "type": "string",
            "maxLength": 32767
          },
          "theme": {
            "type": "string",
            "enum": [
              "dark",
              "light"
            ]
          },
          "timezone": {
            "type": "string",
            "maxLength": 255
          },
          "locale": {
            "type": "string",
            "maxLength": 5
          },
          "ctx": {
            "title": "Dashboard Context Instance",
            "description": "Schema for a dashboard context instance",
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "oneOf": [
                  {
                    "type": "string",
                    "maxLength": 32767
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "key": {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      "value": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  }
                ]
              }
            },
            "additionalProperties": false
          },
          "branded": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "anyOf": [
          {
            "required": [
              "cron",
              "toEmail"
            ]
          },
          {
            "required": [
              "cron",
              "callbackUrl"
            ]
          }
        ]
      }
    },
    "public": {
      "type": "boolean"
    },
    "password": {
      "type": [
        "string",
        "null"
      ]
    },
    "contextConfiguration": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceAttribute"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "attributes": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "maxItems": 100
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceId"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "deviceIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "maxItems": 1000
                  },
                  "deviceTags": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "maxItems": 100
                  },
                  "includeFullDevice": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceTag"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "deviceTags": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "maxItems": 100
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "number"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": [
                  "number",
                  "string"
                ]
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "min": {
                    "type": "number"
                  },
                  "max": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "string"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "regExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "experienceUser"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "experienceGroupIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "maxItems": 1000
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          }
        ]
      },
      "maxItems": 100
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Application Dashboard Post Example

{
  "name": "My New Dashboard",
  "public": false
}

Application Export Post Schema

Schema for the body of an application export request

Application Export Post Schema Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "includeFiles": {
      "type": "boolean",
      "default": false
    },
    "includeDataTableRows": {
      "type": "boolean",
      "default": false
    },
    "includeDevices": {
      "type": "boolean",
      "default": false
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "forceJob": {
      "type": "boolean",
      "default": false
    }
  },
  "additionalProperties": false
}

Application Export Post Schema Example

{
  "includeFiles": true,
  "includeDevices": true,
  "email": "test@example.com"
}

Application Export Result

Schema for an application export result

Application Export Result Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

Application Export Result Example

{
  "url": "https://example.com/applicationExport.zip"
}

Application Global Patch

Schema for the body of an Application Global modification request

Application Global Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "maxItems": 100,
  "items": {
    "type": "object",
    "properties": {
      "key": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      },
      "json": {
        "type": [
          "string",
          "null"
        ],
        "minLength": 1,
        "maxLength": 32767
      },
      "cloudOnly": {
        "type": "boolean"
      },
      "description": {
        "type": "string",
        "maxLength": 1024
      }
    },
    "additionalProperties": false,
    "required": [
      "key"
    ]
  }
}

Application Global Patch Example

[
  {
    "key": "keyHere",
    "description": "Description of my application global",
    "json": "\"my json data here\"",
    "cloudOnly": true
  },
  {
    "key": "anotherKey",
    "json": "\"more json\"",
    "cloudOnly": false
  }
]

Application Import Executions

Schema for a list Application import executions

Application Import Executions Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "importSourceType": {
        "type": "string",
        "enum": [
          "importBundle",
          "importUrl",
          "fromApplication"
        ]
      },
      "importExecutionId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "applicationId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "fromApplicationId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "runQueuedAt": {
        "type": "string",
        "format": "date-time"
      },
      "runStartedAt": {
        "type": "string",
        "format": "date-time"
      },
      "runCompletedAt": {
        "type": "string",
        "format": "date-time"
      },
      "status": {
        "type": "string",
        "enum": [
          "queued",
          "inProgress",
          "completed",
          "errored",
          "failed"
        ]
      },
      "dryRun": {
        "type": "boolean"
      },
      "conflictBehavior": {
        "type": "string",
        "enum": [
          "create",
          "error",
          "retain",
          "replace"
        ],
        "default": "create"
      },
      "callbackUrl": {
        "type": "string",
        "format": "uri",
        "maxLength": 1024
      },
      "email": {
        "type": "string",
        "format": "email",
        "maxLength": 1024
      },
      "include": {
        "type": "array",
        "items": {
          "enum": [
            "ApplicationCertificateAuthority",
            "Dashboard",
            "DataTableRow",
            "DataTable",
            "DeviceRecipe",
            "Device",
            "ExperienceDevelopConfig",
            "ExperienceEndpoint",
            "ExperienceFlowVersion",
            "ExperienceGroup",
            "ExperienceUser",
            "ExperienceVersion",
            "ExperienceView",
            "File",
            "FlowVersion",
            "Flow",
            "Global",
            "Integration",
            "Notebook",
            "Webhook",
            "ResourceJob"
          ]
        },
        "uniqueItems": true
      },
      "jobId": {
        "type": "string",
        "maxLength": 21
      },
      "sourceId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "sourceType": {
        "type": "string",
        "enum": [
          "flow",
          "user",
          "device",
          "apiToken",
          "notebook"
        ]
      },
      "error": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      },
      "dryRunResults": {
        "type": "object",
        "properties": {
          "limitErrors": {
            "type": "array",
            "items": {
              "enum": [
                "ApplicationCertificateAuthority",
                "Dashboard",
                "DataTableRow",
                "DataTable",
                "DeviceRecipe",
                "Device",
                "ExperienceDevelopConfig",
                "ExperienceEndpoint",
                "ExperienceFlowVersion",
                "ExperienceGroup",
                "ExperienceUser",
                "ExperienceVersion",
                "ExperienceView",
                "File",
                "FlowVersion",
                "Flow",
                "Global",
                "Integration",
                "Notebook",
                "Webhook",
                "ResourceJob"
              ]
            },
            "uniqueItems": true
          },
          "url": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          }
        }
      },
      "validationErrors": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "type": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "message": {
              "type": "string"
            }
          }
        }
      },
      "importedFileUrl": {
        "type": "string",
        "format": "uri",
        "maxLength": 1024
      },
      "importUrl": {
        "type": "string",
        "format": "uri",
        "maxLength": 1024
      }
    }
  }
}

Application Import Executions Example

[
  {
    "importExecutionId": "575ec76c7ae143cd83dc4a96",
    "id": "575ec76c7ae143cd83dc4a96",
    "importSourceType": "importBundle",
    "status": "completed",
    "conflictBehavior": "create",
    "dryRun": false,
    "email": "test@losant.com",
    "include": [
      "ExperienceUser",
      "ExperienceEndpoint",
      "ExperienceGroup",
      "ExperienceVersion",
      "ExperienceView"
    ],
    "applicationId": "575ec8687ae143cd83dc4a97",
    "sourceId": "575ec8687ae143cd83dc4a96",
    "sourceType": "user",
    "runCompletedAt": "2016-06-13T04:00:00.000Z",
    "importedFileUrl": "https://example.com/my/filename.zip",
    "runStartedAt": "2016-06-13T04:00:00.000Z"
  }
]

Application Key

Schema for a single Application Key

Application Key Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationKeyId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "key": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "filterType": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        {
          "type": "string",
          "enum": [
            "none"
          ]
        }
      ]
    },
    "pubTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "subTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    }
  }
}

Application Key Example

{
  "id": "575ec76c7ae143cd83dc4a96",
  "applicationKeyId": "575ec76c7ae143cd83dc4a96",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "key": "this_would_be_the_key",
  "status": "active",
  "description": "An example key description",
  "filterType": "all",
  "pubTopics": [],
  "subTopics": []
}

Application Key Patch

Schema for the body of an Application Key modification request

Application Key Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "filterType": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        {
          "type": "string",
          "enum": [
            "none"
          ]
        }
      ]
    },
    "pubTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "subTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    }
  },
  "additionalProperties": false
}

Application Key Patch Example

{
  "status": "active",
  "description": "An example updated key description"
}

Application Key Post

Schema for the body of an Application Key creation request

Application Key Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "filterType": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        {
          "type": "string",
          "enum": [
            "none"
          ]
        }
      ]
    },
    "pubTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "subTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    }
  },
  "additionalProperties": false
}

Application Key Post Example

{
  "description": "An example new key description",
  "filterType": "all",
  "pubTopics": [],
  "subTopics": []
}

Application Key Post Response

Schema for a response of Application Key creation

Application Key Post Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationKeyId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "key": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "secret": {
      "type": "string"
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "filterType": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        {
          "type": "string",
          "enum": [
            "none"
          ]
        }
      ]
    },
    "pubTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "subTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    }
  }
}

Application Key Post Response Example

{
  "id": "575ec76c7ae143cd83dc4a96",
  "applicationKeyId": "575ec76c7ae143cd83dc4a96",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "key": "this_would_be_the_key",
  "status": "active",
  "secret": "shhhSecret",
  "description": "An example key description",
  "filterType": "all",
  "pubTopics": [],
  "subTopics": []
}

Application Keys

Schema for a collection of Application Keys

Application Keys Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Application Key",
        "description": "Schema for a single Application Key",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationKeyId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "key": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "inactive"
            ]
          },
          "deviceIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "deviceTags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "value": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            },
            "maxItems": 100
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "filterType": {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "all",
                  "whitelist",
                  "blacklist"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "none"
                ]
              }
            ]
          },
          "pubTopics": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            }
          },
          "subTopics": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Application Keys Example

{
  "items": [
    {
      "id": "575ec76c7ae143cd83dc4a96",
      "applicationKeyId": "575ec76c7ae143cd83dc4a96",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "key": "this_would_be_the_key",
      "status": "active",
      "description": "An example key description",
      "filterType": "all",
      "pubTopics": [],
      "subTopics": []
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "key",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Application Patch

Schema for the body of an Application modification request

Application Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 1024
    },
    "endpointSlug": {
      "type": "string",
      "minLength": 3,
      "maxLength": 63,
      "pattern": "^[0-9a-z-]*$"
    },
    "expUserTokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "endpointDefaultCors": {
      "type": "boolean"
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          },
          "cloudOnly": {
            "type": "boolean",
            "default": false
          },
          "description": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "ftueTracking": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "version": {
            "type": "number"
          },
          "status": {
            "type": "string",
            "enum": [
              "skipped",
              "completed"
            ]
          }
        },
        "required": [
          "name",
          "version",
          "status"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "archiveConfig": {
      "type": "object",
      "properties": {
        "directory": {
          "type": "string",
          "maxLength": 255
        },
        "mode": {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        "deviceIds": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "maxItems": 1000
        },
        "deviceTags": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "value": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "maxItems": 100
        },
        "includeDevices": {
          "type": "boolean",
          "default": true
        },
        "includeEvents": {
          "type": "boolean",
          "default": false
        },
        "includeDataTables": {
          "type": "boolean",
          "default": false
        },
        "dataTablesMode": {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        "dataTableIds": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "maxItems": 1000
        },
        "s3": {
          "type": "object",
          "properties": {
            "bucket": {
              "type": "string",
              "maxLength": 255
            },
            "accessKeyId": {
              "type": "string",
              "minLength": 4,
              "maxLength": 128
            },
            "secretAccessKey": {
              "type": "string",
              "minLength": 4,
              "maxLength": 128
            },
            "region": {
              "type": "string",
              "maxLength": 128
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        },
        "credentialName": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "gcs": {
          "type": "object",
          "properties": {
            "projectId": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            },
            "keyJson": {
              "type": "string",
              "maxLength": 32767,
              "minLength": 4
            },
            "bucket": {
              "type": "string",
              "maxLength": 255
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        },
        "azure": {
          "type": "object",
          "properties": {
            "account": {
              "type": "string",
              "minLength": 3,
              "maxLength": 24
            },
            "accountKey": {
              "type": "string",
              "maxLength": 255
            },
            "bucket": {
              "type": "string",
              "minLength": 3,
              "maxLength": 63
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    "blobUrlTTL": {
      "type": "number",
      "minimum": 3600,
      "maximum": 604800
    }
  },
  "additionalProperties": false
}

Application Patch Example

{
  "name": "My Updated Application",
  "description": "Description of my updated application"
}

Application Post

Schema for the body of an Application creation request

Application Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationTemplateId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 1024
    },
    "appliedTemplateIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "endpointSlug": {
      "type": "string",
      "minLength": 3,
      "maxLength": 63,
      "pattern": "^[0-9a-z-]*$"
    },
    "expUserTokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "endpointDefaultCors": {
      "type": "boolean"
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          },
          "cloudOnly": {
            "type": "boolean",
            "default": false
          },
          "description": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "archiveConfig": {
      "type": "object",
      "properties": {
        "directory": {
          "type": "string",
          "maxLength": 255
        },
        "mode": {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        "deviceIds": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "maxItems": 1000
        },
        "deviceTags": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "value": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "maxItems": 100
        },
        "includeDevices": {
          "type": "boolean",
          "default": true
        },
        "includeEvents": {
          "type": "boolean",
          "default": false
        },
        "includeDataTables": {
          "type": "boolean",
          "default": false
        },
        "dataTablesMode": {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        "dataTableIds": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "maxItems": 1000
        },
        "s3": {
          "type": "object",
          "properties": {
            "bucket": {
              "type": "string",
              "maxLength": 255
            },
            "accessKeyId": {
              "type": "string",
              "minLength": 4,
              "maxLength": 128
            },
            "secretAccessKey": {
              "type": "string",
              "minLength": 4,
              "maxLength": 128
            },
            "region": {
              "type": "string",
              "maxLength": 128
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        },
        "credentialName": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "gcs": {
          "type": "object",
          "properties": {
            "projectId": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            },
            "keyJson": {
              "type": "string",
              "maxLength": 32767,
              "minLength": 4
            },
            "bucket": {
              "type": "string",
              "maxLength": 255
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        },
        "azure": {
          "type": "object",
          "properties": {
            "account": {
              "type": "string",
              "minLength": 3,
              "maxLength": 24
            },
            "accountKey": {
              "type": "string",
              "maxLength": 255
            },
            "bucket": {
              "type": "string",
              "minLength": 3,
              "maxLength": 63
            }
          },
          "required": [
            "bucket"
          ],
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    "blobUrlTTL": {
      "type": "number",
      "minimum": 3600,
      "maximum": 604800
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Application Post Example

{
  "name": "My New Application",
  "description": "Description of my new application"
}

Application Readme

Schema for an Application Readme

Application Readme Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdatedById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdatedByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "content": {
      "type": "string"
    }
  }
}

Application Readme Example

{
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "lastUpdatedById": "575ed70c7ae143cd83dc4aa9",
  "lastUpdatedByType": "user",
  "content": "The readme content"
}

Application Readme Patch

Schema for the body of an Application Readme modification request

Application Readme Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "content": {
      "type": "string",
      "maxLength": 131072
    }
  },
  "additionalProperties": false
}

Application Readme Patch Example

{
  "content": "The new readme content"
}

Application Search Result

Results of a search of an application’s resources

Application Search Result Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "name": {
        "type": "string"
      },
      "metadata": {
        "type": "object"
      },
      "viewType": {
        "type": "string"
      },
      "version": {
        "type": "string"
      },
      "_type": {
        "type": "string",
        "enum": [
          "applicationApiToken",
          "dashboard",
          "dataTable",
          "deviceRecipe",
          "device",
          "experienceDomain",
          "event",
          "experienceEndpoint",
          "experienceGroup",
          "experienceSlug",
          "experienceUser",
          "experienceVersion",
          "experienceView",
          "file",
          "flow",
          "integration",
          "webhook",
          "notebook"
        ]
      }
    },
    "required": [
      "id",
      "name",
      "_type"
    ]
  }
}

Application Search Result Example

[
  {
    "_type": "device",
    "name": "My Device #1",
    "metadata": {
      "descriptor": "a basic description of device #1"
    },
    "id": "575ec8687ae143cd83dc4a97"
  }
]

Application Template

Schema for a single Application Template

Application Template Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "readme": {
      "type": "string",
      "maxLength": 131072
    },
    "categoryIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "keywords": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      },
      "maxItems": 100
    },
    "description": {
      "type": "string",
      "maxLength": 1024
    },
    "public": {
      "type": "boolean"
    },
    "authorName": {
      "type": "string",
      "maxLength": 255
    },
    "imageUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "authorUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "templateUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "summary": {
      "type": "object",
      "properties": {
        "applicationCertificateAuthorityCount": {
          "type": "integer"
        },
        "dashboardCount": {
          "type": "integer"
        },
        "deviceCount": {
          "type": "integer"
        },
        "deviceRecipeCount": {
          "type": "integer"
        },
        "dataTableCount": {
          "type": "integer"
        },
        "experienceGroupCount": {
          "type": "integer"
        },
        "experienceUserCount": {
          "type": "integer"
        },
        "experienceVersionCount": {
          "type": "integer"
        },
        "experienceViewCount": {
          "type": "integer"
        },
        "experienceEndpointCount": {
          "type": "integer"
        },
        "fileCount": {
          "type": "integer"
        },
        "flowCount": {
          "type": "integer"
        },
        "integrationCount": {
          "type": "integer"
        },
        "notebookCount": {
          "type": "integer"
        },
        "resourceJobCount": {
          "type": "integer"
        },
        "dataTableCsvSize": {
          "type": "integer"
        },
        "webhookCount": {
          "type": "integer"
        }
      }
    }
  }
}

Application Template Example

{
  "id": "586e9d5151265cb9d72f6ec6",
  "creationDate": "2020-01-13T04:00:00.000Z",
  "lastUpdated": "2020-01-13T04:00:00.000Z",
  "name": "smart environment",
  "description": "a smart env set up",
  "public": true,
  "authorName": "Example Author",
  "authorUrl": "https://example.com/theAuther",
  "templateUrl": "https://example.com/theTemplate",
  "summary": {
    "applicationCertificateAuthorityCount": 0,
    "dashboardCount": 0,
    "deviceCount": 1,
    "deviceRecipeCount": 0,
    "dataTableCount": 2,
    "fileCount": 0,
    "experienceGroupCount": 1,
    "experienceUserCount": 1,
    "experienceVersionCount": 3,
    "experienceViewCount": 6,
    "experienceEndpointCount": 6,
    "flowCount": 1,
    "integrationCount": 0,
    "notebookCount": 0,
    "resourceJobCount": 0,
    "dataTableCsvSize": 4008,
    "webhookCount": 0
  }
}

Application Template Categories

Schema for a collection of Application Template Categories

Application Template Categories Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Application Template Category",
        "description": "Schema for a single Application Template Category",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "parentId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "resourceTypes": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "DeviceRecipe",
                "CustomNode"
              ]
            },
            "maxItems": 100
          }
        }
      }
    },
    "baseId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    }
  }
}

Application Template Categories Example

{
  "items": [
    {
      "id": "586e9d5151265cb9d72f6ec6",
      "name": "Workflows",
      "description": "Pre-built workflows for quick solution development"
    },
    {
      "id": "586e9d5151265cb9d72f6ec7",
      "name": "Device Recipes",
      "description": "Pre-configured device recipes"
    }
  ],
  "baseId": "586e9d5151265cb9d72f6ec6",
  "count": 2,
  "totalCount": 2
}

Application Template Category

Schema for a single Application Template Category

Application Template Category Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "parentId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "resourceTypes": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "DeviceRecipe",
          "CustomNode"
        ]
      },
      "maxItems": 100
    }
  }
}

Application Template Category Example

{
  "id": "586e9d5151265cb9d72f6ec6",
  "name": "Workflows",
  "description": "Pre-built workflows for quick solution development"
}

Application Templates

Schema for a collection of Application Templates

Application Templates Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Application Template",
        "description": "Schema for a single Application Template",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "readme": {
            "type": "string",
            "maxLength": 131072
          },
          "categoryIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "keywords": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
            },
            "maxItems": 100
          },
          "description": {
            "type": "string",
            "maxLength": 1024
          },
          "public": {
            "type": "boolean"
          },
          "authorName": {
            "type": "string",
            "maxLength": 255
          },
          "imageUrl": {
            "type": "string",
            "maxLength": 1024
          },
          "authorUrl": {
            "type": "string",
            "maxLength": 1024
          },
          "templateUrl": {
            "type": "string",
            "maxLength": 1024
          },
          "summary": {
            "type": "object",
            "properties": {
              "applicationCertificateAuthorityCount": {
                "type": "integer"
              },
              "dashboardCount": {
                "type": "integer"
              },
              "deviceCount": {
                "type": "integer"
              },
              "deviceRecipeCount": {
                "type": "integer"
              },
              "dataTableCount": {
                "type": "integer"
              },
              "experienceGroupCount": {
                "type": "integer"
              },
              "experienceUserCount": {
                "type": "integer"
              },
              "experienceVersionCount": {
                "type": "integer"
              },
              "experienceViewCount": {
                "type": "integer"
              },
              "experienceEndpointCount": {
                "type": "integer"
              },
              "fileCount": {
                "type": "integer"
              },
              "flowCount": {
                "type": "integer"
              },
              "integrationCount": {
                "type": "integer"
              },
              "notebookCount": {
                "type": "integer"
              },
              "resourceJobCount": {
                "type": "integer"
              },
              "dataTableCsvSize": {
                "type": "integer"
              },
              "webhookCount": {
                "type": "integer"
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "categoryId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "keywords": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      },
      "maxItems": 100
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Application Templates Example

{
  "items": [
    {
      "id": "586e9d5151265cb9d72f6ec6",
      "creationDate": "2020-01-13T04:00:00.000Z",
      "lastUpdated": "2020-01-13T04:00:00.000Z",
      "name": "smart environment",
      "description": "a smart env set up",
      "public": true,
      "authorName": "Example Author",
      "authorUrl": "https://example.com/theAuther",
      "templateUrl": "https://example.com/theTemplate",
      "summary": {
        "applicationCertificateAuthorityCount": 0,
        "dashboardCount": 0,
        "deviceCount": 1,
        "deviceRecipeCount": 0,
        "dataTableCount": 2,
        "fileCount": 0,
        "experienceGroupCount": 1,
        "experienceUserCount": 1,
        "experienceVersionCount": 3,
        "experienceViewCount": 6,
        "experienceEndpointCount": 6,
        "flowCount": 1,
        "integrationCount": 0,
        "notebookCount": 0,
        "resourceJobCount": 0,
        "dataTableCsvSize": 4008,
        "webhookCount": 0
      }
    }
  ],
  "count": 1,
  "totalCount": 8,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc"
}

Applications

Schema for a collection of Applications

Applications Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Application",
        "description": "Schema for a single Application",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "appliedTemplateIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "ownerId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "ownerType": {
            "type": "string",
            "enum": [
              "user",
              "organization"
            ]
          },
          "organizationName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "organizationIconColor": {
            "type": "string",
            "maxLength": 64
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 1024
          },
          "endpointSlug": {
            "type": "string",
            "minLength": 3,
            "maxLength": 63,
            "pattern": "^[0-9a-z-]*$"
          },
          "expUserTokenCutoff": {
            "type": "string",
            "format": "date-time"
          },
          "endpointDefaultCors": {
            "type": "boolean"
          },
          "globals": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "json": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 32767
                },
                "cloudOnly": {
                  "type": "boolean",
                  "default": false
                },
                "description": {
                  "type": "string",
                  "maxLength": 1024
                }
              },
              "additionalProperties": false,
              "required": [
                "key",
                "json"
              ]
            }
          },
          "blobUrlTTL": {
            "type": "number",
            "minimum": 3600,
            "maximum": 604800
          },
          "summary": {
            "type": "object",
            "properties": {
              "apiTokenCount": {
                "type": "integer"
              },
              "certificateCount": {
                "type": "integer"
              },
              "certificateAuthorityCount": {
                "type": "integer"
              },
              "credentialCount": {
                "type": "integer"
              },
              "dashCount": {
                "type": "integer"
              },
              "dataTableCount": {
                "type": "integer"
              },
              "deviceCount": {
                "type": "integer"
              },
              "deviceRecipeCount": {
                "type": "integer"
              },
              "eventCount": {
                "type": "integer"
              },
              "experienceDomainCount": {
                "type": "integer"
              },
              "experienceEndpointCount": {
                "type": "integer"
              },
              "experienceGroupCount": {
                "type": "integer"
              },
              "experienceSlugCount": {
                "type": "integer"
              },
              "experienceUserCount": {
                "type": "integer"
              },
              "experienceVersionCount": {
                "type": "integer"
              },
              "experienceViewCount": {
                "type": "integer"
              },
              "fileCount": {
                "type": "integer"
              },
              "flowCount": {
                "type": "integer"
              },
              "integrationCount": {
                "type": "integer"
              },
              "keyCount": {
                "type": "integer"
              },
              "notebookCount": {
                "type": "integer"
              },
              "resourceJobCount": {
                "type": "integer"
              },
              "webhookCount": {
                "type": "integer"
              },
              "payloadCount": {
                "title": "Payload Stats",
                "description": "Schema for the result of a payload stats request",
                "type": "object",
                "properties": {
                  "dataTable": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceCommand": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceConnect": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceDisconnect": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceState": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "endpoint": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "event": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "flowError": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "integration": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "mqttIn": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "mqttOut": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "notebook": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "timer": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "virtualButton": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "webhook": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "resourceJob": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  }
                }
              },
              "storageStats": {
                "type": "object",
                "properties": {
                  "count": {
                    "type": "integer"
                  },
                  "size": {
                    "type": "integer"
                  }
                }
              },
              "notebookStats": {
                "type": "object",
                "properties": {
                  "awaitingCompletion": {
                    "type": "integer"
                  },
                  "minutesThisPeriod": {
                    "type": "integer"
                  },
                  "runsThisPeriod": {
                    "type": "integer"
                  }
                }
              }
            }
          },
          "ftueTracking": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "version": {
                  "type": "number"
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "skipped",
                    "completed"
                  ]
                }
              },
              "required": [
                "name",
                "version",
                "status"
              ],
              "additionalProperties": false
            },
            "maxItems": 100
          },
          "archiveConfig": {
            "type": "object",
            "properties": {
              "directory": {
                "type": "string",
                "maxLength": 255
              },
              "mode": {
                "type": "string",
                "enum": [
                  "all",
                  "whitelist",
                  "blacklist"
                ]
              },
              "deviceIds": {
                "type": "array",
                "items": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "maxItems": 1000
              },
              "deviceTags": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                },
                "maxItems": 100
              },
              "includeDevices": {
                "type": "boolean",
                "default": true
              },
              "includeEvents": {
                "type": "boolean",
                "default": false
              },
              "includeDataTables": {
                "type": "boolean",
                "default": false
              },
              "dataTablesMode": {
                "type": "string",
                "enum": [
                  "all",
                  "whitelist",
                  "blacklist"
                ]
              },
              "dataTableIds": {
                "type": "array",
                "items": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "maxItems": 1000
              },
              "s3": {
                "type": "object",
                "properties": {
                  "bucket": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "accessKeyId": {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 128
                  },
                  "secretAccessKey": {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 128
                  },
                  "region": {
                    "type": "string",
                    "maxLength": 128
                  }
                },
                "required": [
                  "bucket"
                ],
                "additionalProperties": false
              },
              "credentialName": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "gcs": {
                "type": "object",
                "properties": {
                  "projectId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "keyJson": {
                    "type": "string",
                    "maxLength": 32767,
                    "minLength": 4
                  },
                  "bucket": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "required": [
                  "bucket"
                ],
                "additionalProperties": false
              },
              "azure": {
                "type": "object",
                "properties": {
                  "account": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 24
                  },
                  "accountKey": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "bucket": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 63
                  }
                },
                "required": [
                  "bucket"
                ],
                "additionalProperties": false
              }
            },
            "additionalProperties": false
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Applications Example

{
  "items": [
    {
      "id": "575ec8687ae143cd83dc4a97",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "ownerId": "575ed70c7ae143cd83dc4aa9",
      "ownerType": "user",
      "name": "My Application",
      "description": "The is the best application description",
      "summary": {
        "deviceCount": 5,
        "flowCount": 2,
        "webhookCount": 0,
        "eventCount": 0,
        "keyCount": 1,
        "deviceRecipeCount": 0
      },
      "archiveConfig": {
        "s3": {
          "bucket": "bucketName",
          "accessKeyId": "awsAccessKey",
          "secretAccessKey": "awsSecretKey",
          "region": "us-west-1"
        },
        "mode": "all",
        "deviceIds": [
          "575ec8687ae143cd83dc4a95",
          "575ec8687ae143cd83dc4a91"
        ]
      }
    }
  ],
  "count": 1,
  "totalCount": 8,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc"
}

Attribute Names Response

Schema for a list of attribute names

Attribute Names Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "attributeNames": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      },
      "maxItems": 1000
    }
  }
}

Attribute Names Response Example

{
  "attributeNames": [
    "voltage",
    "location",
    "rpm"
  ]
}

Audit Log

Schema for a single Audit Log entry

Audit Log Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "auditLogId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "primaryTargetId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "primaryTargetType": {
      "type": "string",
      "enum": [
        "Application",
        "Dashboard",
        "OrgInvite"
      ]
    },
    "primaryTargetName": {
      "type": "string",
      "maxLength": 1024
    },
    "secondaryTargetId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "secondaryTargetType": {
      "type": "string",
      "enum": [
        "ApiToken",
        "ApplicationCertificateAuthority",
        "ApplicationCertificate",
        "ApplicationKey",
        "Credential",
        "Dashboard",
        "DataTable",
        "Device",
        "DeviceRecipe",
        "Event",
        "ExperienceDomain",
        "ExperienceEndpoint",
        "ExperienceGroup",
        "ExperienceSlug",
        "ExperienceUser",
        "ExperienceVersion",
        "ExperienceView",
        "File",
        "Flow",
        "Integration",
        "Notebook",
        "ResourceJob",
        "Webhook"
      ]
    },
    "secondaryTargetName": {
      "type": "string",
      "maxLength": 1024
    },
    "actorId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "actorType": {
      "type": "string",
      "enum": [
        "Application",
        "Device",
        "Flow",
        "User",
        "ApiToken"
      ]
    },
    "actorName": {
      "type": "string",
      "maxLength": 1024
    },
    "requestResource": {
      "type": "string",
      "maxLength": 1024
    },
    "requestAction": {
      "type": "string",
      "maxLength": 1024
    },
    "requestQueryParams": {
      "type": "object"
    },
    "requestBody": {
      "type": "object"
    },
    "requestPathParams": {
      "type": "object"
    },
    "responseBody": {
      "type": "object"
    },
    "responseStatus": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    }
  }
}

Audit Log Example

{
  "id": "586e9d5151265cb9d72f6ec6",
  "auditLogId": "586e9d5151265cb9d72f6ec6",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "orgId": "575ed6e87ae143cd83dc4aa8",
  "primaryTargetId": "575ec8687ae143cd83dc4a97",
  "primaryTargetType": "Application",
  "primaryTargetName": "My Application",
  "actorId": "575ed70c7ae143cd83dc4aa9",
  "actorType": "User",
  "actorName": "actor@example.com",
  "requestResource": "application",
  "requestAction": "delete",
  "requestQueryParams": {},
  "requestBody": {},
  "requestPathParams": {
    "applicationId": "575ec8687ae143cd83dc4a97"
  },
  "responseBody": {
    "success": true
  },
  "responseStatus": 200
}

Audit Log Filter

Schema for the filter of an audit log query

Audit Log Filter Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "primaryTarget": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "type": {
            "type": "string",
            "enum": [
              "Application",
              "Dashboard",
              "OrgInvite"
            ]
          },
          "name": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false
      }
    },
    "secondaryTarget": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "type": {
            "type": "string",
            "enum": [
              "ApiToken",
              "ApplicationCertificateAuthority",
              "ApplicationCertificate",
              "ApplicationKey",
              "Credential",
              "Dashboard",
              "DataTable",
              "Device",
              "DeviceRecipe",
              "Event",
              "ExperienceDomain",
              "ExperienceEndpoint",
              "ExperienceGroup",
              "ExperienceSlug",
              "ExperienceUser",
              "ExperienceVersion",
              "ExperienceView",
              "File",
              "Flow",
              "Integration",
              "Notebook",
              "ResourceJob",
              "Webhook"
            ]
          },
          "name": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false
      }
    },
    "actor": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "type": {
            "type": "string",
            "enum": [
              "Application",
              "Device",
              "Flow",
              "User",
              "ApiToken"
            ]
          },
          "name": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false
      }
    },
    "request": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resource": {
            "type": "string",
            "maxLength": 1024
          },
          "action": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false
      }
    },
    "responseCode": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 100,
        "maximum": 599
      }
    }
  },
  "additionalProperties": false
}

Audit Log Filter Example

{
  "primaryTarget": [
    {
      "type": "Dashboard"
    },
    {
      "type": "Application",
      "id": "575ec8687ae143cd83dc4a97"
    }
  ],
  "actor": [
    {
      "type": "User",
      "id": "575ed70c7ae143cd83dc4aa9"
    }
  ]
}

Audit Logs

Schema for a collection of Audit Logs

Audit Logs Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Audit Log",
        "description": "Schema for a single Audit Log entry",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "auditLogId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "orgId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "primaryTargetId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "primaryTargetType": {
            "type": "string",
            "enum": [
              "Application",
              "Dashboard",
              "OrgInvite"
            ]
          },
          "primaryTargetName": {
            "type": "string",
            "maxLength": 1024
          },
          "secondaryTargetId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "secondaryTargetType": {
            "type": "string",
            "enum": [
              "ApiToken",
              "ApplicationCertificateAuthority",
              "ApplicationCertificate",
              "ApplicationKey",
              "Credential",
              "Dashboard",
              "DataTable",
              "Device",
              "DeviceRecipe",
              "Event",
              "ExperienceDomain",
              "ExperienceEndpoint",
              "ExperienceGroup",
              "ExperienceSlug",
              "ExperienceUser",
              "ExperienceVersion",
              "ExperienceView",
              "File",
              "Flow",
              "Integration",
              "Notebook",
              "ResourceJob",
              "Webhook"
            ]
          },
          "secondaryTargetName": {
            "type": "string",
            "maxLength": 1024
          },
          "actorId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "actorType": {
            "type": "string",
            "enum": [
              "Application",
              "Device",
              "Flow",
              "User",
              "ApiToken"
            ]
          },
          "actorName": {
            "type": "string",
            "maxLength": 1024
          },
          "requestResource": {
            "type": "string",
            "maxLength": 1024
          },
          "requestAction": {
            "type": "string",
            "maxLength": 1024
          },
          "requestQueryParams": {
            "type": "object"
          },
          "requestBody": {
            "type": "object"
          },
          "requestPathParams": {
            "type": "object"
          },
          "responseBody": {
            "type": "object"
          },
          "responseStatus": {
            "type": "integer",
            "minimum": 100,
            "maximum": 599
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Audit Logs Example

{
  "items": [
    {
      "id": "586e9d5151265cb9d72f6ec6",
      "auditLogId": "586e9d5151265cb9d72f6ec6",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "orgId": "575ed6e87ae143cd83dc4aa8",
      "primaryTargetId": "575ec8687ae143cd83dc4a97",
      "primaryTargetType": "Application",
      "primaryTargetName": "My Application",
      "actorId": "575ed70c7ae143cd83dc4aa9",
      "actorType": "User",
      "actorName": "actor@example.com",
      "requestResource": "application",
      "requestAction": "delete",
      "requestQueryParams": {},
      "requestBody": {},
      "requestPathParams": {
        "applicationId": "575ec8687ae143cd83dc4a97"
      },
      "responseBody": {
        "success": true
      },
      "responseStatus": 200
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "creationDate",
  "sortDirection": "desc",
  "orgId": "575ed6e87ae143cd83dc4aa8"
}

Authenticated Device

Schema for the successful response when authenticating a Device

Authenticated Device Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceClass": {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    "token": {
      "type": "string",
      "minLength": 1
    },
    "ownerType": {
      "type": "string",
      "enum": [
        "user",
        "organization"
      ]
    },
    "filterType": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "all",
            "whitelist",
            "blacklist"
          ]
        },
        {
          "type": "string",
          "enum": [
            "none"
          ]
        }
      ]
    },
    "pubTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    },
    "subTopics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      }
    }
  },
  "required": [
    "applicationId",
    "deviceId",
    "deviceClass",
    "token"
  ]
}

Authenticated Device Example

{
  "applicationId": "575ec8687ae143cd83dc4a97",
  "deviceId": "575ecf887ae143cd83dc4aa2",
  "deviceClass": "standalone",
  "token": "token_to_use_for_authenticating_subsequent_requests",
  "ownerType": "organization",
  "filterType": "whitelist",
  "pubTopics": [
    "#"
  ],
  "subTopics": [
    "#"
  ]
}

Authenticated User

Schema for the successful response when authenticating a User

Authenticated User Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "userId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "token": {
      "type": "string",
      "minLength": 1
    },
    "needsToVerifyEmail": {
      "type": "boolean"
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  },
  "required": [
    "userId",
    "token"
  ]
}

Authenticated User Example

{
  "userId": "575ed70c7ae143cd83dc4aa9",
  "token": "token_to_use_for_authenticating_subsequent_requests"
}

Bulk Deletion Response

Schema for the response to a bulk deletion

Bulk Deletion Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "removed": {
      "type": "number"
    },
    "failed": {
      "type": "number"
    }
  }
}

Bulk Deletion Response Example

{
  "removed": 3
}

Change Password

Schema for the body of a request to change the current user’s password

Change Password Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "twoFactorCode": {
      "type": "string",
      "maxLength": 2048
    },
    "password": {
      "type": "string",
      "minLength": 8,
      "maxLength": 2048
    },
    "newPassword": {
      "type": "string",
      "minLength": 12,
      "maxLength": 2048,
      "pattern": "^(?=.*[A-Z])(?=.*[^A-Za-z0-9])(?=.*[0-9])(?=.*[a-z]).{12,}$"
    },
    "invalidateExistingTokens": {
      "type": "boolean"
    },
    "tokenTTL": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "password",
    "newPassword"
  ],
  "additionalProperties": false
}

Change Password Example

{
  "newPassword": "yourNewPassword1!",
  "password": "yourCurrentPassword",
  "invalidateExistingTokens": true
}

Composite Device State

Schema for a composite Device state

Composite Device State Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "patternProperties": {
    "^[0-9a-zA-Z_-]{1,255}$": {
      "type": "object",
      "properties": {
        "value": {
          "type": [
            "number",
            "string",
            "boolean"
          ]
        },
        "time": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "number"
            },
            {
              "type": "object",
              "properties": {
                "$date": {
                  "type": "string"
                }
              },
              "additionalProperties": false,
              "required": [
                "$date"
              ]
            }
          ]
        }
      }
    }
  },
  "additionalProperties": false
}

Composite Device State Example

{
  "voltage": {
    "time": "2016-06-13T04:00:00.000Z",
    "value": 22.4
  },
  "loaded": {
    "time": "2016-06-13T03:00:00.000Z",
    "value": false
  }
}

Devices Composite State

Schema for a collection of Composite Device State

Devices Composite State Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "compositeState": {
            "title": "Composite Device State",
            "description": "Schema for a composite Device state",
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": [
                      "number",
                      "string",
                      "boolean"
                    ]
                  },
                  "time": {
                    "oneOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "number"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "$date": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": false,
                        "required": [
                          "$date"
                        ]
                      }
                    ]
                  }
                }
              }
            },
            "additionalProperties": false
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "query": {
      "type": "object"
    }
  }
}

Devices Composite State Example

{
  "items": [
    {
      "id": "575ecf887ae143cd83dc4aa2",
      "name": "My Device",
      "compositeState": {
        "voltage": {
          "time": "2016-06-13T04:00:00.000Z",
          "value": 22.4
        },
        "loaded": {
          "time": "2016-06-13T03:00:00.000Z",
          "value": false
        }
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Credential

Schema for a single Credential

Credential Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "createdById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "createdByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "lastUpdatedById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdatedByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "enabled": {
      "type": "boolean"
    },
    "type": {
      "type": "string",
      "enum": [
        "aws",
        "azure",
        "gcp",
        "http",
        "sendgrid",
        "twilio",
        "loggly",
        "jwt",
        "whatsapp"
      ]
    },
    "awsConfig": {
      "type": "object",
      "properties": {
        "accessKeyId": {
          "type": "string",
          "minLength": 16,
          "maxLength": 128
        },
        "region": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "accessKeyId",
        "region"
      ]
    },
    "azureConfig": {
      "type": "object",
      "properties": {
        "account": {
          "type": "string",
          "maxLength": 128
        }
      },
      "additionalProperties": false
    },
    "gcpConfig": {
      "type": "object",
      "properties": {
        "keyMetaJson": {
          "type": "string",
          "minLength": 1,
          "maxLength": 8192
        }
      },
      "additionalProperties": false,
      "required": [
        "keyMetaJson"
      ]
    },
    "httpConfig": {
      "type": "object",
      "properties": {
        "uriMatch": {
          "type": "string",
          "minLength": 8,
          "maxLength": 1024
        },
        "authMethod": {
          "type": "string",
          "enum": [
            "header",
            "queryParam",
            "basicAuth",
            "clientCertificate"
          ]
        },
        "publicValue": {
          "type": "string",
          "maxLength": 8196
        }
      },
      "additionalProperties": false,
      "required": [
        "uriMatch",
        "authMethod",
        "publicValue"
      ]
    },
    "sendgridConfig": {
      "type": "object",
      "properties": {},
      "additionalProperties": false
    },
    "twilioConfig": {
      "type": "object",
      "properties": {
        "accountSid": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        },
        "apiKeySid": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "accountSid",
        "apiKeySid"
      ]
    },
    "logglyConfig": {
      "type": "object",
      "properties": {},
      "additionalProperties": false
    },
    "jwtConfig": {
      "type": "object",
      "properties": {
        "issuer": {
          "type": "string",
          "maxLength": 1024
        },
        "algorithm": {
          "type": "string",
          "enum": [
            "HS256",
            "HS384",
            "HS512",
            "RS256",
            "RS384",
            "RS512",
            "ES256",
            "ES384",
            "ES512"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "algorithm"
      ]
    },
    "whatsappConfig": {
      "type": "object",
      "properties": {
        "fromNumberId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "fromNumberId"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "name",
    "type"
  ]
}

Credential Example

{
  "id": "575ece2b7ae143cd83dc4a9b",
  "applicationId": "575ece2b7ae143cd83dc4a9c",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "lastUpdatedByType": "user",
  "lastUpdatedById": "575ece2b7ae143cd83dc4a9d",
  "createdByType": "user",
  "createdById": "575ece2b7ae143cd83dc4a9d",
  "name": "Dave",
  "type": "azure",
  "enabled": true,
  "azureConfig": {
    "account": "my account"
  }
}

Credential Linked Resources

The body of an credential linked resources response

Credential Linked Resources Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "integrations": {
      "title": "Integrations",
      "description": "Schema for a collection of Integrations",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "title": "Integration",
            "description": "Schema for a single Integration",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "integrationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "credentialName": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "integrationType": {
                "type": "string",
                "enum": [
                  "azureEventHub",
                  "googlePubSub",
                  "mqtt",
                  "particle",
                  "sqs",
                  "websocket"
                ]
              },
              "enabled": {
                "type": "boolean"
              },
              "topics": {
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "uniqueItems": true
              },
              "azureEventHubConfig": {
                "type": "object",
                "properties": {
                  "hubName": {
                    "type": "string",
                    "maxLength": 256,
                    "minLength": 1
                  },
                  "hostName": {
                    "type": "string",
                    "maxLength": 256,
                    "minLength": 1
                  },
                  "consumerGroup": {
                    "type": "string",
                    "maxLength": 256,
                    "minLength": 1
                  },
                  "connectionString": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "oneOf": [
                  {
                    "required": [
                      "hubName",
                      "consumerGroup",
                      "connectionString"
                    ]
                  },
                  {
                    "required": [
                      "hubName",
                      "consumerGroup",
                      "hostName"
                    ]
                  }
                ]
              },
              "googlePubSubConfig": {
                "type": "object",
                "properties": {
                  "projectId": {
                    "type": "string",
                    "maxLength": 255,
                    "minLength": 1
                  },
                  "keyJson": {
                    "type": "string",
                    "maxLength": 32767,
                    "minLength": 4
                  }
                },
                "additionalProperties": false
              },
              "mqttConfig": {
                "type": "object",
                "properties": {
                  "clientId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "username": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "password": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "clean": {
                    "type": "boolean"
                  },
                  "port": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 65535
                  },
                  "protocol": {
                    "type": "string",
                    "enum": [
                      "mqtt",
                      "mqtts",
                      "ws",
                      "wss"
                    ]
                  },
                  "host": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "privateKey": {
                    "type": "string",
                    "maxLength": 32767,
                    "minLength": 4
                  },
                  "certificate": {
                    "type": "string",
                    "maxLength": 32767,
                    "minLength": 4
                  },
                  "caCertificate": {
                    "type": "string",
                    "maxLength": 32767,
                    "minLength": 4
                  },
                  "disableSSLVerification": {
                    "type": "boolean"
                  },
                  "protocolVersion": {
                    "type": "string",
                    "enum": [
                      "3.1.1",
                      "5"
                    ]
                  }
                },
                "additionalProperties": false,
                "required": [
                  "port",
                  "protocol",
                  "host"
                ]
              },
              "particleConfig": {
                "type": "object",
                "properties": {
                  "accessToken": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "productSlugOrId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "orgSlugOrId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "deviceNameOrId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "required": [
                  "accessToken"
                ]
              },
              "sqsConfig": {
                "type": "object",
                "properties": {
                  "accessKeyId": {
                    "type": "string",
                    "min": 4,
                    "max": 128
                  },
                  "secretAccessKey": {
                    "type": "string",
                    "min": 4,
                    "max": 128
                  },
                  "region": {
                    "type": "string",
                    "min": 4,
                    "max": 128
                  },
                  "queueUrl": {
                    "type": "string",
                    "min": 1,
                    "max": 256
                  }
                },
                "additionalProperties": false,
                "required": [
                  "queueUrl"
                ]
              },
              "websocketConfig": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "disableSSLVerification": {
                    "type": "boolean"
                  },
                  "username": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "password": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "privateKey": {
                    "type": "string",
                    "maxLength": 32767,
                    "minLength": 4
                  },
                  "certificate": {
                    "type": "string",
                    "maxLength": 32767,
                    "minLength": 4
                  },
                  "caCertificate": {
                    "type": "string",
                    "maxLength": 32767,
                    "minLength": 4
                  },
                  "headers": {
                    "type": "array",
                    "maxItems": 50,
                    "items": {
                      "type": "object",
                      "properties": {
                        "headerKey": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "headerValue": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "headerKey",
                        "headerValue"
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "url"
                ]
              },
              "status": {
                "lastKeepAlive": {
                  "type": [
                    "number"
                  ]
                },
                "nextAttempt": {
                  "type": [
                    "number"
                  ]
                },
                "connectInfo": {
                  "type": "object",
                  "properties": {
                    "ts": {
                      "type": [
                        "number",
                        "null"
                      ]
                    }
                  }
                },
                "disconnectInfo": {
                  "type": "object",
                  "properties": {
                    "ts": {
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "count": {
          "type": "integer"
        },
        "totalCount": {
          "type": "integer"
        },
        "perPage": {
          "type": "integer"
        },
        "page": {
          "type": "integer"
        },
        "filter": {
          "type": "string"
        },
        "filterField": {
          "type": "string"
        },
        "sortField": {
          "type": "string"
        },
        "sortDirection": {
          "type": "string",
          "enum": [
            "asc",
            "desc",
            "ASC",
            "DESC",
            ""
          ]
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        }
      }
    },
    "flows": {
      "title": "Workflows",
      "description": "Schema for a collection of Workflows",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "title": "Workflow",
            "description": "Schema for a single Workflow",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "createdById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "createdByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "lastUpdatedById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "lastUpdatedByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "shortDescription": {
                "type": "string",
                "maxLength": 1024
              },
              "iconData": {
                "type": "string",
                "maxLength": 32767,
                "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
              },
              "docsUrl": {
                "type": "string",
                "maxLength": 1024
              },
              "category": {
                "type": "string",
                "enum": [
                  "data",
                  "experience",
                  "logic",
                  "output",
                  "debug"
                ]
              },
              "enabled": {
                "type": "boolean"
              },
              "defaultVersionId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "minimumAgentVersion": {
                "type": "string",
                "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
              },
              "flowClass": {
                "type": "string",
                "enum": [
                  "cloud",
                  "edge",
                  "embedded",
                  "experience",
                  "customNode"
                ]
              },
              "triggers": {
                "type": "array",
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdConnect",
                            "deviceTagConnect",
                            "deviceIdDisconnect",
                            "deviceTagDisconnect",
                            "integration",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdsTagsConnect",
                                "deviceIdsTagsDisconnect",
                                "eeaInit",
                                "flowError",
                                "azureEventHub",
                                "googlePubSub",
                                "mqtt",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "particle",
                                "sqs",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete",
                                "websocket"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "bulkInsert": {
                              "type": "boolean"
                            },
                            "delete": {
                              "type": "boolean"
                            },
                            "insert": {
                              "type": "boolean"
                            },
                            "update": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceId",
                            "deviceTag"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "attributeBlacklist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "attributeWhitelist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "maxAge": {
                              "type": "number"
                            },
                            "triggerOn": {
                              "type": "string",
                              "enum": [
                                "batch",
                                "individual",
                                "both"
                              ]
                            },
                            "batchBehavior": {
                              "type": "string",
                              "enum": [
                                "once",
                                "each"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTags",
                                "device",
                                "deviceTag"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timeUnit": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "maxAgeToggle": {
                              "type": "boolean"
                            },
                            "allowedAttributeType": {
                              "type": "string",
                              "enum": [
                                "attributeWhitelist",
                                "any",
                                "attributeBlacklist"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceIdInactivity",
                            "deviceTagInactivity"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTagsInactivity"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {},
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "experienceVersion": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "subject": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "new": {
                              "type": "boolean"
                            },
                            "acknowledged": {
                              "type": "boolean"
                            },
                            "resolved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "scope": {
                              "type": "string",
                              "enum": [
                                "local",
                                "global",
                                "experience",
                                "cloud"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "mqttTopic"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "integrationId": {
                              "type": "string",
                              "enum": [
                                "losant",
                                "local",
                                "external"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "mqtt"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "syncTypes": {
                              "type": "array",
                              "maxItems": 3,
                              "minItems": 1,
                              "items": {
                                "type": "string",
                                "enum": [
                                  "application",
                                  "device",
                                  "peripheral"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "uri": {
                              "type": "string",
                              "format": "uri",
                              "maxLength": 1024
                            },
                            "securityPolicy": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "securityMode": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "username": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "cert": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "privateKey": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "nameSpace": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "identifier": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "samplingInterval": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "eventFilter": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "configName": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "redis"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "host": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "port": {
                              "type": "string",
                              "maxLength": 16
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "topic": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "redisTrigger"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "method": {
                              "type": "string",
                              "enum": [
                                "*",
                                "delete",
                                "get",
                                "options",
                                "patch",
                                "post",
                                "put"
                              ]
                            },
                            "route": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "baudRate": {
                              "type": "number"
                            },
                            "dataBits": {
                              "type": "number"
                            },
                            "stopBits": {
                              "type": "number"
                            },
                            "parity": {
                              "type": "string",
                              "maxLength": 8
                            },
                            "rtscts": {
                              "type": "boolean"
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "writeOnOpen": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "writeOnOpenEncoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiterEncoding": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "parseBy": {
                              "type": "string",
                              "enum": [
                                "byteLength",
                                "delimiter"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "udpPort": {
                              "type": "string",
                              "maxLength": 5
                            },
                            "snmpTrapConfig": {
                              "type": "object",
                              "properties": {
                                "community": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "user": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "securityLevel": {
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "auth",
                                        "authAndEncrypt"
                                      ]
                                    },
                                    "authMethod": {
                                      "type": "string",
                                      "enum": [
                                        "sha",
                                        "md5"
                                      ]
                                    },
                                    "authKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "encryptionMethod": {
                                      "type": "string",
                                      "enum": [
                                        "aes",
                                        "des"
                                      ]
                                    },
                                    "encryptionKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "securityLevel"
                                  ],
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "udpPort",
                            "snmpTrapConfig"
                          ],
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            },
                            "cron": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "tz": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timerTypeSelect": {
                              "type": "string",
                              "enum": [
                                "cronWeekly",
                                "seconds",
                                "cron"
                              ]
                            },
                            "timeAt": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "timezone": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "weekdays": {
                              "type": "array",
                              "maxItems": 7,
                              "items": {
                                "type": "number"
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "groupId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 262144
                            },
                            "deviceId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "pattern": "^[A-Fa-f\\d]{24}$"
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    ""
                                  ]
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "nodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "config": {
                      "type": "object"
                    },
                    "meta": {
                      "type": "object"
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "type"
                  ]
                }
              },
              "customNodeConfig": {
                "type": "object",
                "properties": {
                  "outputCount": {
                    "type": "number",
                    "enum": [
                      1,
                      2
                    ]
                  },
                  "resultMode": {
                    "type": "string",
                    "enum": [
                      "optional",
                      "required",
                      "none"
                    ]
                  },
                  "resultDescription": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "fields": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "checkbox"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "select"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "options": {
                              "type": "array",
                              "minItems": 1,
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "label": {
                                    "type": "string",
                                    "maxLength": 1024
                                  },
                                  "value": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 1024
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "value"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label",
                            "defaultValue",
                            "options"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "stringTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "required": {
                              "type": "boolean"
                            },
                            "validRegExp": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "numberTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "number"
                            },
                            "required": {
                              "type": "boolean"
                            },
                            "validMin": {
                              "type": "number"
                            },
                            "validMax": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "jsonTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "required": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "payloadPath"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "required": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "section"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "outputCount",
                  "resultMode",
                  "fields"
                ]
              },
              "customNodeSupports": {
                "type": "array",
                "maxItems": 1,
                "items": {
                  "type": "string",
                  "enum": [
                    "cloud",
                    "edge"
                  ]
                }
              },
              "customNodeUseCount": {
                "type": "number"
              },
              "globals": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "json": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 32767
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "key",
                    "json"
                  ]
                }
              },
              "deletedInDevelop": {
                "type": "boolean"
              },
              "stats": {
                "type": "object",
                "properties": {
                  "runCount": {
                    "type": "number"
                  },
                  "errorCount": {
                    "type": "number"
                  },
                  "byVersion": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "object",
                        "properties": {
                          "runCount": {
                            "type": "number"
                          },
                          "errorCount": {
                            "type": "number"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "count": {
          "type": "integer"
        },
        "totalCount": {
          "type": "integer"
        },
        "perPage": {
          "type": "integer"
        },
        "page": {
          "type": "integer"
        },
        "filter": {
          "type": "string"
        },
        "filterField": {
          "type": "string"
        },
        "sortField": {
          "type": "string"
        },
        "sortDirection": {
          "type": "string",
          "enum": [
            "asc",
            "desc",
            "ASC",
            "DESC",
            ""
          ]
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "flowClass": {
          "type": "string",
          "enum": [
            "cloud",
            "edge",
            "embedded",
            "experience",
            "customNode"
          ]
        }
      }
    },
    "flowVersions": {
      "title": "Workflow Versions",
      "description": "Schema for a collection of Workflow Versions",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "title": "Workflow Version",
            "description": "Schema for a single Workflow Version",
            "oneOf": [
              {
                "description": "Schema for a single Cloud/Edge/Embedded/Custom Node Workflow Version",
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "flowVersionId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "flowId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "applicationId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "creationDate": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "lastUpdated": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "createdById": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "createdByType": {
                    "type": "string",
                    "enum": [
                      "flow",
                      "user",
                      "apiToken"
                    ]
                  },
                  "lastUpdatedById": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "lastUpdatedByType": {
                    "type": "string",
                    "enum": [
                      "flow",
                      "user",
                      "apiToken"
                    ]
                  },
                  "version": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "flowClass": {
                    "type": "string",
                    "enum": [
                      "cloud",
                      "edge",
                      "embedded",
                      "customNode"
                    ]
                  },
                  "notes": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "enabled": {
                    "type": "boolean"
                  },
                  "triggers": {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdConnect",
                                "deviceTagConnect",
                                "deviceIdDisconnect",
                                "deviceTagDisconnect",
                                "integration",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "customNodeStart",
                                    "deviceCommand",
                                    "deviceIdsTagsConnect",
                                    "deviceIdsTagsDisconnect",
                                    "eeaInit",
                                    "flowError",
                                    "azureEventHub",
                                    "googlePubSub",
                                    "mqtt",
                                    "notebook",
                                    "onBoot",
                                    "onConnect",
                                    "onDisconnect",
                                    "particle",
                                    "sqs",
                                    "udp",
                                    "webhook",
                                    "resourceJobIteration",
                                    "resourceJobIterationTimeout",
                                    "resourceJobComplete",
                                    "websocket"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "bulkInsert": {
                                  "type": "boolean"
                                },
                                "delete": {
                                  "type": "boolean"
                                },
                                "insert": {
                                  "type": "boolean"
                                },
                                "update": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "dataTable"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "deviceId",
                                "deviceTag"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "attributeBlacklist": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  }
                                },
                                "attributeWhitelist": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  }
                                },
                                "maxAge": {
                                  "type": "number"
                                },
                                "triggerOn": {
                                  "type": "string",
                                  "enum": [
                                    "batch",
                                    "individual",
                                    "both"
                                  ]
                                },
                                "batchBehavior": {
                                  "type": "string",
                                  "enum": [
                                    "once",
                                    "each"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "deviceIdsTags",
                                    "device",
                                    "deviceTag"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "timeUnit": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "maxAgeToggle": {
                                  "type": "boolean"
                                },
                                "allowedAttributeType": {
                                  "type": "string",
                                  "enum": [
                                    "attributeWhitelist",
                                    "any",
                                    "attributeBlacklist"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "deviceIdInactivity",
                                "deviceTagInactivity"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "seconds": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "deviceIdsTagsInactivity"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {},
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "direct"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "experienceVersion": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "endpoint"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "subject": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "new": {
                                  "type": "boolean"
                                },
                                "acknowledged": {
                                  "type": "boolean"
                                },
                                "resolved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "event"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "encoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "byteLength": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiter": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "fileTail"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "fileAdded": {
                                  "type": "boolean"
                                },
                                "fileChanged": {
                                  "type": "boolean"
                                },
                                "fileRemoved": {
                                  "type": "boolean"
                                },
                                "directoryAdded": {
                                  "type": "boolean"
                                },
                                "directoryRemoved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "fileWatch"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "scope": {
                                  "type": "string",
                                  "enum": [
                                    "local",
                                    "global",
                                    "experience",
                                    "cloud"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "flowError"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "mqttTopic"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "integrationId": {
                                  "type": "string",
                                  "enum": [
                                    "losant",
                                    "local",
                                    "external"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "mqtt"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "syncTypes": {
                                  "type": "array",
                                  "maxItems": 3,
                                  "minItems": 1,
                                  "items": {
                                    "type": "string",
                                    "enum": [
                                      "application",
                                      "device",
                                      "peripheral"
                                    ]
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "onSync"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "uri": {
                                  "type": "string",
                                  "format": "uri",
                                  "maxLength": 1024
                                },
                                "securityPolicy": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "securityMode": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "username": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "password": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "cert": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "privateKey": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "nameSpace": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "identifier": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "samplingInterval": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "eventFilter": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "configName": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "opcua"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "redis"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "host": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "port": {
                                  "type": "string",
                                  "maxLength": 16
                                },
                                "password": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "topic": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "fileAdded": {
                                  "type": "boolean"
                                },
                                "fileChanged": {
                                  "type": "boolean"
                                },
                                "fileRemoved": {
                                  "type": "boolean"
                                },
                                "directoryAdded": {
                                  "type": "boolean"
                                },
                                "directoryRemoved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "redisTrigger"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "method": {
                                  "type": "string",
                                  "enum": [
                                    "*",
                                    "delete",
                                    "get",
                                    "options",
                                    "patch",
                                    "post",
                                    "put"
                                  ]
                                },
                                "route": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "request"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "baudRate": {
                                  "type": "number"
                                },
                                "dataBits": {
                                  "type": "number"
                                },
                                "stopBits": {
                                  "type": "number"
                                },
                                "parity": {
                                  "type": "string",
                                  "maxLength": 8
                                },
                                "rtscts": {
                                  "type": "boolean"
                                },
                                "encoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "writeOnOpen": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "writeOnOpenEncoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "byteLength": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiter": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiterEncoding": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "serial"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "parseBy": {
                                  "type": "string",
                                  "enum": [
                                    "byteLength",
                                    "delimiter"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "udpPort": {
                                  "type": "string",
                                  "maxLength": 5
                                },
                                "snmpTrapConfig": {
                                  "type": "object",
                                  "properties": {
                                    "community": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "user": {
                                      "type": "object",
                                      "properties": {
                                        "name": {
                                          "type": "string",
                                          "maxLength": 1024
                                        },
                                        "securityLevel": {
                                          "type": "string",
                                          "enum": [
                                            "none",
                                            "auth",
                                            "authAndEncrypt"
                                          ]
                                        },
                                        "authMethod": {
                                          "type": "string",
                                          "enum": [
                                            "sha",
                                            "md5"
                                          ]
                                        },
                                        "authKey": {
                                          "type": "string",
                                          "maxLength": 1024
                                        },
                                        "encryptionMethod": {
                                          "type": "string",
                                          "enum": [
                                            "aes",
                                            "des"
                                          ]
                                        },
                                        "encryptionKey": {
                                          "type": "string",
                                          "maxLength": 1024
                                        }
                                      },
                                      "required": [
                                        "name",
                                        "securityLevel"
                                      ],
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false
                                }
                              },
                              "required": [
                                "udpPort",
                                "snmpTrapConfig"
                              ],
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "snmpTrap"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "seconds": {
                                  "type": "number"
                                },
                                "cron": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "tz": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "timer"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "timerTypeSelect": {
                                  "type": "string",
                                  "enum": [
                                    "cronWeekly",
                                    "seconds",
                                    "cron"
                                  ]
                                },
                                "timeAt": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "timezone": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "weekdays": {
                                  "type": "array",
                                  "maxItems": 7,
                                  "items": {
                                    "type": "number"
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "virtualButton"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "groupId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "payload": {
                                  "type": "string",
                                  "maxLength": 262144
                                },
                                "deviceId": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^[A-Fa-f\\d]{24}$"
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        ""
                                      ]
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "nodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "config": {
                          "type": "object"
                        },
                        "meta": {
                          "type": "object"
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type"
                      ]
                    }
                  },
                  "globals": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "json": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "key",
                        "json"
                      ]
                    }
                  },
                  "minimumAgentVersion": {
                    "type": "string",
                    "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
                  },
                  "customNodeConfig": {
                    "type": "object",
                    "properties": {
                      "outputCount": {
                        "type": "number",
                        "enum": [
                          1,
                          2
                        ]
                      },
                      "resultMode": {
                        "type": "string",
                        "enum": [
                          "optional",
                          "required",
                          "none"
                        ]
                      },
                      "resultDescription": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "fields": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "checkbox"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "select"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "options": {
                                  "type": "array",
                                  "minItems": 1,
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "label": {
                                        "type": "string",
                                        "maxLength": 1024
                                      },
                                      "value": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 1024
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "value"
                                    ]
                                  }
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label",
                                "defaultValue",
                                "options"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "stringTemplate"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "required": {
                                  "type": "boolean"
                                },
                                "validRegExp": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "numberTemplate"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "number"
                                },
                                "required": {
                                  "type": "boolean"
                                },
                                "validMin": {
                                  "type": "number"
                                },
                                "validMax": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "jsonTemplate"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "required": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "payloadPath"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "required": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "section"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            }
                          ]
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "outputCount",
                      "resultMode",
                      "fields"
                    ]
                  },
                  "stats": {
                    "type": "object",
                    "properties": {
                      "runCount": {
                        "type": "number"
                      },
                      "errorCount": {
                        "type": "number"
                      },
                      "byVersion": {
                        "type": "object",
                        "patternProperties": {
                          ".*": {
                            "type": "object",
                            "properties": {
                              "runCount": {
                                "type": "number"
                              },
                              "errorCount": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "description": "Schema for a single Experience Workflow Version",
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "flowVersionId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "flowId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "applicationId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "creationDate": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "lastUpdated": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "flowClass": {
                    "type": "string",
                    "enum": [
                      "experience"
                    ]
                  },
                  "versions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "enabled": {
                    "type": "boolean"
                  },
                  "triggers": {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdConnect",
                                "deviceTagConnect",
                                "deviceIdDisconnect",
                                "deviceTagDisconnect",
                                "integration",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "customNodeStart",
                                    "deviceCommand",
                                    "deviceIdsTagsConnect",
                                    "deviceIdsTagsDisconnect",
                                    "eeaInit",
                                    "flowError",
                                    "azureEventHub",
                                    "googlePubSub",
                                    "mqtt",
                                    "notebook",
                                    "onBoot",
                                    "onConnect",
                                    "onDisconnect",
                                    "particle",
                                    "sqs",
                                    "udp",
                                    "webhook",
                                    "resourceJobIteration",
                                    "resourceJobIterationTimeout",
                                    "resourceJobComplete",
                                    "websocket"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "bulkInsert": {
                                  "type": "boolean"
                                },
                                "delete": {
                                  "type": "boolean"
                                },
                                "insert": {
                                  "type": "boolean"
                                },
                                "update": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "dataTable"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "deviceId",
                                "deviceTag"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "attributeBlacklist": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  }
                                },
                                "attributeWhitelist": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  }
                                },
                                "maxAge": {
                                  "type": "number"
                                },
                                "triggerOn": {
                                  "type": "string",
                                  "enum": [
                                    "batch",
                                    "individual",
                                    "both"
                                  ]
                                },
                                "batchBehavior": {
                                  "type": "string",
                                  "enum": [
                                    "once",
                                    "each"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "deviceIdsTags",
                                    "device",
                                    "deviceTag"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "timeUnit": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "maxAgeToggle": {
                                  "type": "boolean"
                                },
                                "allowedAttributeType": {
                                  "type": "string",
                                  "enum": [
                                    "attributeWhitelist",
                                    "any",
                                    "attributeBlacklist"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "deviceIdInactivity",
                                "deviceTagInactivity"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "seconds": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "deviceIdsTagsInactivity"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {},
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "direct"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "experienceVersion": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "endpoint"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "subject": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "new": {
                                  "type": "boolean"
                                },
                                "acknowledged": {
                                  "type": "boolean"
                                },
                                "resolved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "event"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "encoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "byteLength": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiter": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "fileTail"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "fileAdded": {
                                  "type": "boolean"
                                },
                                "fileChanged": {
                                  "type": "boolean"
                                },
                                "fileRemoved": {
                                  "type": "boolean"
                                },
                                "directoryAdded": {
                                  "type": "boolean"
                                },
                                "directoryRemoved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "fileWatch"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "scope": {
                                  "type": "string",
                                  "enum": [
                                    "local",
                                    "global",
                                    "experience",
                                    "cloud"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "flowError"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "mqttTopic"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "integrationId": {
                                  "type": "string",
                                  "enum": [
                                    "losant",
                                    "local",
                                    "external"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "mqtt"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "syncTypes": {
                                  "type": "array",
                                  "maxItems": 3,
                                  "minItems": 1,
                                  "items": {
                                    "type": "string",
                                    "enum": [
                                      "application",
                                      "device",
                                      "peripheral"
                                    ]
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "onSync"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "uri": {
                                  "type": "string",
                                  "format": "uri",
                                  "maxLength": 1024
                                },
                                "securityPolicy": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "securityMode": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "username": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "password": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "cert": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "privateKey": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "nameSpace": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "identifier": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "samplingInterval": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "eventFilter": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "configName": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "opcua"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "redis"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "host": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "port": {
                                  "type": "string",
                                  "maxLength": 16
                                },
                                "password": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "topic": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "fileAdded": {
                                  "type": "boolean"
                                },
                                "fileChanged": {
                                  "type": "boolean"
                                },
                                "fileRemoved": {
                                  "type": "boolean"
                                },
                                "directoryAdded": {
                                  "type": "boolean"
                                },
                                "directoryRemoved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "redisTrigger"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "method": {
                                  "type": "string",
                                  "enum": [
                                    "*",
                                    "delete",
                                    "get",
                                    "options",
                                    "patch",
                                    "post",
                                    "put"
                                  ]
                                },
                                "route": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "request"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "baudRate": {
                                  "type": "number"
                                },
                                "dataBits": {
                                  "type": "number"
                                },
                                "stopBits": {
                                  "type": "number"
                                },
                                "parity": {
                                  "type": "string",
                                  "maxLength": 8
                                },
                                "rtscts": {
                                  "type": "boolean"
                                },
                                "encoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "writeOnOpen": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "writeOnOpenEncoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "byteLength": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiter": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiterEncoding": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "serial"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "parseBy": {
                                  "type": "string",
                                  "enum": [
                                    "byteLength",
                                    "delimiter"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "udpPort": {
                                  "type": "string",
                                  "maxLength": 5
                                },
                                "snmpTrapConfig": {
                                  "type": "object",
                                  "properties": {
                                    "community": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "user": {
                                      "type": "object",
                                      "properties": {
                                        "name": {
                                          "type": "string",
                                          "maxLength": 1024
                                        },
                                        "securityLevel": {
                                          "type": "string",
                                          "enum": [
                                            "none",
                                            "auth",
                                            "authAndEncrypt"
                                          ]
                                        },
                                        "authMethod": {
                                          "type": "string",
                                          "enum": [
                                            "sha",
                                            "md5"
                                          ]
                                        },
                                        "authKey": {
                                          "type": "string",
                                          "maxLength": 1024
                                        },
                                        "encryptionMethod": {
                                          "type": "string",
                                          "enum": [
                                            "aes",
                                            "des"
                                          ]
                                        },
                                        "encryptionKey": {
                                          "type": "string",
                                          "maxLength": 1024
                                        }
                                      },
                                      "required": [
                                        "name",
                                        "securityLevel"
                                      ],
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false
                                }
                              },
                              "required": [
                                "udpPort",
                                "snmpTrapConfig"
                              ],
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "snmpTrap"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "seconds": {
                                  "type": "number"
                                },
                                "cron": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "tz": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "timer"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "timerTypeSelect": {
                                  "type": "string",
                                  "enum": [
                                    "cronWeekly",
                                    "seconds",
                                    "cron"
                                  ]
                                },
                                "timeAt": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "timezone": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "weekdays": {
                                  "type": "array",
                                  "maxItems": 7,
                                  "items": {
                                    "type": "number"
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "virtualButton"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "groupId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "payload": {
                                  "type": "string",
                                  "maxLength": 262144
                                },
                                "deviceId": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^[A-Fa-f\\d]{24}$"
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        ""
                                      ]
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "nodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "config": {
                          "type": "object"
                        },
                        "meta": {
                          "type": "object"
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type"
                      ]
                    }
                  },
                  "globals": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "json": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "key",
                        "json"
                      ]
                    }
                  },
                  "stats": {
                    "type": "object",
                    "properties": {
                      "runCount": {
                        "type": "number"
                      },
                      "errorCount": {
                        "type": "number"
                      },
                      "byVersion": {
                        "type": "object",
                        "patternProperties": {
                          ".*": {
                            "type": "object",
                            "properties": {
                              "runCount": {
                                "type": "number"
                              },
                              "errorCount": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        },
        "count": {
          "type": "integer"
        },
        "totalCount": {
          "type": "integer"
        },
        "perPage": {
          "type": "integer"
        },
        "page": {
          "type": "integer"
        },
        "filter": {
          "type": "string"
        },
        "filterField": {
          "type": "string"
        },
        "sortField": {
          "type": "string"
        },
        "sortDirection": {
          "type": "string",
          "enum": [
            "asc",
            "desc",
            "ASC",
            "DESC",
            ""
          ]
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "flowId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        }
      }
    }
  },
  "additionalProperties": false
}

Credential Linked Resources Example

{
  "integrations": {
    "items": [
      {
        "id": "59cc5c628246c6caed4b16c1",
        "experienceViewId": "59cc5c628246c6caed4b16c1",
        "applicationId": "575ec8687ae143cd83dc4a97",
        "creationDate": "2016-06-13T04:00:00.000Z",
        "lastUpdated": "2016-06-13T04:00:00.000Z",
        "name": "My Page View",
        "viewType": "page",
        "body": "<p>{{data}}</p>",
        "layoutId": "59cc5cad8246c6caed4b16c2",
        "viewTags": {
          "customKey": "customValue"
        }
      }
    ],
    "count": 1,
    "totalCount": 4,
    "perPage": 1,
    "page": 0,
    "sortField": "name",
    "sortDirection": "asc",
    "applicationId": "575ec8687ae143cd83dc4a97"
  },
  "flows": {
    "items": [
      {
        "id": "575ed18f7ae143cd83dc4aa6",
        "flowId": "575ed18f7ae143cd83dc4aa6",
        "applicationId": "575ec8687ae143cd83dc4a97",
        "creationDate": "2016-06-13T04:00:00.000Z",
        "lastUpdated": "2016-06-13T04:00:00.000Z",
        "name": "My Workflow",
        "description": "Description of my empty workflow",
        "enabled": true,
        "triggers": [],
        "nodes": [],
        "globals": [],
        "stats": {
          "runCount": 0,
          "errorCount": 0
        }
      }
    ],
    "count": 1,
    "totalCount": 4,
    "perPage": 1,
    "page": 0,
    "sortField": "name",
    "sortDirection": "asc",
    "applicationId": "575ec8687ae143cd83dc4a97"
  },
  "flowVersions": {
    "items": [
      {
        "id": "675ed18f7ae143cd83dc4bb7",
        "flowVersionId": "675ed18f7ae143cd83dc4bb7",
        "flowId": "575ed18f7ae143cd83dc4aa6",
        "applicationId": "575ec8687ae143cd83dc4a97",
        "creationDate": "2016-06-13T04:00:00.000Z",
        "lastUpdated": "2016-06-13T04:00:00.000Z",
        "description": "Description of my workflow version",
        "flowClass": "experience",
        "versions": [
          "v1.2.3"
        ],
        "enabled": true,
        "triggers": [],
        "nodes": [],
        "globals": []
      }
    ],
    "count": 1,
    "totalCount": 4,
    "perPage": 1,
    "page": 0,
    "sortField": "version",
    "sortDirection": "asc",
    "applicationId": "575ec8687ae143cd83dc4a97",
    "flowId": "575ed18f7ae143cd83dc4aa6"
  }
}

Credential Patch

Schema for a Credential update request

Credential Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "enabled": {
      "type": "boolean"
    },
    "awsConfig": {
      "type": "object",
      "properties": {
        "accessKeyId": {
          "type": "string",
          "minLength": 16,
          "maxLength": 128
        },
        "secretAccessKey": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        },
        "region": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "additionalProperties": false
    },
    "azureConfig": {
      "type": "object",
      "properties": {
        "account": {
          "type": "string",
          "maxLength": 128
        },
        "accountKey": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        }
      },
      "additionalProperties": false
    },
    "gcpConfig": {
      "type": "object",
      "properties": {
        "keyJson": {
          "type": "string",
          "minLength": 1,
          "maxLength": 8192
        }
      },
      "additionalProperties": false
    },
    "httpConfig": {
      "type": "object",
      "properties": {
        "uriMatch": {
          "type": "string",
          "minLength": 8,
          "maxLength": 1024
        },
        "authMethod": {
          "type": "string",
          "enum": [
            "header",
            "queryParam",
            "basicAuth",
            "clientCertificate"
          ]
        },
        "publicValue": {
          "type": "string",
          "maxLength": 8196
        },
        "secretValue": {
          "type": "string",
          "maxLength": 8196
        }
      },
      "additionalProperties": false
    },
    "sendgridConfig": {
      "type": "object",
      "properties": {
        "apiKey": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        }
      },
      "additionalProperties": false
    },
    "twilioConfig": {
      "type": "object",
      "properties": {
        "accountSid": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        },
        "apiKeySid": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        },
        "apiKeySecret": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        }
      },
      "additionalProperties": false
    },
    "logglyConfig": {
      "type": "object",
      "properties": {
        "customerToken": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "additionalProperties": false
    },
    "jwtConfig": {
      "type": "object",
      "properties": {
        "issuer": {
          "type": "string",
          "maxLength": 1024
        },
        "algorithm": {
          "type": "string",
          "enum": [
            "HS256",
            "HS384",
            "HS512",
            "RS256",
            "RS384",
            "RS512",
            "ES256",
            "ES384",
            "ES512"
          ]
        },
        "secret": {
          "type": "string",
          "minLength": 1,
          "maxLength": 4096
        }
      },
      "additionalProperties": false
    },
    "whatsappConfig": {
      "type": "object",
      "properties": {
        "accessToken": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "fromNumberId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

Credential Patch Example

{
  "enabled": true,
  "azureConfig": {
    "account": "my account",
    "accountKey": "123abc"
  }
}

Credential Post

Schema for a Credential creation request

Credential Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "enabled": {
      "type": "boolean"
    },
    "type": {
      "type": "string",
      "enum": [
        "aws",
        "azure",
        "gcp",
        "http",
        "sendgrid",
        "twilio",
        "loggly",
        "jwt",
        "whatsapp"
      ]
    },
    "awsConfig": {
      "type": "object",
      "properties": {
        "accessKeyId": {
          "type": "string",
          "minLength": 16,
          "maxLength": 128
        },
        "secretAccessKey": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        },
        "region": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "accessKeyId",
        "secretAccessKey",
        "region"
      ]
    },
    "azureConfig": {
      "type": "object",
      "properties": {
        "account": {
          "type": "string",
          "maxLength": 128
        },
        "accountKey": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "accountKey"
      ]
    },
    "gcpConfig": {
      "type": "object",
      "properties": {
        "keyJson": {
          "type": "string",
          "minLength": 1,
          "maxLength": 8192
        }
      },
      "additionalProperties": false,
      "required": [
        "keyJson"
      ]
    },
    "httpConfig": {
      "type": "object",
      "properties": {
        "uriMatch": {
          "type": "string",
          "minLength": 8,
          "maxLength": 1024
        },
        "authMethod": {
          "type": "string",
          "enum": [
            "header",
            "queryParam",
            "basicAuth",
            "clientCertificate"
          ]
        },
        "publicValue": {
          "type": "string",
          "maxLength": 8196
        },
        "secretValue": {
          "type": "string",
          "maxLength": 8196
        }
      },
      "additionalProperties": false,
      "required": [
        "uriMatch",
        "authMethod",
        "secretValue"
      ]
    },
    "sendgridConfig": {
      "type": "object",
      "properties": {
        "apiKey": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "apiKey"
      ]
    },
    "twilioConfig": {
      "type": "object",
      "properties": {
        "accountSid": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        },
        "apiKeySid": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        },
        "apiKeySecret": {
          "type": "string",
          "minLength": 4,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "accountSid",
        "apiKeySid",
        "apiKeySecret"
      ]
    },
    "logglyConfig": {
      "type": "object",
      "properties": {
        "customerToken": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "customerToken"
      ]
    },
    "jwtConfig": {
      "type": "object",
      "properties": {
        "issuer": {
          "type": "string",
          "maxLength": 1024
        },
        "algorithm": {
          "type": "string",
          "enum": [
            "HS256",
            "HS384",
            "HS512",
            "RS256",
            "RS384",
            "RS512",
            "ES256",
            "ES384",
            "ES512"
          ]
        },
        "secret": {
          "type": "string",
          "minLength": 1,
          "maxLength": 4096
        }
      },
      "additionalProperties": false,
      "required": [
        "algorithm",
        "secret"
      ]
    },
    "whatsappConfig": {
      "type": "object",
      "properties": {
        "accessToken": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "fromNumberId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        }
      },
      "additionalProperties": false,
      "required": [
        "accessToken",
        "fromNumberId"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "name",
    "type"
  ]
}

Credential Post Example

{
  "name": "locker",
  "type": "azure",
  "enabled": true,
  "azureConfig": {
    "account": "my account",
    "accountKey": "123abc"
  }
}

Credentials

Schema for a collection of Credentials

Credentials Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Credential",
        "description": "Schema for a single Credential",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "createdById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "lastUpdatedById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "lastUpdatedByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "enabled": {
            "type": "boolean"
          },
          "type": {
            "type": "string",
            "enum": [
              "aws",
              "azure",
              "gcp",
              "http",
              "sendgrid",
              "twilio",
              "loggly",
              "jwt",
              "whatsapp"
            ]
          },
          "awsConfig": {
            "type": "object",
            "properties": {
              "accessKeyId": {
                "type": "string",
                "minLength": 16,
                "maxLength": 128
              },
              "region": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            },
            "additionalProperties": false,
            "required": [
              "accessKeyId",
              "region"
            ]
          },
          "azureConfig": {
            "type": "object",
            "properties": {
              "account": {
                "type": "string",
                "maxLength": 128
              }
            },
            "additionalProperties": false
          },
          "gcpConfig": {
            "type": "object",
            "properties": {
              "keyMetaJson": {
                "type": "string",
                "minLength": 1,
                "maxLength": 8192
              }
            },
            "additionalProperties": false,
            "required": [
              "keyMetaJson"
            ]
          },
          "httpConfig": {
            "type": "object",
            "properties": {
              "uriMatch": {
                "type": "string",
                "minLength": 8,
                "maxLength": 1024
              },
              "authMethod": {
                "type": "string",
                "enum": [
                  "header",
                  "queryParam",
                  "basicAuth",
                  "clientCertificate"
                ]
              },
              "publicValue": {
                "type": "string",
                "maxLength": 8196
              }
            },
            "additionalProperties": false,
            "required": [
              "uriMatch",
              "authMethod",
              "publicValue"
            ]
          },
          "sendgridConfig": {
            "type": "object",
            "properties": {},
            "additionalProperties": false
          },
          "twilioConfig": {
            "type": "object",
            "properties": {
              "accountSid": {
                "type": "string",
                "minLength": 4,
                "maxLength": 128
              },
              "apiKeySid": {
                "type": "string",
                "minLength": 4,
                "maxLength": 128
              }
            },
            "additionalProperties": false,
            "required": [
              "accountSid",
              "apiKeySid"
            ]
          },
          "logglyConfig": {
            "type": "object",
            "properties": {},
            "additionalProperties": false
          },
          "jwtConfig": {
            "type": "object",
            "properties": {
              "issuer": {
                "type": "string",
                "maxLength": 1024
              },
              "algorithm": {
                "type": "string",
                "enum": [
                  "HS256",
                  "HS384",
                  "HS512",
                  "RS256",
                  "RS384",
                  "RS512",
                  "ES256",
                  "ES384",
                  "ES512"
                ]
              }
            },
            "additionalProperties": false,
            "required": [
              "algorithm"
            ]
          },
          "whatsappConfig": {
            "type": "object",
            "properties": {
              "fromNumberId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            },
            "additionalProperties": false,
            "required": [
              "fromNumberId"
            ]
          }
        },
        "additionalProperties": false,
        "required": [
          "name",
          "type"
        ]
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Credentials Example

{
  "items": [
    {
      "id": "575ece2b7ae143cd83dc4a9b",
      "applicationId": "575ece2b7ae143cd83dc4a9c",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "lastUpdatedByType": "user",
      "lastUpdatedById": "575ece2b7ae143cd83dc4a9d",
      "createdByType": "user",
      "createdById": "575ece2b7ae143cd83dc4a9d",
      "name": "Dave",
      "type": "azure",
      "enabled": true,
      "azureConfig": {
        "account": "my account"
      }
    }
  ],
  "count": 1,
  "totalCount": 5,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc"
}

Dashboard

Schema for a single Dashboard

Dashboard Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "dashboardId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "ownerId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "ownerType": {
      "type": "string",
      "enum": [
        "user",
        "organization"
      ]
    },
    "createdById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "createdByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "lastUpdatedById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdatedByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "organizationName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "organizationIconColor": {
      "type": "string",
      "maxLength": 64
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "refreshRate": {
      "type": "number",
      "minimum": 5,
      "maximum": 600
    },
    "duration": {
      "type": "integer",
      "minimum": 1
    },
    "resolution": {
      "type": "integer",
      "minimum": 1
    },
    "defaultTheme": {
      "type": "string",
      "enum": [
        "dark",
        "light"
      ]
    },
    "isPasswordProtected": {
      "type": "boolean"
    },
    "public": {
      "type": "boolean"
    },
    "reportConfigs": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 48
          },
          "cron": {
            "type": "string",
            "maxLength": 255
          },
          "toEmail": {
            "type": "array",
            "minItems": 1,
            "maxItems": 10,
            "items": {
              "type": "string",
              "format": "email",
              "maxLength": 1024
            }
          },
          "callbackUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "subject": {
            "type": "string",
            "maxLength": 255
          },
          "message": {
            "type": "string",
            "maxLength": 32767
          },
          "theme": {
            "type": "string",
            "enum": [
              "dark",
              "light"
            ]
          },
          "timezone": {
            "type": "string",
            "maxLength": 255
          },
          "locale": {
            "type": "string",
            "maxLength": 5
          },
          "ctx": {
            "title": "Dashboard Context Instance",
            "description": "Schema for a dashboard context instance",
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "oneOf": [
                  {
                    "type": "string",
                    "maxLength": 32767
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "key": {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      "value": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  }
                ]
              }
            },
            "additionalProperties": false
          },
          "branded": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "anyOf": [
          {
            "required": [
              "cron",
              "toEmail"
            ]
          },
          {
            "required": [
              "cron",
              "callbackUrl"
            ]
          }
        ]
      }
    },
    "blocks": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "application-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "bar"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "xAxisFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "xAxisLabel": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "xAxisMax": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "xAxisMin": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "custom-chart",
                  "custom-html"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "configuration": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "headContent": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "bodyContent": {
                            "type": "string",
                            "maxLength": 32767
                          }
                        },
                        "additionalProperties": false
                      },
                      {
                        "type": "string",
                        "maxLength": 32767
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "time-series"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            },
                            "resolution": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "null"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "gauge"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "data-table"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "dataTableId": {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            "query": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "queryMode": {
                              "type": "string",
                              "enum": [
                                "$or",
                                "$and",
                                "advanced"
                              ]
                            },
                            "sortColumn": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "sortDirection": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "limit": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "offset": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "device-info"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attributes": {
                              "oneOf": [
                                {
                                  "type": "null"
                                },
                                {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                }
                              ]
                            },
                            "excludeConnectionInfo": {
                              "type": "boolean"
                            },
                            "sortField": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "sortDirection": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "page": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "perPage": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "query": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "compositeStateType": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "vegaVersion": {
                    "type": "string",
                    "enum": [
                      "vegaLite2",
                      "vegaLite3",
                      "vegaLite4",
                      "vegaLite5",
                      "vega4",
                      "vega5"
                    ]
                  },
                  "tooltipEventSubscribe": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "dashboard-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "data-table"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "dataTableId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "defaultSortColumn": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultSortDirection": {
                    "oneOf": [
                      {
                        "type": "string",
                        "enum": [
                          "asc",
                          "desc",
                          "ASC",
                          "DESC",
                          ""
                        ]
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "defaultLimit": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultOffset": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "queryMode": {
                    "type": "string",
                    "enum": [
                      "$or",
                      "$and",
                      "advanced"
                    ]
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "type": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                "$custom"
                              ]
                            }
                          ]
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-count"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "segments": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "required": [
                        "id",
                        "query"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "defaultCondition": {
                    "type": "object",
                    "properties": {
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "value": {
                        "type": "string",
                        "maxLength": 32767
                      }
                    },
                    "required": [
                      "color"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "segments",
                  "defaultCondition"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "excludeConnectionInfo": {
                    "type": "boolean"
                  },
                  "deviceLinkNewWindow": {
                    "type": "boolean"
                  },
                  "deviceLinkType": {
                    "type": "string",
                    "enum": [
                      "custom",
                      "default"
                    ]
                  },
                  "deviceLinkUrl": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "match": {
                    "type": "string",
                    "enum": [
                      "unfiltered",
                      "all",
                      "any"
                    ]
                  },
                  "showPublicFilter": {
                    "type": "boolean"
                  },
                  "sortField": {
                    "type": "string",
                    "enum": [
                      "id",
                      "creationDate",
                      "lastUpdated",
                      "name"
                    ]
                  },
                  "sortDirection": {
                    "type": "string",
                    "enum": [
                      "asc",
                      "desc",
                      "ASC",
                      "DESC",
                      ""
                    ]
                  },
                  "filter": {
                    "oneOf": [
                      {
                        "type": "string",
                        "maxLength": 255
                      },
                      {
                        "type": "object",
                        "properties": {
                          "ids": {
                            "type": "array",
                            "maxItems": 100,
                            "items": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "tags": {
                            "type": "array",
                            "maxItems": 100,
                            "items": {
                              "type": "object",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "value": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "fromCtx": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "searchParam": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      }
                    ]
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "id",
                            "connectionStatus",
                            "attribute",
                            "tag",
                            "name",
                            "custom",
                            "created",
                            "updated"
                          ]
                        },
                        "source": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-log"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "includeDeviceInfo": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-state-table"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "attributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "sortDirection": {
                    "type": "integer",
                    "minimum": -1,
                    "maximum": 1
                  },
                  "sortIndex": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceTags",
                            "deviceId",
                            "deviceName",
                            "timestamp",
                            "attribute"
                          ]
                        },
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "event-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "allowUpdates": {
                    "type": "boolean"
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "sortDirection": {
                    "type": "string",
                    "enum": [
                      "asc",
                      "desc",
                      "ASC",
                      "DESC",
                      ""
                    ]
                  },
                  "sortField": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "eventState": {
                    "oneOf": [
                      {
                        "type": "string",
                        "maxLength": 255
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "object",
                        "additionalProperties": false
                      }
                    ]
                  },
                  "columnErrors": {
                    "type": "object",
                    "additionalProperties": false
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "selectedTag": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "level",
                            "subject",
                            "subjectWithMessage",
                            "creationDate",
                            "creationDateWithSource",
                            "lastUpdatedDate",
                            "lastUpdatedDateWithSource",
                            "id",
                            "state",
                            "tag",
                            "deviceName",
                            "sourceId",
                            "custom"
                          ]
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "gauge"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "displayAsPercentage": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "gaugeMax": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "gaugeMin": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "gaugeType": {
                    "type": "string",
                    "enum": [
                      "battery",
                      "dial",
                      "number",
                      "tank",
                      "thermometer"
                    ]
                  },
                  "precision": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "precisionType": {
                    "type": "string",
                    "enum": [
                      "floating",
                      "significant"
                    ]
                  },
                  "segment": {
                    "type": "object",
                    "properties": {
                      "attribute": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "aggregation": {
                        "oneOf": [
                          {
                            "oneOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "FIRST",
                                  "LAST",
                                  "COUNT",
                                  "MAX",
                                  "MIN",
                                  "MEDIAN",
                                  "MEAN",
                                  "SUM",
                                  "STD_DEV"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "NONE"
                                ]
                              }
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "oneOf": [
                                  {
                                    "type": "string",
                                    "enum": [
                                      "FIRST",
                                      "LAST",
                                      "COUNT",
                                      "MAX",
                                      "MIN",
                                      "MEDIAN",
                                      "MEAN",
                                      "SUM",
                                      "STD_DEV"
                                    ]
                                  },
                                  {
                                    "type": "string",
                                    "enum": [
                                      "NONE"
                                    ]
                                  }
                                ]
                              },
                              "options": {
                                "type": "object",
                                "additionalProperties": false
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "type"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TIMEATVALUE"
                                ]
                              },
                              "options": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "boolean"
                                      }
                                    ]
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "value"
                                ]
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "type",
                              "options"
                            ]
                          }
                        ]
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "deviceIds": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "deviceTags": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "value": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "fromCtx": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "expression": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "yAxisLabel": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "lineWeight": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 5
                      },
                      "detectDataGaps": {
                        "type": "boolean"
                      },
                      "graphType": {
                        "type": "string",
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "graph"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "hideLegend": {
                    "type": "boolean"
                  },
                  "disallowUserSelectedDuration": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "recharts": {
                    "type": "boolean"
                  },
                  "displayType": {
                    "type": "string",
                    "enum": [
                      "stick",
                      "line"
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "cumulative": {
                          "type": "boolean"
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "graphType": {
                          "type": "string",
                          "enum": [
                            "area",
                            "bar",
                            "line"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisFormat": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisMax": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "yAxisMin": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "yAxisId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "lineType": {
                          "type": "string",
                          "enum": [
                            "monotone",
                            "step",
                            "stepAfter",
                            "linear",
                            "stepBefore"
                          ]
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "dotWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "yAxes": {
                    "type": "array",
                    "maxItems": 10,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "position": {
                          "type": "string",
                          "enum": [
                            "left",
                            "right",
                            "hidden"
                          ],
                          "default": "left"
                        },
                        "min": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "max": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "format": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "id"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "heatmap"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "defaultBearing": {
                    "type": "number"
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultPitch": {
                    "type": "number"
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "locationTagKey": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "mapStyle": {
                    "type": "string",
                    "enum": [
                      "normal",
                      "satellite"
                    ]
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "iframe"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "maxLength": 2048
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "image"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "bgColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "imageLinkNewWindow": {
                    "type": "boolean"
                  },
                  "imageLinkUrl": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "imageSource": {
                    "type": "string",
                    "enum": [
                      "static",
                      "attribute"
                    ]
                  },
                  "deviceId": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "image-overlay"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "backgroundColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "defaultZoom": {
                    "type": "number"
                  },
                  "disableZoom": {
                    "type": "boolean"
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 300,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "gauge"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "overlays": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "indicator",
                                "label",
                                "image"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "value"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "valueTemplate": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "bar"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "min": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "max": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "backgroundColor": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "valueTemplate": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "length": {
                              "type": "integer",
                              "minimum": 1,
                              "maximum": 10
                            },
                            "orientation": {
                              "type": "string",
                              "enum": [
                                "horizontal",
                                "vertical"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height",
              "config"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "indicator"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "defaultCondition": {
                    "type": "object",
                    "properties": {
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "condition": {
                        "type": "string",
                        "maxLength": 2048
                      },
                      "imageUrl": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "shape": {
                        "type": "string",
                        "enum": [
                          "circle",
                          "square",
                          "triangle-down",
                          "triangle-up",
                          "octagon"
                        ]
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "input"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "defaultMode": {
                    "type": "string",
                    "enum": [
                      "unlocked",
                      "locked"
                    ]
                  },
                  "controls": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "range"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "max": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "min": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "step": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "defaultValue": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "toggle"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "boolean"
                            },
                            "includeLabel": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "text"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 2048
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "select"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "options": {
                              "type": "array",
                              "maxItems": 500,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "help"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "help": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "button"
                              ]
                            },
                            "action": {
                              "type": "string",
                              "enum": [
                                "workflow",
                                "command"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "buttonId": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "workflowId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "commandName": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "map"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "clusterPoints": {
                    "type": "boolean"
                  },
                  "compositeResult": {
                    "type": "boolean"
                  },
                  "defaultBearing": {
                    "type": "number"
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultPitch": {
                    "type": "number"
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "endColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "iconTemplate": {
                    "type": "string",
                    "maxLength": 73727
                  },
                  "includeArrows": {
                    "type": "boolean"
                  },
                  "includeLines": {
                    "type": "boolean"
                  },
                  "locationTagKey": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "mapStyle": {
                    "type": "string",
                    "enum": [
                      "normal",
                      "satellite"
                    ]
                  },
                  "pinMode": {
                    "type": "string",
                    "enum": [
                      "simple",
                      "advanced"
                    ]
                  },
                  "popupTemplate": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "resizedPins": {
                    "type": "boolean"
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "startColor": {
                    "type": "string",
                    "maxLength": 64
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "open-event-indicator"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "allowUpdates": {
                    "type": "boolean"
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "pie"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "percentFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "valueFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "position-chart"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "compositeResult": {
                    "type": "boolean"
                  },
                  "coordinateA": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "coordinateB": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "disableZoom": {
                    "type": "boolean"
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "endColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "iconTemplate": {
                    "type": "string",
                    "maxLength": 73727
                  },
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "includeArrows": {
                    "type": "boolean"
                  },
                  "includeLines": {
                    "type": "boolean"
                  },
                  "pinMode": {
                    "type": "string",
                    "enum": [
                      "simple",
                      "advanced"
                    ]
                  },
                  "pixelA": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "pixelB": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "popupTemplate": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "resizedPins": {
                    "type": "boolean"
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "startColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "xAttribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "yAttribute": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "section-header"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "title": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "content": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "workflow-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "includeCloud": {
                    "type": "boolean"
                  },
                  "includeEdge": {
                    "type": "boolean"
                  },
                  "includeEmbedded": {
                    "type": "boolean"
                  },
                  "includeExperience": {
                    "type": "boolean"
                  },
                  "experienceVersion": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "contextConfiguration": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceAttribute"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "attributes": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "maxItems": 100
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceId"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "deviceIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "maxItems": 1000
                  },
                  "deviceTags": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "maxItems": 100
                  },
                  "includeFullDevice": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceTag"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "deviceTags": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "maxItems": 100
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "number"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": [
                  "number",
                  "string"
                ]
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "min": {
                    "type": "number"
                  },
                  "max": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "string"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "regExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "experienceUser"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "experienceGroupIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "maxItems": 1000
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          }
        ]
      },
      "maxItems": 100
    }
  }
}

Dashboard Example

{
  "id": "575ece2b7ae143cd83dc4a9b",
  "dashboardId": "575ece2b7ae143cd83dc4a9b",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "organizationName": "Example Org",
  "organizationIconColor": "#284fff",
  "ownerType": "organization",
  "ownerId": "58238ff2fe7b4b01009a0554",
  "name": "My Dashboard",
  "description": "The best dashboard description",
  "refreshRate": 60,
  "public": false,
  "isPasswordProtected": false,
  "defaultTheme": "light",
  "blocks": [],
  "duration": 600000,
  "resolution": 6000,
  "_currentRole": "admin",
  "reportConfigs": [
    {
      "toEmail": [
        "email@example.com"
      ],
      "cron": "0 0 12 * * TUE-THU",
      "theme": "dark",
      "subject": "Daily Dashboard Report"
    }
  ],
  "contextConfiguration": [
    {
      "validationEnabled": true,
      "validationConfig": {
        "deviceIds": [
          "589de9bca1975a00017b2293"
        ],
        "deviceTags": [
          {
            "key": "type",
            "value": "Weather Station"
          }
        ],
        "includeFullDevice": true
      },
      "name": "deviceId-withIdAndTagValidationAndIncludeFullDevice",
      "type": "deviceId",
      "applicationId": "589de7d2a1975a00017b227f",
      "defaultValue": "589de9bca1975a00017b2295"
    },
    {
      "validationEnabled": false,
      "validationConfig": {
        "includeFullDevice": false
      },
      "name": "deviceId-noValidationNoFullDevice",
      "type": "deviceId",
      "applicationId": "589de7d2a1975a00017b227f",
      "defaultValue": "589de9bca1975a00017b2295"
    },
    {
      "validationEnabled": true,
      "validationConfig": {
        "attributes": [
          "dew-point",
          "feels-like",
          "humidity",
          "location",
          "pressure",
          "temp",
          "visibility",
          "wind-speed"
        ]
      },
      "name": "attr",
      "type": "deviceAttribute",
      "applicationId": "589de7d2a1975a00017b227f",
      "defaultValue": "temp"
    },
    {
      "validationEnabled": true,
      "validationConfig": {
        "deviceTags": [
          {
            "key": "DeviceRecipe",
            "value": "Weather Station"
          },
          {
            "key": "region"
          }
        ]
      },
      "name": "deviceTag-withValidation",
      "type": "deviceTag",
      "applicationId": "589de7d2a1975a00017b227f",
      "defaultValue": {
        "key": "DeviceRecipe",
        "value": "Weather Station"
      }
    },
    {
      "validationEnabled": false,
      "validationConfig": {},
      "name": "deviceTag-noValidation",
      "type": "deviceTag",
      "applicationId": "589de7d2a1975a00017b227f",
      "defaultValue": {
        "key": "DeviceRecipe",
        "value": "Weather Station"
      }
    }
  ]
}

Dashboard Context Instance

Schema for a dashboard context instance

Dashboard Context Instance Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "patternProperties": {
    "^[0-9a-zA-Z_-]{1,255}$": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 32767
        },
        {
          "type": "number"
        },
        {
          "type": "object",
          "properties": {
            "key": {
              "type": "string",
              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
            },
            "value": {
              "type": "string",
              "minLength": 1,
              "maxLength": 255
            }
          },
          "additionalProperties": false
        }
      ]
    }
  },
  "additionalProperties": false
}

Dashboard Context Instance Example

{
  "myContextVariable": "myValue",
  "myOtherVariable": "575ecf887ae143cd83dc4aa2"
}

Dashboard Patch

Schema for the body of a Dashboard modification request

Dashboard Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "blocks": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "application-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "bar"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "xAxisFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "xAxisLabel": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "xAxisMax": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "xAxisMin": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "custom-chart",
                  "custom-html"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "configuration": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "headContent": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "bodyContent": {
                            "type": "string",
                            "maxLength": 32767
                          }
                        },
                        "additionalProperties": false
                      },
                      {
                        "type": "string",
                        "maxLength": 32767
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "time-series"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            },
                            "resolution": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "null"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "gauge"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "data-table"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "dataTableId": {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            "query": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "queryMode": {
                              "type": "string",
                              "enum": [
                                "$or",
                                "$and",
                                "advanced"
                              ]
                            },
                            "sortColumn": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "sortDirection": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "limit": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "offset": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "device-info"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attributes": {
                              "oneOf": [
                                {
                                  "type": "null"
                                },
                                {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                }
                              ]
                            },
                            "excludeConnectionInfo": {
                              "type": "boolean"
                            },
                            "sortField": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "sortDirection": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "page": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "perPage": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "query": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "compositeStateType": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "vegaVersion": {
                    "type": "string",
                    "enum": [
                      "vegaLite2",
                      "vegaLite3",
                      "vegaLite4",
                      "vegaLite5",
                      "vega4",
                      "vega5"
                    ]
                  },
                  "tooltipEventSubscribe": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "dashboard-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "data-table"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "dataTableId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "defaultSortColumn": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultSortDirection": {
                    "oneOf": [
                      {
                        "type": "string",
                        "enum": [
                          "asc",
                          "desc",
                          "ASC",
                          "DESC",
                          ""
                        ]
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "defaultLimit": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultOffset": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "queryMode": {
                    "type": "string",
                    "enum": [
                      "$or",
                      "$and",
                      "advanced"
                    ]
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "type": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                "$custom"
                              ]
                            }
                          ]
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-count"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "segments": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "required": [
                        "id",
                        "query"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "defaultCondition": {
                    "type": "object",
                    "properties": {
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "value": {
                        "type": "string",
                        "maxLength": 32767
                      }
                    },
                    "required": [
                      "color"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "segments",
                  "defaultCondition"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "excludeConnectionInfo": {
                    "type": "boolean"
                  },
                  "deviceLinkNewWindow": {
                    "type": "boolean"
                  },
                  "deviceLinkType": {
                    "type": "string",
                    "enum": [
                      "custom",
                      "default"
                    ]
                  },
                  "deviceLinkUrl": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "match": {
                    "type": "string",
                    "enum": [
                      "unfiltered",
                      "all",
                      "any"
                    ]
                  },
                  "showPublicFilter": {
                    "type": "boolean"
                  },
                  "sortField": {
                    "type": "string",
                    "enum": [
                      "id",
                      "creationDate",
                      "lastUpdated",
                      "name"
                    ]
                  },
                  "sortDirection": {
                    "type": "string",
                    "enum": [
                      "asc",
                      "desc",
                      "ASC",
                      "DESC",
                      ""
                    ]
                  },
                  "filter": {
                    "oneOf": [
                      {
                        "type": "string",
                        "maxLength": 255
                      },
                      {
                        "type": "object",
                        "properties": {
                          "ids": {
                            "type": "array",
                            "maxItems": 100,
                            "items": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "tags": {
                            "type": "array",
                            "maxItems": 100,
                            "items": {
                              "type": "object",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "value": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "fromCtx": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "searchParam": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      }
                    ]
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "id",
                            "connectionStatus",
                            "attribute",
                            "tag",
                            "name",
                            "custom",
                            "created",
                            "updated"
                          ]
                        },
                        "source": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-log"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "includeDeviceInfo": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-state-table"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "attributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "sortDirection": {
                    "type": "integer",
                    "minimum": -1,
                    "maximum": 1
                  },
                  "sortIndex": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceTags",
                            "deviceId",
                            "deviceName",
                            "timestamp",
                            "attribute"
                          ]
                        },
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "event-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "allowUpdates": {
                    "type": "boolean"
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "sortDirection": {
                    "type": "string",
                    "enum": [
                      "asc",
                      "desc",
                      "ASC",
                      "DESC",
                      ""
                    ]
                  },
                  "sortField": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "eventState": {
                    "oneOf": [
                      {
                        "type": "string",
                        "maxLength": 255
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "object",
                        "additionalProperties": false
                      }
                    ]
                  },
                  "columnErrors": {
                    "type": "object",
                    "additionalProperties": false
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "selectedTag": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "level",
                            "subject",
                            "subjectWithMessage",
                            "creationDate",
                            "creationDateWithSource",
                            "lastUpdatedDate",
                            "lastUpdatedDateWithSource",
                            "id",
                            "state",
                            "tag",
                            "deviceName",
                            "sourceId",
                            "custom"
                          ]
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "gauge"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "displayAsPercentage": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "gaugeMax": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "gaugeMin": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "gaugeType": {
                    "type": "string",
                    "enum": [
                      "battery",
                      "dial",
                      "number",
                      "tank",
                      "thermometer"
                    ]
                  },
                  "precision": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "precisionType": {
                    "type": "string",
                    "enum": [
                      "floating",
                      "significant"
                    ]
                  },
                  "segment": {
                    "type": "object",
                    "properties": {
                      "attribute": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "aggregation": {
                        "oneOf": [
                          {
                            "oneOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "FIRST",
                                  "LAST",
                                  "COUNT",
                                  "MAX",
                                  "MIN",
                                  "MEDIAN",
                                  "MEAN",
                                  "SUM",
                                  "STD_DEV"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "NONE"
                                ]
                              }
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "oneOf": [
                                  {
                                    "type": "string",
                                    "enum": [
                                      "FIRST",
                                      "LAST",
                                      "COUNT",
                                      "MAX",
                                      "MIN",
                                      "MEDIAN",
                                      "MEAN",
                                      "SUM",
                                      "STD_DEV"
                                    ]
                                  },
                                  {
                                    "type": "string",
                                    "enum": [
                                      "NONE"
                                    ]
                                  }
                                ]
                              },
                              "options": {
                                "type": "object",
                                "additionalProperties": false
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "type"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TIMEATVALUE"
                                ]
                              },
                              "options": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "boolean"
                                      }
                                    ]
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "value"
                                ]
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "type",
                              "options"
                            ]
                          }
                        ]
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "deviceIds": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "deviceTags": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "value": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "fromCtx": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "expression": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "yAxisLabel": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "lineWeight": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 5
                      },
                      "detectDataGaps": {
                        "type": "boolean"
                      },
                      "graphType": {
                        "type": "string",
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "graph"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "hideLegend": {
                    "type": "boolean"
                  },
                  "disallowUserSelectedDuration": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "recharts": {
                    "type": "boolean"
                  },
                  "displayType": {
                    "type": "string",
                    "enum": [
                      "stick",
                      "line"
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "cumulative": {
                          "type": "boolean"
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "graphType": {
                          "type": "string",
                          "enum": [
                            "area",
                            "bar",
                            "line"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisFormat": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisMax": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "yAxisMin": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "yAxisId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "lineType": {
                          "type": "string",
                          "enum": [
                            "monotone",
                            "step",
                            "stepAfter",
                            "linear",
                            "stepBefore"
                          ]
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "dotWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "yAxes": {
                    "type": "array",
                    "maxItems": 10,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "position": {
                          "type": "string",
                          "enum": [
                            "left",
                            "right",
                            "hidden"
                          ],
                          "default": "left"
                        },
                        "min": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "max": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "format": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "id"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "heatmap"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "defaultBearing": {
                    "type": "number"
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultPitch": {
                    "type": "number"
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "locationTagKey": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "mapStyle": {
                    "type": "string",
                    "enum": [
                      "normal",
                      "satellite"
                    ]
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "iframe"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "maxLength": 2048
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "image"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "bgColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "imageLinkNewWindow": {
                    "type": "boolean"
                  },
                  "imageLinkUrl": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "imageSource": {
                    "type": "string",
                    "enum": [
                      "static",
                      "attribute"
                    ]
                  },
                  "deviceId": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "image-overlay"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "backgroundColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "defaultZoom": {
                    "type": "number"
                  },
                  "disableZoom": {
                    "type": "boolean"
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 300,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "gauge"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "overlays": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "indicator",
                                "label",
                                "image"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "value"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "valueTemplate": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "bar"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "min": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "max": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "backgroundColor": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "valueTemplate": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "length": {
                              "type": "integer",
                              "minimum": 1,
                              "maximum": 10
                            },
                            "orientation": {
                              "type": "string",
                              "enum": [
                                "horizontal",
                                "vertical"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height",
              "config"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "indicator"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "defaultCondition": {
                    "type": "object",
                    "properties": {
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "condition": {
                        "type": "string",
                        "maxLength": 2048
                      },
                      "imageUrl": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "shape": {
                        "type": "string",
                        "enum": [
                          "circle",
                          "square",
                          "triangle-down",
                          "triangle-up",
                          "octagon"
                        ]
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "input"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "defaultMode": {
                    "type": "string",
                    "enum": [
                      "unlocked",
                      "locked"
                    ]
                  },
                  "controls": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "range"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "max": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "min": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "step": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "defaultValue": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "toggle"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "boolean"
                            },
                            "includeLabel": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "text"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 2048
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "select"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "options": {
                              "type": "array",
                              "maxItems": 500,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "help"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "help": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "button"
                              ]
                            },
                            "action": {
                              "type": "string",
                              "enum": [
                                "workflow",
                                "command"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "buttonId": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "workflowId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "commandName": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "map"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "clusterPoints": {
                    "type": "boolean"
                  },
                  "compositeResult": {
                    "type": "boolean"
                  },
                  "defaultBearing": {
                    "type": "number"
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultPitch": {
                    "type": "number"
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "endColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "iconTemplate": {
                    "type": "string",
                    "maxLength": 73727
                  },
                  "includeArrows": {
                    "type": "boolean"
                  },
                  "includeLines": {
                    "type": "boolean"
                  },
                  "locationTagKey": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "mapStyle": {
                    "type": "string",
                    "enum": [
                      "normal",
                      "satellite"
                    ]
                  },
                  "pinMode": {
                    "type": "string",
                    "enum": [
                      "simple",
                      "advanced"
                    ]
                  },
                  "popupTemplate": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "resizedPins": {
                    "type": "boolean"
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "startColor": {
                    "type": "string",
                    "maxLength": 64
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "open-event-indicator"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "allowUpdates": {
                    "type": "boolean"
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "pie"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "percentFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "valueFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "position-chart"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "compositeResult": {
                    "type": "boolean"
                  },
                  "coordinateA": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "coordinateB": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "disableZoom": {
                    "type": "boolean"
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "endColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "iconTemplate": {
                    "type": "string",
                    "maxLength": 73727
                  },
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "includeArrows": {
                    "type": "boolean"
                  },
                  "includeLines": {
                    "type": "boolean"
                  },
                  "pinMode": {
                    "type": "string",
                    "enum": [
                      "simple",
                      "advanced"
                    ]
                  },
                  "pixelA": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "pixelB": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "popupTemplate": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "resizedPins": {
                    "type": "boolean"
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "startColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "xAttribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "yAttribute": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "section-header"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "title": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "content": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "workflow-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "includeCloud": {
                    "type": "boolean"
                  },
                  "includeEdge": {
                    "type": "boolean"
                  },
                  "includeEmbedded": {
                    "type": "boolean"
                  },
                  "includeExperience": {
                    "type": "boolean"
                  },
                  "experienceVersion": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "reportConfigs": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 48
          },
          "cron": {
            "type": "string",
            "maxLength": 255
          },
          "toEmail": {
            "type": "array",
            "minItems": 1,
            "maxItems": 10,
            "items": {
              "type": "string",
              "format": "email",
              "maxLength": 1024
            }
          },
          "callbackUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "subject": {
            "type": "string",
            "maxLength": 255
          },
          "message": {
            "type": "string",
            "maxLength": 32767
          },
          "theme": {
            "type": "string",
            "enum": [
              "dark",
              "light"
            ]
          },
          "timezone": {
            "type": "string",
            "maxLength": 255
          },
          "locale": {
            "type": "string",
            "maxLength": 5
          },
          "ctx": {
            "title": "Dashboard Context Instance",
            "description": "Schema for a dashboard context instance",
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "oneOf": [
                  {
                    "type": "string",
                    "maxLength": 32767
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "key": {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      "value": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  }
                ]
              }
            },
            "additionalProperties": false
          },
          "branded": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "anyOf": [
          {
            "required": [
              "cron",
              "toEmail"
            ]
          },
          {
            "required": [
              "cron",
              "callbackUrl"
            ]
          }
        ]
      }
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "refreshRate": {
      "type": "number",
      "minimum": 5,
      "maximum": 600
    },
    "duration": {
      "type": "integer",
      "minimum": 1
    },
    "resolution": {
      "type": "integer",
      "minimum": 1
    },
    "defaultTheme": {
      "type": "string",
      "enum": [
        "dark",
        "light"
      ]
    },
    "public": {
      "type": "boolean"
    },
    "password": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 12,
          "maxLength": 2048,
          "pattern": "^(?=.*[A-Z])(?=.*[^A-Za-z0-9])(?=.*[0-9])(?=.*[a-z]).{12,}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "contextConfiguration": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceAttribute"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "attributes": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "maxItems": 100
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceId"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "deviceIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "maxItems": 1000
                  },
                  "deviceTags": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "maxItems": 100
                  },
                  "includeFullDevice": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceTag"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "deviceTags": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "maxItems": 100
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "number"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": [
                  "number",
                  "string"
                ]
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "min": {
                    "type": "number"
                  },
                  "max": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "string"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "regExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "experienceUser"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "experienceGroupIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "maxItems": 1000
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          }
        ]
      },
      "maxItems": 100
    }
  },
  "additionalProperties": false
}

Dashboard Patch Example

{
  "name": "My Updated Dashboard",
  "description": "Description of my updated dashboard",
  "refreshRate": 300,
  "public": true
}

Dashboard Post

Schema for the body of a Dashboard creation request

Dashboard Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "blocks": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "application-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "bar"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "xAxisFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "xAxisLabel": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "xAxisMax": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "xAxisMin": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "custom-chart",
                  "custom-html"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "configuration": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "headContent": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "bodyContent": {
                            "type": "string",
                            "maxLength": 32767
                          }
                        },
                        "additionalProperties": false
                      },
                      {
                        "type": "string",
                        "maxLength": 32767
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "time-series"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            },
                            "resolution": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "null"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "gauge"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "data-table"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "dataTableId": {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            "query": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "queryMode": {
                              "type": "string",
                              "enum": [
                                "$or",
                                "$and",
                                "advanced"
                              ]
                            },
                            "sortColumn": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "sortDirection": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "limit": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "offset": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "device-info"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attributes": {
                              "oneOf": [
                                {
                                  "type": "null"
                                },
                                {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                }
                              ]
                            },
                            "excludeConnectionInfo": {
                              "type": "boolean"
                            },
                            "sortField": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "sortDirection": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "page": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "perPage": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "query": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "compositeStateType": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "vegaVersion": {
                    "type": "string",
                    "enum": [
                      "vegaLite2",
                      "vegaLite3",
                      "vegaLite4",
                      "vegaLite5",
                      "vega4",
                      "vega5"
                    ]
                  },
                  "tooltipEventSubscribe": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "dashboard-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "data-table"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "dataTableId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "defaultSortColumn": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultSortDirection": {
                    "oneOf": [
                      {
                        "type": "string",
                        "enum": [
                          "asc",
                          "desc",
                          "ASC",
                          "DESC",
                          ""
                        ]
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "defaultLimit": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultOffset": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "queryMode": {
                    "type": "string",
                    "enum": [
                      "$or",
                      "$and",
                      "advanced"
                    ]
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "type": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                "$custom"
                              ]
                            }
                          ]
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-count"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "segments": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "required": [
                        "id",
                        "query"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "defaultCondition": {
                    "type": "object",
                    "properties": {
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "value": {
                        "type": "string",
                        "maxLength": 32767
                      }
                    },
                    "required": [
                      "color"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "segments",
                  "defaultCondition"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "excludeConnectionInfo": {
                    "type": "boolean"
                  },
                  "deviceLinkNewWindow": {
                    "type": "boolean"
                  },
                  "deviceLinkType": {
                    "type": "string",
                    "enum": [
                      "custom",
                      "default"
                    ]
                  },
                  "deviceLinkUrl": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "match": {
                    "type": "string",
                    "enum": [
                      "unfiltered",
                      "all",
                      "any"
                    ]
                  },
                  "showPublicFilter": {
                    "type": "boolean"
                  },
                  "sortField": {
                    "type": "string",
                    "enum": [
                      "id",
                      "creationDate",
                      "lastUpdated",
                      "name"
                    ]
                  },
                  "sortDirection": {
                    "type": "string",
                    "enum": [
                      "asc",
                      "desc",
                      "ASC",
                      "DESC",
                      ""
                    ]
                  },
                  "filter": {
                    "oneOf": [
                      {
                        "type": "string",
                        "maxLength": 255
                      },
                      {
                        "type": "object",
                        "properties": {
                          "ids": {
                            "type": "array",
                            "maxItems": 100,
                            "items": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "tags": {
                            "type": "array",
                            "maxItems": 100,
                            "items": {
                              "type": "object",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "value": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "fromCtx": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "searchParam": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      }
                    ]
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "id",
                            "connectionStatus",
                            "attribute",
                            "tag",
                            "name",
                            "custom",
                            "created",
                            "updated"
                          ]
                        },
                        "source": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-log"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "includeDeviceInfo": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "device-state-table"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "attributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "sortDirection": {
                    "type": "integer",
                    "minimum": -1,
                    "maximum": 1
                  },
                  "sortIndex": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceTags",
                            "deviceId",
                            "deviceName",
                            "timestamp",
                            "attribute"
                          ]
                        },
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "event-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "allowUpdates": {
                    "type": "boolean"
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "sortDirection": {
                    "type": "string",
                    "enum": [
                      "asc",
                      "desc",
                      "ASC",
                      "DESC",
                      ""
                    ]
                  },
                  "sortField": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "eventState": {
                    "oneOf": [
                      {
                        "type": "string",
                        "maxLength": 255
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "object",
                        "additionalProperties": false
                      }
                    ]
                  },
                  "columnErrors": {
                    "type": "object",
                    "additionalProperties": false
                  },
                  "columns": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "selectedTag": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "level",
                            "subject",
                            "subjectWithMessage",
                            "creationDate",
                            "creationDateWithSource",
                            "lastUpdatedDate",
                            "lastUpdatedDateWithSource",
                            "id",
                            "state",
                            "tag",
                            "deviceName",
                            "sourceId",
                            "custom"
                          ]
                        },
                        "headerTemplate": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "rowTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "gauge"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "displayAsPercentage": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "gaugeMax": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "gaugeMin": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "gaugeType": {
                    "type": "string",
                    "enum": [
                      "battery",
                      "dial",
                      "number",
                      "tank",
                      "thermometer"
                    ]
                  },
                  "precision": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "precisionType": {
                    "type": "string",
                    "enum": [
                      "floating",
                      "significant"
                    ]
                  },
                  "segment": {
                    "type": "object",
                    "properties": {
                      "attribute": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "aggregation": {
                        "oneOf": [
                          {
                            "oneOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "FIRST",
                                  "LAST",
                                  "COUNT",
                                  "MAX",
                                  "MIN",
                                  "MEDIAN",
                                  "MEAN",
                                  "SUM",
                                  "STD_DEV"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "NONE"
                                ]
                              }
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "oneOf": [
                                  {
                                    "type": "string",
                                    "enum": [
                                      "FIRST",
                                      "LAST",
                                      "COUNT",
                                      "MAX",
                                      "MIN",
                                      "MEDIAN",
                                      "MEAN",
                                      "SUM",
                                      "STD_DEV"
                                    ]
                                  },
                                  {
                                    "type": "string",
                                    "enum": [
                                      "NONE"
                                    ]
                                  }
                                ]
                              },
                              "options": {
                                "type": "object",
                                "additionalProperties": false
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "type"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TIMEATVALUE"
                                ]
                              },
                              "options": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "boolean"
                                      }
                                    ]
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "value"
                                ]
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "type",
                              "options"
                            ]
                          }
                        ]
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "deviceIds": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "deviceTags": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "value": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "fromCtx": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "expression": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "yAxisLabel": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "lineWeight": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 5
                      },
                      "detectDataGaps": {
                        "type": "boolean"
                      },
                      "graphType": {
                        "type": "string",
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "graph"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "hideLegend": {
                    "type": "boolean"
                  },
                  "disallowUserSelectedDuration": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "recharts": {
                    "type": "boolean"
                  },
                  "displayType": {
                    "type": "string",
                    "enum": [
                      "stick",
                      "line"
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "cumulative": {
                          "type": "boolean"
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "graphType": {
                          "type": "string",
                          "enum": [
                            "area",
                            "bar",
                            "line"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisFormat": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisMax": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "yAxisMin": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "yAxisId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "lineType": {
                          "type": "string",
                          "enum": [
                            "monotone",
                            "step",
                            "stepAfter",
                            "linear",
                            "stepBefore"
                          ]
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "dotWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "yAxes": {
                    "type": "array",
                    "maxItems": 10,
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "position": {
                          "type": "string",
                          "enum": [
                            "left",
                            "right",
                            "hidden"
                          ],
                          "default": "left"
                        },
                        "min": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "max": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "format": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "id"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "heatmap"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "defaultBearing": {
                    "type": "number"
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultPitch": {
                    "type": "number"
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "locationTagKey": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "mapStyle": {
                    "type": "string",
                    "enum": [
                      "normal",
                      "satellite"
                    ]
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "iframe"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "maxLength": 2048
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "image"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "bgColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "imageLinkNewWindow": {
                    "type": "boolean"
                  },
                  "imageLinkUrl": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "imageSource": {
                    "type": "string",
                    "enum": [
                      "static",
                      "attribute"
                    ]
                  },
                  "deviceId": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "image-overlay"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "backgroundColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "defaultZoom": {
                    "type": "number"
                  },
                  "disableZoom": {
                    "type": "boolean"
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 300,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "queryType": {
                              "type": "string",
                              "enum": [
                                "gauge"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "duration": {
                              "oneOf": [
                                {
                                  "type": "integer",
                                  "minimum": 0
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "{{dashboard.duration}}"
                                  ]
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "overlays": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "indicator",
                                "label",
                                "image"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "value"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "valueTemplate": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "bar"
                              ]
                            },
                            "size": {
                              "type": "string",
                              "enum": [
                                "small",
                                "medium",
                                "large"
                              ]
                            },
                            "position": {
                              "type": "string",
                              "minLength": 3,
                              "maxLength": 255
                            },
                            "popupTemplate": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "conditions": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "condition": {
                                    "type": "string",
                                    "maxLength": 2048
                                  },
                                  "imageUrl": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "shape": {
                                    "type": "string",
                                    "enum": [
                                      "circle",
                                      "square",
                                      "triangle-down",
                                      "triangle-up",
                                      "octagon"
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "defaultCondition": {
                              "type": "object",
                              "properties": {
                                "color": {
                                  "type": "string",
                                  "maxLength": 64
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "label": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "condition": {
                                  "type": "string",
                                  "maxLength": 2048
                                },
                                "imageUrl": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "shape": {
                                  "type": "string",
                                  "enum": [
                                    "circle",
                                    "square",
                                    "triangle-down",
                                    "triangle-up",
                                    "octagon"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "min": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "max": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "backgroundColor": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "valueTemplate": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "length": {
                              "type": "integer",
                              "minimum": 1,
                              "maximum": 10
                            },
                            "orientation": {
                              "type": "string",
                              "enum": [
                                "horizontal",
                                "vertical"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "position",
                            "size",
                            "defaultCondition"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height",
              "config"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "indicator"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "conditions": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "condition": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "circle",
                            "square",
                            "triangle-down",
                            "triangle-up",
                            "octagon"
                          ]
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "defaultCondition": {
                    "type": "object",
                    "properties": {
                      "color": {
                        "type": "string",
                        "maxLength": 64
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "label": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "condition": {
                        "type": "string",
                        "maxLength": 2048
                      },
                      "imageUrl": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "shape": {
                        "type": "string",
                        "enum": [
                          "circle",
                          "square",
                          "triangle-down",
                          "triangle-up",
                          "octagon"
                        ]
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "input"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "defaultMode": {
                    "type": "string",
                    "enum": [
                      "unlocked",
                      "locked"
                    ]
                  },
                  "controls": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "range"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "max": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "min": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "step": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            },
                            "defaultValue": {
                              "oneOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "string",
                                  "maxLength": 128
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "toggle"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "boolean"
                            },
                            "includeLabel": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "text"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 2048
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "select"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultQuery": {
                              "type": "object",
                              "properties": {
                                "attribute": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "aggregation": {
                                  "oneOf": [
                                    {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "enum": [
                                                "FIRST",
                                                "LAST",
                                                "COUNT",
                                                "MAX",
                                                "MIN",
                                                "MEDIAN",
                                                "MEAN",
                                                "SUM",
                                                "STD_DEV"
                                              ]
                                            },
                                            {
                                              "type": "string",
                                              "enum": [
                                                "NONE"
                                              ]
                                            }
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "additionalProperties": false
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TIMEATVALUE"
                                          ]
                                        },
                                        "options": {
                                          "type": "object",
                                          "properties": {
                                            "value": {
                                              "oneOf": [
                                                {
                                                  "type": "string",
                                                  "maxLength": 255
                                                },
                                                {
                                                  "type": "number"
                                                },
                                                {
                                                  "type": "boolean"
                                                }
                                              ]
                                            }
                                          },
                                          "additionalProperties": false,
                                          "required": [
                                            "value"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "type",
                                        "options"
                                      ]
                                    }
                                  ]
                                },
                                "deviceIds": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "deviceTags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "options": {
                              "type": "array",
                              "maxItems": 500,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "help"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "help": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "button"
                              ]
                            },
                            "action": {
                              "type": "string",
                              "enum": [
                                "workflow",
                                "command"
                              ]
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "templateId": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 512
                            },
                            "grid": {
                              "type": "object",
                              "properties": {
                                "h": {
                                  "type": "number"
                                },
                                "w": {
                                  "type": "number"
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "buttonId": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "workflowId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "commandName": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "map"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "attribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "clusterPoints": {
                    "type": "boolean"
                  },
                  "compositeResult": {
                    "type": "boolean"
                  },
                  "defaultBearing": {
                    "type": "number"
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultPitch": {
                    "type": "number"
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "endColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "iconTemplate": {
                    "type": "string",
                    "maxLength": 73727
                  },
                  "includeArrows": {
                    "type": "boolean"
                  },
                  "includeLines": {
                    "type": "boolean"
                  },
                  "locationTagKey": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      {
                        "type": "string",
                        "minLength": 4,
                        "maxLength": 255,
                        "pattern": ".*{{.+}}.*"
                      }
                    ]
                  },
                  "mapStyle": {
                    "type": "string",
                    "enum": [
                      "normal",
                      "satellite"
                    ]
                  },
                  "pinMode": {
                    "type": "string",
                    "enum": [
                      "simple",
                      "advanced"
                    ]
                  },
                  "popupTemplate": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "resizedPins": {
                    "type": "boolean"
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "startColor": {
                    "type": "string",
                    "maxLength": 64
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "open-event-indicator"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "allowUpdates": {
                    "type": "boolean"
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "pie"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "realTime": {
                    "type": "boolean"
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "percentFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "valueFormat": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "segments": {
                    "type": "array",
                    "maxItems": 255,
                    "items": {
                      "type": "object",
                      "properties": {
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "aggregation": {
                          "oneOf": [
                            {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "FIRST",
                                    "LAST",
                                    "COUNT",
                                    "MAX",
                                    "MIN",
                                    "MEDIAN",
                                    "MEAN",
                                    "SUM",
                                    "STD_DEV"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "NONE"
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TIMEATVALUE"
                                  ]
                                },
                                "options": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "value"
                                  ]
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "options"
                              ]
                            }
                          ]
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "label": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "expression": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "lineWeight": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 5
                        },
                        "detectDataGaps": {
                          "type": "boolean"
                        },
                        "graphType": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "position-chart"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "additionalAttributes": {
                    "oneOf": [
                      {
                        "type": "null"
                      },
                      {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      }
                    ]
                  },
                  "centerOnDataPoints": {
                    "type": "boolean"
                  },
                  "compositeResult": {
                    "type": "boolean"
                  },
                  "coordinateA": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "coordinateB": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "defaultCenter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "defaultZoom": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "maxLength": 128
                      }
                    ]
                  },
                  "disableZoom": {
                    "type": "boolean"
                  },
                  "deviceIds": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "deviceTags": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "value": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "fromCtx": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "duration": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "string",
                        "enum": [
                          "{{dashboard.duration}}"
                        ]
                      }
                    ]
                  },
                  "endColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "iconTemplate": {
                    "type": "string",
                    "maxLength": 73727
                  },
                  "imageUrl": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "includeArrows": {
                    "type": "boolean"
                  },
                  "includeLines": {
                    "type": "boolean"
                  },
                  "pinMode": {
                    "type": "string",
                    "enum": [
                      "simple",
                      "advanced"
                    ]
                  },
                  "pixelA": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "pixelB": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 255
                  },
                  "popupTemplate": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "resizedPins": {
                    "type": "boolean"
                  },
                  "resolution": {
                    "oneOf": [
                      {
                        "type": "integer",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      },
                      {
                        "type": "string",
                        "maxLength": 255
                      }
                    ]
                  },
                  "startColor": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "xAttribute": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "yAttribute": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "section-header"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "title": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "content": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 48
              },
              "title": {
                "type": "string",
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "startX": {
                "type": "number"
              },
              "startY": {
                "type": "number"
              },
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              },
              "blockType": {
                "type": "string",
                "enum": [
                  "workflow-list"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "filter": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "includeCloud": {
                    "type": "boolean"
                  },
                  "includeEdge": {
                    "type": "boolean"
                  },
                  "includeEmbedded": {
                    "type": "boolean"
                  },
                  "includeExperience": {
                    "type": "boolean"
                  },
                  "experienceVersion": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "blockType",
              "startX",
              "startY",
              "width",
              "height"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "refreshRate": {
      "type": "number",
      "minimum": 5,
      "maximum": 600
    },
    "duration": {
      "type": "integer",
      "minimum": 1
    },
    "resolution": {
      "type": "integer",
      "minimum": 1
    },
    "defaultTheme": {
      "type": "string",
      "enum": [
        "dark",
        "light"
      ]
    },
    "reportConfigs": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 48
          },
          "cron": {
            "type": "string",
            "maxLength": 255
          },
          "toEmail": {
            "type": "array",
            "minItems": 1,
            "maxItems": 10,
            "items": {
              "type": "string",
              "format": "email",
              "maxLength": 1024
            }
          },
          "callbackUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "subject": {
            "type": "string",
            "maxLength": 255
          },
          "message": {
            "type": "string",
            "maxLength": 32767
          },
          "theme": {
            "type": "string",
            "enum": [
              "dark",
              "light"
            ]
          },
          "timezone": {
            "type": "string",
            "maxLength": 255
          },
          "locale": {
            "type": "string",
            "maxLength": 5
          },
          "ctx": {
            "title": "Dashboard Context Instance",
            "description": "Schema for a dashboard context instance",
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "oneOf": [
                  {
                    "type": "string",
                    "maxLength": 32767
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "key": {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      },
                      "value": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  }
                ]
              }
            },
            "additionalProperties": false
          },
          "branded": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "anyOf": [
          {
            "required": [
              "cron",
              "toEmail"
            ]
          },
          {
            "required": [
              "cron",
              "callbackUrl"
            ]
          }
        ]
      }
    },
    "public": {
      "type": "boolean"
    },
    "password": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 12,
          "maxLength": 2048,
          "pattern": "^(?=.*[A-Z])(?=.*[^A-Za-z0-9])(?=.*[0-9])(?=.*[a-z]).{12,}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "contextConfiguration": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceAttribute"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "attributes": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "maxItems": 100
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceId"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "deviceIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "maxItems": 1000
                  },
                  "deviceTags": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "maxItems": 100
                  },
                  "includeFullDevice": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceTag"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "deviceTags": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "maxItems": 100
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "number"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": [
                  "number",
                  "string"
                ]
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "min": {
                    "type": "number"
                  },
                  "max": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "string"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "regExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "type": {
                "type": "string",
                "enum": [
                  "experienceUser"
                ]
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "defaultValue": {
                "type": "string",
                "maxLength": 32767
              },
              "validationEnabled": {
                "type": "boolean"
              },
              "validationConfig": {
                "type": "object",
                "properties": {
                  "experienceGroupIds": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "maxItems": 1000
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "type",
              "defaultValue"
            ],
            "additionalProperties": false
          }
        ]
      },
      "maxItems": 100
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Dashboard Post Example

{
  "name": "My New Dashboard",
  "public": false
}

Dashboard Send Report

Schema for the body of a Dashboard report request

Dashboard Send Report Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "toEmail": {
      "type": "array",
      "minItems": 1,
      "maxItems": 10,
      "items": {
        "type": "string",
        "format": "email",
        "maxLength": 1024
      }
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "subject": {
      "type": "string",
      "maxLength": 255
    },
    "message": {
      "type": "string",
      "maxLength": 32767
    },
    "theme": {
      "type": "string",
      "enum": [
        "dark",
        "light"
      ]
    },
    "time": {
      "type": "number"
    },
    "timezone": {
      "type": "string",
      "maxLength": 255
    },
    "locale": {
      "type": "string",
      "maxLength": 5
    },
    "ctx": {
      "title": "Dashboard Context Instance",
      "description": "Schema for a dashboard context instance",
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "oneOf": [
            {
              "type": "string",
              "maxLength": 32767
            },
            {
              "type": "number"
            },
            {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "value": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "branded": {
      "type": "boolean"
    }
  },
  "anyOf": [
    {
      "required": [
        "toEmail"
      ]
    },
    {
      "required": [
        "callbackUrl"
      ]
    }
  ],
  "additionalProperties": false
}

Dashboard Send Report Example

{
  "toEmail": [
    "email@example.com"
  ],
  "subject": "Dashboard Report",
  "message": "Lookit",
  "time": 1551887386704,
  "theme": "dark",
  "timezone": "America/New_York",
  "locale": "en-us"
}

Dashboard Update Events

Schema for the body of an update events request

Dashboard Update Events Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "eventIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      }
    },
    "updates": {
      "title": "Event Patch",
      "description": "Schema for the body of an Event modification request",
      "type": "object",
      "properties": {
        "state": {
          "type": "string",
          "enum": [
            "new",
            "acknowledged",
            "resolved"
          ]
        },
        "comment": {
          "type": "string",
          "maxLength": 32767
        },
        "data": {},
        "eventTags": {
          "type": "object",
          "patternProperties": {
            "^[0-9a-zA-Z_-]{1,255}$": {
              "type": "string",
              "minLength": 1,
              "maxLength": 255
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

Dashboard Update Events Example

{
  "eventIds": [
    "596e6ce831761df4231708f1"
  ],
  "updates": {
    "state": "acknowledged",
    "comment": "Looking into this issue"
  }
}

Dashboards

Schema for a collection of Dashboards

Dashboards Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Dashboard",
        "description": "Schema for a single Dashboard",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "dashboardId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "ownerId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "ownerType": {
            "type": "string",
            "enum": [
              "user",
              "organization"
            ]
          },
          "createdById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "lastUpdatedById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "lastUpdatedByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "organizationName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "organizationIconColor": {
            "type": "string",
            "maxLength": 64
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "refreshRate": {
            "type": "number",
            "minimum": 5,
            "maximum": 600
          },
          "duration": {
            "type": "integer",
            "minimum": 1
          },
          "resolution": {
            "type": "integer",
            "minimum": 1
          },
          "defaultTheme": {
            "type": "string",
            "enum": [
              "dark",
              "light"
            ]
          },
          "isPasswordProtected": {
            "type": "boolean"
          },
          "public": {
            "type": "boolean"
          },
          "reportConfigs": {
            "type": "array",
            "maxItems": 10,
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "maxLength": 48
                },
                "cron": {
                  "type": "string",
                  "maxLength": 255
                },
                "toEmail": {
                  "type": "array",
                  "minItems": 1,
                  "maxItems": 10,
                  "items": {
                    "type": "string",
                    "format": "email",
                    "maxLength": 1024
                  }
                },
                "callbackUrl": {
                  "type": "string",
                  "format": "uri",
                  "maxLength": 1024
                },
                "subject": {
                  "type": "string",
                  "maxLength": 255
                },
                "message": {
                  "type": "string",
                  "maxLength": 32767
                },
                "theme": {
                  "type": "string",
                  "enum": [
                    "dark",
                    "light"
                  ]
                },
                "timezone": {
                  "type": "string",
                  "maxLength": 255
                },
                "locale": {
                  "type": "string",
                  "maxLength": 5
                },
                "ctx": {
                  "title": "Dashboard Context Instance",
                  "description": "Schema for a dashboard context instance",
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "oneOf": [
                        {
                          "type": "string",
                          "maxLength": 32767
                        },
                        {
                          "type": "number"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            "value": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "additionalProperties": false
                },
                "branded": {
                  "type": "boolean"
                }
              },
              "additionalProperties": false,
              "anyOf": [
                {
                  "required": [
                    "cron",
                    "toEmail"
                  ]
                },
                {
                  "required": [
                    "cron",
                    "callbackUrl"
                  ]
                }
              ]
            }
          },
          "blocks": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "application-list"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "filter": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "bar"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "realTime": {
                          "type": "boolean"
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "xAxisFormat": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "xAxisLabel": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "xAxisMax": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "xAxisMin": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "segments": {
                          "type": "array",
                          "maxItems": 255,
                          "items": {
                            "type": "object",
                            "properties": {
                              "attribute": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "aggregation": {
                                "oneOf": [
                                  {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "enum": [
                                          "FIRST",
                                          "LAST",
                                          "COUNT",
                                          "MAX",
                                          "MIN",
                                          "MEDIAN",
                                          "MEAN",
                                          "SUM",
                                          "STD_DEV"
                                        ]
                                      },
                                      {
                                        "type": "string",
                                        "enum": [
                                          "NONE"
                                        ]
                                      }
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "oneOf": [
                                          {
                                            "type": "string",
                                            "enum": [
                                              "FIRST",
                                              "LAST",
                                              "COUNT",
                                              "MAX",
                                              "MIN",
                                              "MEDIAN",
                                              "MEAN",
                                              "SUM",
                                              "STD_DEV"
                                            ]
                                          },
                                          {
                                            "type": "string",
                                            "enum": [
                                              "NONE"
                                            ]
                                          }
                                        ]
                                      },
                                      "options": {
                                        "type": "object",
                                        "additionalProperties": false
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "type"
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "enum": [
                                          "TIMEATVALUE"
                                        ]
                                      },
                                      "options": {
                                        "type": "object",
                                        "properties": {
                                          "value": {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "maxLength": 255
                                              },
                                              {
                                                "type": "number"
                                              },
                                              {
                                                "type": "boolean"
                                              }
                                            ]
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "value"
                                        ]
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "type",
                                      "options"
                                    ]
                                  }
                                ]
                              },
                              "color": {
                                "type": "string",
                                "maxLength": 64
                              },
                              "deviceIds": {
                                "type": "array",
                                "maxItems": 100,
                                "items": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "deviceTags": {
                                "type": "array",
                                "maxItems": 100,
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "key": {
                                      "type": "string",
                                      "maxLength": 255
                                    },
                                    "value": {
                                      "type": "string",
                                      "maxLength": 255
                                    },
                                    "fromCtx": {
                                      "type": "string",
                                      "maxLength": 255
                                    }
                                  },
                                  "additionalProperties": false
                                }
                              },
                              "label": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "expression": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "yAxisLabel": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "lineWeight": {
                                "type": "integer",
                                "minimum": 0,
                                "maximum": 5
                              },
                              "detectDataGaps": {
                                "type": "boolean"
                              },
                              "graphType": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "custom-chart",
                        "custom-html"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "configuration": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "headContent": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "bodyContent": {
                                  "type": "string",
                                  "maxLength": 32767
                                }
                              },
                              "additionalProperties": false
                            },
                            {
                              "type": "string",
                              "maxLength": 32767
                            }
                          ]
                        },
                        "segments": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "queryType": {
                                    "type": "string",
                                    "enum": [
                                      "time-series"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "attribute": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "aggregation": {
                                    "oneOf": [
                                      {
                                        "oneOf": [
                                          {
                                            "type": "string",
                                            "enum": [
                                              "FIRST",
                                              "LAST",
                                              "COUNT",
                                              "MAX",
                                              "MIN",
                                              "MEDIAN",
                                              "MEAN",
                                              "SUM",
                                              "STD_DEV"
                                            ]
                                          },
                                          {
                                            "type": "string",
                                            "enum": [
                                              "NONE"
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "FIRST",
                                                  "LAST",
                                                  "COUNT",
                                                  "MAX",
                                                  "MIN",
                                                  "MEDIAN",
                                                  "MEAN",
                                                  "SUM",
                                                  "STD_DEV"
                                                ]
                                              },
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "NONE"
                                                ]
                                              }
                                            ]
                                          },
                                          "options": {
                                            "type": "object",
                                            "additionalProperties": false
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "type"
                                        ]
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "enum": [
                                              "TIMEATVALUE"
                                            ]
                                          },
                                          "options": {
                                            "type": "object",
                                            "properties": {
                                              "value": {
                                                "oneOf": [
                                                  {
                                                    "type": "string",
                                                    "maxLength": 255
                                                  },
                                                  {
                                                    "type": "number"
                                                  },
                                                  {
                                                    "type": "boolean"
                                                  }
                                                ]
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "value"
                                            ]
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "type",
                                          "options"
                                        ]
                                      }
                                    ]
                                  },
                                  "deviceIds": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "string",
                                      "maxLength": 255
                                    }
                                  },
                                  "deviceTags": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "key": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "value": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "fromCtx": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "additionalProperties": false
                                    }
                                  },
                                  "duration": {
                                    "oneOf": [
                                      {
                                        "type": "integer",
                                        "minimum": 0
                                      },
                                      {
                                        "type": "string",
                                        "enum": [
                                          "{{dashboard.duration}}"
                                        ]
                                      }
                                    ]
                                  },
                                  "resolution": {
                                    "oneOf": [
                                      {
                                        "type": "integer",
                                        "minimum": 0
                                      },
                                      {
                                        "type": "null"
                                      },
                                      {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "queryType": {
                                    "type": "string",
                                    "enum": [
                                      "gauge"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "attribute": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "aggregation": {
                                    "oneOf": [
                                      {
                                        "oneOf": [
                                          {
                                            "type": "string",
                                            "enum": [
                                              "FIRST",
                                              "LAST",
                                              "COUNT",
                                              "MAX",
                                              "MIN",
                                              "MEDIAN",
                                              "MEAN",
                                              "SUM",
                                              "STD_DEV"
                                            ]
                                          },
                                          {
                                            "type": "string",
                                            "enum": [
                                              "NONE"
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "FIRST",
                                                  "LAST",
                                                  "COUNT",
                                                  "MAX",
                                                  "MIN",
                                                  "MEDIAN",
                                                  "MEAN",
                                                  "SUM",
                                                  "STD_DEV"
                                                ]
                                              },
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "NONE"
                                                ]
                                              }
                                            ]
                                          },
                                          "options": {
                                            "type": "object",
                                            "additionalProperties": false
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "type"
                                        ]
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "enum": [
                                              "TIMEATVALUE"
                                            ]
                                          },
                                          "options": {
                                            "type": "object",
                                            "properties": {
                                              "value": {
                                                "oneOf": [
                                                  {
                                                    "type": "string",
                                                    "maxLength": 255
                                                  },
                                                  {
                                                    "type": "number"
                                                  },
                                                  {
                                                    "type": "boolean"
                                                  }
                                                ]
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "value"
                                            ]
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "type",
                                          "options"
                                        ]
                                      }
                                    ]
                                  },
                                  "deviceIds": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "string",
                                      "maxLength": 255
                                    }
                                  },
                                  "deviceTags": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "key": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "value": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "fromCtx": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "additionalProperties": false
                                    }
                                  },
                                  "duration": {
                                    "oneOf": [
                                      {
                                        "type": "integer",
                                        "minimum": 0
                                      },
                                      {
                                        "type": "string",
                                        "enum": [
                                          "{{dashboard.duration}}"
                                        ]
                                      }
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "queryType": {
                                    "type": "string",
                                    "enum": [
                                      "data-table"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "dataTableId": {
                                    "type": "string",
                                    "pattern": "^[A-Fa-f\\d]{24}$"
                                  },
                                  "query": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "queryMode": {
                                    "type": "string",
                                    "enum": [
                                      "$or",
                                      "$and",
                                      "advanced"
                                    ]
                                  },
                                  "sortColumn": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "sortDirection": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "limit": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "offset": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "queryType": {
                                    "type": "string",
                                    "enum": [
                                      "device-info"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "attributes": {
                                    "oneOf": [
                                      {
                                        "type": "null"
                                      },
                                      {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      }
                                    ]
                                  },
                                  "excludeConnectionInfo": {
                                    "type": "boolean"
                                  },
                                  "sortField": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "sortDirection": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "page": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "perPage": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "query": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "compositeStateType": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            ]
                          }
                        },
                        "vegaVersion": {
                          "type": "string",
                          "enum": [
                            "vegaLite2",
                            "vegaLite3",
                            "vegaLite4",
                            "vegaLite5",
                            "vega4",
                            "vega5"
                          ]
                        },
                        "tooltipEventSubscribe": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "dashboard-list"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "filter": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "data-table"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "dataTableId": {
                          "type": "string",
                          "pattern": "^[A-Fa-f\\d]{24}$"
                        },
                        "defaultSortColumn": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "defaultSortDirection": {
                          "oneOf": [
                            {
                              "type": "string",
                              "enum": [
                                "asc",
                                "desc",
                                "ASC",
                                "DESC",
                                ""
                              ]
                            },
                            {
                              "type": "string",
                              "minLength": 4,
                              "maxLength": 255,
                              "pattern": ".*{{.+}}.*"
                            }
                          ]
                        },
                        "defaultLimit": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "defaultOffset": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "queryMode": {
                          "type": "string",
                          "enum": [
                            "$or",
                            "$and",
                            "advanced"
                          ]
                        },
                        "columns": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "type": {
                                "oneOf": [
                                  {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  },
                                  {
                                    "type": "string",
                                    "enum": [
                                      "$custom"
                                    ]
                                  }
                                ]
                              },
                              "headerTemplate": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "rowTemplate": {
                                "type": "string",
                                "maxLength": 32767
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "device-count"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "segments": {
                          "type": "array",
                          "minItems": 1,
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "query": {
                                "type": "string",
                                "maxLength": 32767
                              }
                            },
                            "required": [
                              "id",
                              "query"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "conditions": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "type": "string",
                                "maxLength": 64
                              },
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "label": {
                                "type": "string",
                                "maxLength": 32767
                              },
                              "condition": {
                                "type": "string",
                                "maxLength": 2048
                              },
                              "imageUrl": {
                                "type": "string",
                                "maxLength": 32767
                              },
                              "shape": {
                                "type": "string",
                                "enum": [
                                  "circle",
                                  "square",
                                  "triangle-down",
                                  "triangle-up",
                                  "octagon"
                                ]
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "defaultCondition": {
                          "type": "object",
                          "properties": {
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "value": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "required": [
                            "color"
                          ],
                          "additionalProperties": false
                        }
                      },
                      "required": [
                        "segments",
                        "defaultCondition"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "device-list"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "additionalAttributes": {
                          "oneOf": [
                            {
                              "type": "null"
                            },
                            {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            }
                          ]
                        },
                        "excludeConnectionInfo": {
                          "type": "boolean"
                        },
                        "deviceLinkNewWindow": {
                          "type": "boolean"
                        },
                        "deviceLinkType": {
                          "type": "string",
                          "enum": [
                            "custom",
                            "default"
                          ]
                        },
                        "deviceLinkUrl": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "match": {
                          "type": "string",
                          "enum": [
                            "unfiltered",
                            "all",
                            "any"
                          ]
                        },
                        "showPublicFilter": {
                          "type": "boolean"
                        },
                        "sortField": {
                          "type": "string",
                          "enum": [
                            "id",
                            "creationDate",
                            "lastUpdated",
                            "name"
                          ]
                        },
                        "sortDirection": {
                          "type": "string",
                          "enum": [
                            "asc",
                            "desc",
                            "ASC",
                            "DESC",
                            ""
                          ]
                        },
                        "filter": {
                          "oneOf": [
                            {
                              "type": "string",
                              "maxLength": 255
                            },
                            {
                              "type": "object",
                              "properties": {
                                "ids": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "tags": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "key": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "value": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "fromCtx": {
                                        "type": "string",
                                        "maxLength": 255
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                },
                                "searchParam": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            }
                          ]
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "columns": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "id",
                                  "connectionStatus",
                                  "attribute",
                                  "tag",
                                  "name",
                                  "custom",
                                  "created",
                                  "updated"
                                ]
                              },
                              "source": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "headerTemplate": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "rowTemplate": {
                                "type": "string",
                                "maxLength": 32767
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "device-log"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "includeDeviceInfo": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "device-state-table"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "attributes": {
                          "oneOf": [
                            {
                              "type": "null"
                            },
                            {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            }
                          ]
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "sortDirection": {
                          "type": "integer",
                          "minimum": -1,
                          "maximum": 1
                        },
                        "sortIndex": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 100
                        },
                        "columns": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "headerTemplate": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "rowTemplate": {
                                "type": "string",
                                "maxLength": 32767
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "deviceTags",
                                  "deviceId",
                                  "deviceName",
                                  "timestamp",
                                  "attribute"
                                ]
                              },
                              "attribute": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "event-list"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "allowUpdates": {
                          "type": "boolean"
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "sortDirection": {
                          "type": "string",
                          "enum": [
                            "asc",
                            "desc",
                            "ASC",
                            "DESC",
                            ""
                          ]
                        },
                        "sortField": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "filter": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "eventState": {
                          "oneOf": [
                            {
                              "type": "string",
                              "maxLength": 255
                            },
                            {
                              "type": "null"
                            },
                            {
                              "type": "object",
                              "additionalProperties": false
                            }
                          ]
                        },
                        "columnErrors": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "columns": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "selectedTag": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "level",
                                  "subject",
                                  "subjectWithMessage",
                                  "creationDate",
                                  "creationDateWithSource",
                                  "lastUpdatedDate",
                                  "lastUpdatedDateWithSource",
                                  "id",
                                  "state",
                                  "tag",
                                  "deviceName",
                                  "sourceId",
                                  "custom"
                                ]
                              },
                              "headerTemplate": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "rowTemplate": {
                                "type": "string",
                                "maxLength": 32767
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "gauge"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "realTime": {
                          "type": "boolean"
                        },
                        "displayAsPercentage": {
                          "type": "boolean"
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "gaugeMax": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "gaugeMin": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "gaugeType": {
                          "type": "string",
                          "enum": [
                            "battery",
                            "dial",
                            "number",
                            "tank",
                            "thermometer"
                          ]
                        },
                        "precision": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "precisionType": {
                          "type": "string",
                          "enum": [
                            "floating",
                            "significant"
                          ]
                        },
                        "segment": {
                          "type": "object",
                          "properties": {
                            "attribute": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "aggregation": {
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "FIRST",
                                        "LAST",
                                        "COUNT",
                                        "MAX",
                                        "MIN",
                                        "MEDIAN",
                                        "MEAN",
                                        "SUM",
                                        "STD_DEV"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "NONE"
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "oneOf": [
                                        {
                                          "type": "string",
                                          "enum": [
                                            "FIRST",
                                            "LAST",
                                            "COUNT",
                                            "MAX",
                                            "MIN",
                                            "MEDIAN",
                                            "MEAN",
                                            "SUM",
                                            "STD_DEV"
                                          ]
                                        },
                                        {
                                          "type": "string",
                                          "enum": [
                                            "NONE"
                                          ]
                                        }
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "TIMEATVALUE"
                                      ]
                                    },
                                    "options": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "oneOf": [
                                            {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            {
                                              "type": "number"
                                            },
                                            {
                                              "type": "boolean"
                                            }
                                          ]
                                        }
                                      },
                                      "additionalProperties": false,
                                      "required": [
                                        "value"
                                      ]
                                    }
                                  },
                                  "additionalProperties": false,
                                  "required": [
                                    "type",
                                    "options"
                                  ]
                                }
                              ]
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "deviceIds": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "deviceTags": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "value": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "fromCtx": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "expression": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "yAxisLabel": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "lineWeight": {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 5
                            },
                            "detectDataGaps": {
                              "type": "boolean"
                            },
                            "graphType": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "conditions": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "type": "string",
                                "maxLength": 64
                              },
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "label": {
                                "type": "string",
                                "maxLength": 32767
                              },
                              "condition": {
                                "type": "string",
                                "maxLength": 2048
                              },
                              "imageUrl": {
                                "type": "string",
                                "maxLength": 32767
                              },
                              "shape": {
                                "type": "string",
                                "enum": [
                                  "circle",
                                  "square",
                                  "triangle-down",
                                  "triangle-up",
                                  "octagon"
                                ]
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "graph"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "realTime": {
                          "type": "boolean"
                        },
                        "hideLegend": {
                          "type": "boolean"
                        },
                        "disallowUserSelectedDuration": {
                          "type": "boolean"
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "resolution": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "null"
                            },
                            {
                              "type": "string",
                              "maxLength": 255
                            }
                          ]
                        },
                        "recharts": {
                          "type": "boolean"
                        },
                        "displayType": {
                          "type": "string",
                          "enum": [
                            "stick",
                            "line"
                          ]
                        },
                        "segments": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "attribute": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "aggregation": {
                                "oneOf": [
                                  {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "enum": [
                                          "FIRST",
                                          "LAST",
                                          "COUNT",
                                          "MAX",
                                          "MIN",
                                          "MEDIAN",
                                          "MEAN",
                                          "SUM",
                                          "STD_DEV"
                                        ]
                                      },
                                      {
                                        "type": "string",
                                        "enum": [
                                          "NONE"
                                        ]
                                      }
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "oneOf": [
                                          {
                                            "type": "string",
                                            "enum": [
                                              "FIRST",
                                              "LAST",
                                              "COUNT",
                                              "MAX",
                                              "MIN",
                                              "MEDIAN",
                                              "MEAN",
                                              "SUM",
                                              "STD_DEV"
                                            ]
                                          },
                                          {
                                            "type": "string",
                                            "enum": [
                                              "NONE"
                                            ]
                                          }
                                        ]
                                      },
                                      "options": {
                                        "type": "object",
                                        "additionalProperties": false
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "type"
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "enum": [
                                          "TIMEATVALUE"
                                        ]
                                      },
                                      "options": {
                                        "type": "object",
                                        "properties": {
                                          "value": {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "maxLength": 255
                                              },
                                              {
                                                "type": "number"
                                              },
                                              {
                                                "type": "boolean"
                                              }
                                            ]
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "value"
                                        ]
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "type",
                                      "options"
                                    ]
                                  }
                                ]
                              },
                              "color": {
                                "type": "string",
                                "maxLength": 64
                              },
                              "cumulative": {
                                "type": "boolean"
                              },
                              "detectDataGaps": {
                                "type": "boolean"
                              },
                              "expression": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "graphType": {
                                "type": "string",
                                "enum": [
                                  "area",
                                  "bar",
                                  "line"
                                ]
                              },
                              "label": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "yAxisFormat": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "yAxisLabel": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "yAxisMax": {
                                "oneOf": [
                                  {
                                    "type": "number"
                                  },
                                  {
                                    "type": "string",
                                    "maxLength": 128
                                  }
                                ]
                              },
                              "yAxisMin": {
                                "oneOf": [
                                  {
                                    "type": "number"
                                  },
                                  {
                                    "type": "string",
                                    "maxLength": 128
                                  }
                                ]
                              },
                              "yAxisId": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "lineType": {
                                "type": "string",
                                "enum": [
                                  "monotone",
                                  "step",
                                  "stepAfter",
                                  "linear",
                                  "stepBefore"
                                ]
                              },
                              "lineWeight": {
                                "type": "integer",
                                "minimum": 0,
                                "maximum": 5
                              },
                              "dotWeight": {
                                "type": "integer",
                                "minimum": 0,
                                "maximum": 5
                              },
                              "deviceIds": {
                                "type": "array",
                                "maxItems": 100,
                                "items": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "deviceTags": {
                                "type": "array",
                                "maxItems": 100,
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "key": {
                                      "type": "string",
                                      "maxLength": 255
                                    },
                                    "value": {
                                      "type": "string",
                                      "maxLength": 255
                                    },
                                    "fromCtx": {
                                      "type": "string",
                                      "maxLength": 255
                                    }
                                  },
                                  "additionalProperties": false
                                }
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "yAxes": {
                          "type": "array",
                          "maxItems": 10,
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "label": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "position": {
                                "type": "string",
                                "enum": [
                                  "left",
                                  "right",
                                  "hidden"
                                ],
                                "default": "left"
                              },
                              "min": {
                                "oneOf": [
                                  {
                                    "type": "number"
                                  },
                                  {
                                    "type": "string",
                                    "maxLength": 128
                                  }
                                ]
                              },
                              "max": {
                                "oneOf": [
                                  {
                                    "type": "number"
                                  },
                                  {
                                    "type": "string",
                                    "maxLength": 128
                                  }
                                ]
                              },
                              "format": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "id"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "heatmap"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "additionalAttributes": {
                          "oneOf": [
                            {
                              "type": "null"
                            },
                            {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            }
                          ]
                        },
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "centerOnDataPoints": {
                          "type": "boolean"
                        },
                        "defaultBearing": {
                          "type": "number"
                        },
                        "defaultCenter": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "defaultPitch": {
                          "type": "number"
                        },
                        "defaultZoom": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "locationTagKey": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            {
                              "type": "string",
                              "minLength": 4,
                              "maxLength": 255,
                              "pattern": ".*{{.+}}.*"
                            }
                          ]
                        },
                        "mapStyle": {
                          "type": "string",
                          "enum": [
                            "normal",
                            "satellite"
                          ]
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "iframe"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "url": {
                          "type": "string",
                          "maxLength": 2048
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "image"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "bgColor": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "imageLinkNewWindow": {
                          "type": "boolean"
                        },
                        "imageLinkUrl": {
                          "type": "string",
                          "maxLength": 2048
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "imageSource": {
                          "type": "string",
                          "enum": [
                            "static",
                            "attribute"
                          ]
                        },
                        "deviceId": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "image-overlay"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "backgroundColor": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "defaultZoom": {
                          "type": "number"
                        },
                        "disableZoom": {
                          "type": "boolean"
                        },
                        "segments": {
                          "type": "array",
                          "maxItems": 300,
                          "items": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "queryType": {
                                    "type": "string",
                                    "enum": [
                                      "gauge"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "attribute": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "aggregation": {
                                    "oneOf": [
                                      {
                                        "oneOf": [
                                          {
                                            "type": "string",
                                            "enum": [
                                              "FIRST",
                                              "LAST",
                                              "COUNT",
                                              "MAX",
                                              "MIN",
                                              "MEDIAN",
                                              "MEAN",
                                              "SUM",
                                              "STD_DEV"
                                            ]
                                          },
                                          {
                                            "type": "string",
                                            "enum": [
                                              "NONE"
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "FIRST",
                                                  "LAST",
                                                  "COUNT",
                                                  "MAX",
                                                  "MIN",
                                                  "MEDIAN",
                                                  "MEAN",
                                                  "SUM",
                                                  "STD_DEV"
                                                ]
                                              },
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "NONE"
                                                ]
                                              }
                                            ]
                                          },
                                          "options": {
                                            "type": "object",
                                            "additionalProperties": false
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "type"
                                        ]
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "enum": [
                                              "TIMEATVALUE"
                                            ]
                                          },
                                          "options": {
                                            "type": "object",
                                            "properties": {
                                              "value": {
                                                "oneOf": [
                                                  {
                                                    "type": "string",
                                                    "maxLength": 255
                                                  },
                                                  {
                                                    "type": "number"
                                                  },
                                                  {
                                                    "type": "boolean"
                                                  }
                                                ]
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "value"
                                            ]
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "type",
                                          "options"
                                        ]
                                      }
                                    ]
                                  },
                                  "deviceIds": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "string",
                                      "maxLength": 255
                                    }
                                  },
                                  "deviceTags": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "key": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "value": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "fromCtx": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "additionalProperties": false
                                    }
                                  },
                                  "duration": {
                                    "oneOf": [
                                      {
                                        "type": "integer",
                                        "minimum": 0
                                      },
                                      {
                                        "type": "string",
                                        "enum": [
                                          "{{dashboard.duration}}"
                                        ]
                                      }
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              }
                            ]
                          }
                        },
                        "overlays": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "indicator",
                                      "label",
                                      "image"
                                    ]
                                  },
                                  "size": {
                                    "type": "string",
                                    "enum": [
                                      "small",
                                      "medium",
                                      "large"
                                    ]
                                  },
                                  "position": {
                                    "type": "string",
                                    "minLength": 3,
                                    "maxLength": 255
                                  },
                                  "popupTemplate": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "conditions": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "color": {
                                          "type": "string",
                                          "maxLength": 64
                                        },
                                        "id": {
                                          "type": "string",
                                          "maxLength": 48
                                        },
                                        "label": {
                                          "type": "string",
                                          "maxLength": 32767
                                        },
                                        "condition": {
                                          "type": "string",
                                          "maxLength": 2048
                                        },
                                        "imageUrl": {
                                          "type": "string",
                                          "maxLength": 32767
                                        },
                                        "shape": {
                                          "type": "string",
                                          "enum": [
                                            "circle",
                                            "square",
                                            "triangle-down",
                                            "triangle-up",
                                            "octagon"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false
                                    }
                                  },
                                  "defaultCondition": {
                                    "type": "object",
                                    "properties": {
                                      "color": {
                                        "type": "string",
                                        "maxLength": 64
                                      },
                                      "id": {
                                        "type": "string",
                                        "maxLength": 48
                                      },
                                      "label": {
                                        "type": "string",
                                        "maxLength": 32767
                                      },
                                      "condition": {
                                        "type": "string",
                                        "maxLength": 2048
                                      },
                                      "imageUrl": {
                                        "type": "string",
                                        "maxLength": 32767
                                      },
                                      "shape": {
                                        "type": "string",
                                        "enum": [
                                          "circle",
                                          "square",
                                          "triangle-down",
                                          "triangle-up",
                                          "octagon"
                                        ]
                                      }
                                    },
                                    "additionalProperties": false
                                  }
                                },
                                "required": [
                                  "type",
                                  "position",
                                  "size",
                                  "defaultCondition"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "value"
                                    ]
                                  },
                                  "size": {
                                    "type": "string",
                                    "enum": [
                                      "small",
                                      "medium",
                                      "large"
                                    ]
                                  },
                                  "position": {
                                    "type": "string",
                                    "minLength": 3,
                                    "maxLength": 255
                                  },
                                  "popupTemplate": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "conditions": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "color": {
                                          "type": "string",
                                          "maxLength": 64
                                        },
                                        "id": {
                                          "type": "string",
                                          "maxLength": 48
                                        },
                                        "label": {
                                          "type": "string",
                                          "maxLength": 32767
                                        },
                                        "condition": {
                                          "type": "string",
                                          "maxLength": 2048
                                        },
                                        "imageUrl": {
                                          "type": "string",
                                          "maxLength": 32767
                                        },
                                        "shape": {
                                          "type": "string",
                                          "enum": [
                                            "circle",
                                            "square",
                                            "triangle-down",
                                            "triangle-up",
                                            "octagon"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false
                                    }
                                  },
                                  "defaultCondition": {
                                    "type": "object",
                                    "properties": {
                                      "color": {
                                        "type": "string",
                                        "maxLength": 64
                                      },
                                      "id": {
                                        "type": "string",
                                        "maxLength": 48
                                      },
                                      "label": {
                                        "type": "string",
                                        "maxLength": 32767
                                      },
                                      "condition": {
                                        "type": "string",
                                        "maxLength": 2048
                                      },
                                      "imageUrl": {
                                        "type": "string",
                                        "maxLength": 32767
                                      },
                                      "shape": {
                                        "type": "string",
                                        "enum": [
                                          "circle",
                                          "square",
                                          "triangle-down",
                                          "triangle-up",
                                          "octagon"
                                        ]
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "valueTemplate": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "required": [
                                  "type",
                                  "position",
                                  "size",
                                  "defaultCondition"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "bar"
                                    ]
                                  },
                                  "size": {
                                    "type": "string",
                                    "enum": [
                                      "small",
                                      "medium",
                                      "large"
                                    ]
                                  },
                                  "position": {
                                    "type": "string",
                                    "minLength": 3,
                                    "maxLength": 255
                                  },
                                  "popupTemplate": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "conditions": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "color": {
                                          "type": "string",
                                          "maxLength": 64
                                        },
                                        "id": {
                                          "type": "string",
                                          "maxLength": 48
                                        },
                                        "label": {
                                          "type": "string",
                                          "maxLength": 32767
                                        },
                                        "condition": {
                                          "type": "string",
                                          "maxLength": 2048
                                        },
                                        "imageUrl": {
                                          "type": "string",
                                          "maxLength": 32767
                                        },
                                        "shape": {
                                          "type": "string",
                                          "enum": [
                                            "circle",
                                            "square",
                                            "triangle-down",
                                            "triangle-up",
                                            "octagon"
                                          ]
                                        }
                                      },
                                      "additionalProperties": false
                                    }
                                  },
                                  "defaultCondition": {
                                    "type": "object",
                                    "properties": {
                                      "color": {
                                        "type": "string",
                                        "maxLength": 64
                                      },
                                      "id": {
                                        "type": "string",
                                        "maxLength": 48
                                      },
                                      "label": {
                                        "type": "string",
                                        "maxLength": 32767
                                      },
                                      "condition": {
                                        "type": "string",
                                        "maxLength": 2048
                                      },
                                      "imageUrl": {
                                        "type": "string",
                                        "maxLength": 32767
                                      },
                                      "shape": {
                                        "type": "string",
                                        "enum": [
                                          "circle",
                                          "square",
                                          "triangle-down",
                                          "triangle-up",
                                          "octagon"
                                        ]
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "min": {
                                    "oneOf": [
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "string",
                                        "maxLength": 128
                                      }
                                    ]
                                  },
                                  "max": {
                                    "oneOf": [
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "string",
                                        "maxLength": 128
                                      }
                                    ]
                                  },
                                  "backgroundColor": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "valueTemplate": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "length": {
                                    "type": "integer",
                                    "minimum": 1,
                                    "maximum": 10
                                  },
                                  "orientation": {
                                    "type": "string",
                                    "enum": [
                                      "horizontal",
                                      "vertical"
                                    ]
                                  }
                                },
                                "required": [
                                  "type",
                                  "position",
                                  "size",
                                  "defaultCondition"
                                ],
                                "additionalProperties": false
                              }
                            ]
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height",
                    "config"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "indicator"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "realTime": {
                          "type": "boolean"
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "segments": {
                          "type": "array",
                          "maxItems": 255,
                          "items": {
                            "type": "object",
                            "properties": {
                              "attribute": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "aggregation": {
                                "oneOf": [
                                  {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "enum": [
                                          "FIRST",
                                          "LAST",
                                          "COUNT",
                                          "MAX",
                                          "MIN",
                                          "MEDIAN",
                                          "MEAN",
                                          "SUM",
                                          "STD_DEV"
                                        ]
                                      },
                                      {
                                        "type": "string",
                                        "enum": [
                                          "NONE"
                                        ]
                                      }
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "oneOf": [
                                          {
                                            "type": "string",
                                            "enum": [
                                              "FIRST",
                                              "LAST",
                                              "COUNT",
                                              "MAX",
                                              "MIN",
                                              "MEDIAN",
                                              "MEAN",
                                              "SUM",
                                              "STD_DEV"
                                            ]
                                          },
                                          {
                                            "type": "string",
                                            "enum": [
                                              "NONE"
                                            ]
                                          }
                                        ]
                                      },
                                      "options": {
                                        "type": "object",
                                        "additionalProperties": false
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "type"
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "enum": [
                                          "TIMEATVALUE"
                                        ]
                                      },
                                      "options": {
                                        "type": "object",
                                        "properties": {
                                          "value": {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "maxLength": 255
                                              },
                                              {
                                                "type": "number"
                                              },
                                              {
                                                "type": "boolean"
                                              }
                                            ]
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "value"
                                        ]
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "type",
                                      "options"
                                    ]
                                  }
                                ]
                              },
                              "color": {
                                "type": "string",
                                "maxLength": 64
                              },
                              "deviceIds": {
                                "type": "array",
                                "maxItems": 100,
                                "items": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "deviceTags": {
                                "type": "array",
                                "maxItems": 100,
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "key": {
                                      "type": "string",
                                      "maxLength": 255
                                    },
                                    "value": {
                                      "type": "string",
                                      "maxLength": 255
                                    },
                                    "fromCtx": {
                                      "type": "string",
                                      "maxLength": 255
                                    }
                                  },
                                  "additionalProperties": false
                                }
                              },
                              "label": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "expression": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "yAxisLabel": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "lineWeight": {
                                "type": "integer",
                                "minimum": 0,
                                "maximum": 5
                              },
                              "detectDataGaps": {
                                "type": "boolean"
                              },
                              "graphType": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "conditions": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "type": "string",
                                "maxLength": 64
                              },
                              "id": {
                                "type": "string",
                                "maxLength": 48
                              },
                              "label": {
                                "type": "string",
                                "maxLength": 32767
                              },
                              "condition": {
                                "type": "string",
                                "maxLength": 2048
                              },
                              "imageUrl": {
                                "type": "string",
                                "maxLength": 32767
                              },
                              "shape": {
                                "type": "string",
                                "enum": [
                                  "circle",
                                  "square",
                                  "triangle-down",
                                  "triangle-up",
                                  "octagon"
                                ]
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "defaultCondition": {
                          "type": "object",
                          "properties": {
                            "color": {
                              "type": "string",
                              "maxLength": 64
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "label": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "condition": {
                              "type": "string",
                              "maxLength": 2048
                            },
                            "imageUrl": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "shape": {
                              "type": "string",
                              "enum": [
                                "circle",
                                "square",
                                "triangle-down",
                                "triangle-up",
                                "octagon"
                              ]
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "input"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "defaultMode": {
                          "type": "string",
                          "enum": [
                            "unlocked",
                            "locked"
                          ]
                        },
                        "controls": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "range"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "templateId": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 512
                                  },
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "grid": {
                                    "type": "object",
                                    "properties": {
                                      "h": {
                                        "type": "number"
                                      },
                                      "w": {
                                        "type": "number"
                                      },
                                      "x": {
                                        "type": "number"
                                      },
                                      "y": {
                                        "type": "number"
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "defaultQuery": {
                                    "type": "object",
                                    "properties": {
                                      "attribute": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "aggregation": {
                                        "oneOf": [
                                          {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "FIRST",
                                                  "LAST",
                                                  "COUNT",
                                                  "MAX",
                                                  "MIN",
                                                  "MEDIAN",
                                                  "MEAN",
                                                  "SUM",
                                                  "STD_DEV"
                                                ]
                                              },
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "NONE"
                                                ]
                                              }
                                            ]
                                          },
                                          {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "oneOf": [
                                                  {
                                                    "type": "string",
                                                    "enum": [
                                                      "FIRST",
                                                      "LAST",
                                                      "COUNT",
                                                      "MAX",
                                                      "MIN",
                                                      "MEDIAN",
                                                      "MEAN",
                                                      "SUM",
                                                      "STD_DEV"
                                                    ]
                                                  },
                                                  {
                                                    "type": "string",
                                                    "enum": [
                                                      "NONE"
                                                    ]
                                                  }
                                                ]
                                              },
                                              "options": {
                                                "type": "object",
                                                "additionalProperties": false
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "type"
                                            ]
                                          },
                                          {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "enum": [
                                                  "TIMEATVALUE"
                                                ]
                                              },
                                              "options": {
                                                "type": "object",
                                                "properties": {
                                                  "value": {
                                                    "oneOf": [
                                                      {
                                                        "type": "string",
                                                        "maxLength": 255
                                                      },
                                                      {
                                                        "type": "number"
                                                      },
                                                      {
                                                        "type": "boolean"
                                                      }
                                                    ]
                                                  }
                                                },
                                                "additionalProperties": false,
                                                "required": [
                                                  "value"
                                                ]
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "type",
                                              "options"
                                            ]
                                          }
                                        ]
                                      },
                                      "deviceIds": {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "deviceTags": {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "object",
                                          "properties": {
                                            "key": {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            "value": {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            "fromCtx": {
                                              "type": "string",
                                              "maxLength": 255
                                            }
                                          },
                                          "additionalProperties": false
                                        }
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "max": {
                                    "oneOf": [
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "string",
                                        "maxLength": 128
                                      }
                                    ]
                                  },
                                  "min": {
                                    "oneOf": [
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "string",
                                        "maxLength": 128
                                      }
                                    ]
                                  },
                                  "step": {
                                    "oneOf": [
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "string",
                                        "maxLength": 128
                                      }
                                    ]
                                  },
                                  "defaultValue": {
                                    "oneOf": [
                                      {
                                        "type": "number"
                                      },
                                      {
                                        "type": "string",
                                        "maxLength": 128
                                      }
                                    ]
                                  }
                                },
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "toggle"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "templateId": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 512
                                  },
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "grid": {
                                    "type": "object",
                                    "properties": {
                                      "h": {
                                        "type": "number"
                                      },
                                      "w": {
                                        "type": "number"
                                      },
                                      "x": {
                                        "type": "number"
                                      },
                                      "y": {
                                        "type": "number"
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "defaultQuery": {
                                    "type": "object",
                                    "properties": {
                                      "attribute": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "aggregation": {
                                        "oneOf": [
                                          {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "FIRST",
                                                  "LAST",
                                                  "COUNT",
                                                  "MAX",
                                                  "MIN",
                                                  "MEDIAN",
                                                  "MEAN",
                                                  "SUM",
                                                  "STD_DEV"
                                                ]
                                              },
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "NONE"
                                                ]
                                              }
                                            ]
                                          },
                                          {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "oneOf": [
                                                  {
                                                    "type": "string",
                                                    "enum": [
                                                      "FIRST",
                                                      "LAST",
                                                      "COUNT",
                                                      "MAX",
                                                      "MIN",
                                                      "MEDIAN",
                                                      "MEAN",
                                                      "SUM",
                                                      "STD_DEV"
                                                    ]
                                                  },
                                                  {
                                                    "type": "string",
                                                    "enum": [
                                                      "NONE"
                                                    ]
                                                  }
                                                ]
                                              },
                                              "options": {
                                                "type": "object",
                                                "additionalProperties": false
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "type"
                                            ]
                                          },
                                          {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "enum": [
                                                  "TIMEATVALUE"
                                                ]
                                              },
                                              "options": {
                                                "type": "object",
                                                "properties": {
                                                  "value": {
                                                    "oneOf": [
                                                      {
                                                        "type": "string",
                                                        "maxLength": 255
                                                      },
                                                      {
                                                        "type": "number"
                                                      },
                                                      {
                                                        "type": "boolean"
                                                      }
                                                    ]
                                                  }
                                                },
                                                "additionalProperties": false,
                                                "required": [
                                                  "value"
                                                ]
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "type",
                                              "options"
                                            ]
                                          }
                                        ]
                                      },
                                      "deviceIds": {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "deviceTags": {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "object",
                                          "properties": {
                                            "key": {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            "value": {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            "fromCtx": {
                                              "type": "string",
                                              "maxLength": 255
                                            }
                                          },
                                          "additionalProperties": false
                                        }
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "defaultValue": {
                                    "type": "boolean"
                                  },
                                  "includeLabel": {
                                    "type": "boolean"
                                  }
                                },
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "text"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "templateId": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 512
                                  },
                                  "grid": {
                                    "type": "object",
                                    "properties": {
                                      "h": {
                                        "type": "number"
                                      },
                                      "w": {
                                        "type": "number"
                                      },
                                      "x": {
                                        "type": "number"
                                      },
                                      "y": {
                                        "type": "number"
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "defaultQuery": {
                                    "type": "object",
                                    "properties": {
                                      "attribute": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "aggregation": {
                                        "oneOf": [
                                          {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "FIRST",
                                                  "LAST",
                                                  "COUNT",
                                                  "MAX",
                                                  "MIN",
                                                  "MEDIAN",
                                                  "MEAN",
                                                  "SUM",
                                                  "STD_DEV"
                                                ]
                                              },
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "NONE"
                                                ]
                                              }
                                            ]
                                          },
                                          {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "oneOf": [
                                                  {
                                                    "type": "string",
                                                    "enum": [
                                                      "FIRST",
                                                      "LAST",
                                                      "COUNT",
                                                      "MAX",
                                                      "MIN",
                                                      "MEDIAN",
                                                      "MEAN",
                                                      "SUM",
                                                      "STD_DEV"
                                                    ]
                                                  },
                                                  {
                                                    "type": "string",
                                                    "enum": [
                                                      "NONE"
                                                    ]
                                                  }
                                                ]
                                              },
                                              "options": {
                                                "type": "object",
                                                "additionalProperties": false
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "type"
                                            ]
                                          },
                                          {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "enum": [
                                                  "TIMEATVALUE"
                                                ]
                                              },
                                              "options": {
                                                "type": "object",
                                                "properties": {
                                                  "value": {
                                                    "oneOf": [
                                                      {
                                                        "type": "string",
                                                        "maxLength": 255
                                                      },
                                                      {
                                                        "type": "number"
                                                      },
                                                      {
                                                        "type": "boolean"
                                                      }
                                                    ]
                                                  }
                                                },
                                                "additionalProperties": false,
                                                "required": [
                                                  "value"
                                                ]
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "type",
                                              "options"
                                            ]
                                          }
                                        ]
                                      },
                                      "deviceIds": {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "deviceTags": {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "object",
                                          "properties": {
                                            "key": {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            "value": {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            "fromCtx": {
                                              "type": "string",
                                              "maxLength": 255
                                            }
                                          },
                                          "additionalProperties": false
                                        }
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "defaultValue": {
                                    "type": "string",
                                    "maxLength": 2048
                                  }
                                },
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "select"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "templateId": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 512
                                  },
                                  "grid": {
                                    "type": "object",
                                    "properties": {
                                      "h": {
                                        "type": "number"
                                      },
                                      "w": {
                                        "type": "number"
                                      },
                                      "x": {
                                        "type": "number"
                                      },
                                      "y": {
                                        "type": "number"
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "defaultQuery": {
                                    "type": "object",
                                    "properties": {
                                      "attribute": {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      "aggregation": {
                                        "oneOf": [
                                          {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "FIRST",
                                                  "LAST",
                                                  "COUNT",
                                                  "MAX",
                                                  "MIN",
                                                  "MEDIAN",
                                                  "MEAN",
                                                  "SUM",
                                                  "STD_DEV"
                                                ]
                                              },
                                              {
                                                "type": "string",
                                                "enum": [
                                                  "NONE"
                                                ]
                                              }
                                            ]
                                          },
                                          {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "oneOf": [
                                                  {
                                                    "type": "string",
                                                    "enum": [
                                                      "FIRST",
                                                      "LAST",
                                                      "COUNT",
                                                      "MAX",
                                                      "MIN",
                                                      "MEDIAN",
                                                      "MEAN",
                                                      "SUM",
                                                      "STD_DEV"
                                                    ]
                                                  },
                                                  {
                                                    "type": "string",
                                                    "enum": [
                                                      "NONE"
                                                    ]
                                                  }
                                                ]
                                              },
                                              "options": {
                                                "type": "object",
                                                "additionalProperties": false
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "type"
                                            ]
                                          },
                                          {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "enum": [
                                                  "TIMEATVALUE"
                                                ]
                                              },
                                              "options": {
                                                "type": "object",
                                                "properties": {
                                                  "value": {
                                                    "oneOf": [
                                                      {
                                                        "type": "string",
                                                        "maxLength": 255
                                                      },
                                                      {
                                                        "type": "number"
                                                      },
                                                      {
                                                        "type": "boolean"
                                                      }
                                                    ]
                                                  }
                                                },
                                                "additionalProperties": false,
                                                "required": [
                                                  "value"
                                                ]
                                              }
                                            },
                                            "additionalProperties": false,
                                            "required": [
                                              "type",
                                              "options"
                                            ]
                                          }
                                        ]
                                      },
                                      "deviceIds": {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "deviceTags": {
                                        "type": "array",
                                        "maxItems": 100,
                                        "items": {
                                          "type": "object",
                                          "properties": {
                                            "key": {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            "value": {
                                              "type": "string",
                                              "maxLength": 255
                                            },
                                            "fromCtx": {
                                              "type": "string",
                                              "maxLength": 255
                                            }
                                          },
                                          "additionalProperties": false
                                        }
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "defaultValue": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "options": {
                                    "type": "array",
                                    "maxItems": 500,
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "value": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "label": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "additionalProperties": false
                                    }
                                  }
                                },
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "help"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "templateId": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "grid": {
                                    "type": "object",
                                    "properties": {
                                      "h": {
                                        "type": "number"
                                      },
                                      "w": {
                                        "type": "number"
                                      },
                                      "x": {
                                        "type": "number"
                                      },
                                      "y": {
                                        "type": "number"
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "help": {
                                    "type": "string",
                                    "maxLength": 32767
                                  }
                                },
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "button"
                                    ]
                                  },
                                  "action": {
                                    "type": "string",
                                    "enum": [
                                      "workflow",
                                      "command"
                                    ]
                                  },
                                  "id": {
                                    "type": "string",
                                    "maxLength": 48
                                  },
                                  "templateId": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "label": {
                                    "type": "string",
                                    "maxLength": 512
                                  },
                                  "grid": {
                                    "type": "object",
                                    "properties": {
                                      "h": {
                                        "type": "number"
                                      },
                                      "w": {
                                        "type": "number"
                                      },
                                      "x": {
                                        "type": "number"
                                      },
                                      "y": {
                                        "type": "number"
                                      }
                                    },
                                    "additionalProperties": false
                                  },
                                  "color": {
                                    "type": "string",
                                    "maxLength": 64
                                  },
                                  "payload": {
                                    "type": "string",
                                    "maxLength": 32767
                                  },
                                  "buttonId": {
                                    "type": "string",
                                    "maxLength": 255
                                  },
                                  "workflowId": {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "maxLength": 255
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "deviceIds": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "string",
                                      "maxLength": 255
                                    }
                                  },
                                  "deviceTags": {
                                    "type": "array",
                                    "maxItems": 100,
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "key": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "value": {
                                          "type": "string",
                                          "maxLength": 255
                                        },
                                        "fromCtx": {
                                          "type": "string",
                                          "maxLength": 255
                                        }
                                      },
                                      "additionalProperties": false
                                    }
                                  },
                                  "commandName": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              }
                            ]
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "map"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "additionalAttributes": {
                          "oneOf": [
                            {
                              "type": "null"
                            },
                            {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            }
                          ]
                        },
                        "attribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "centerOnDataPoints": {
                          "type": "boolean"
                        },
                        "clusterPoints": {
                          "type": "boolean"
                        },
                        "compositeResult": {
                          "type": "boolean"
                        },
                        "defaultBearing": {
                          "type": "number"
                        },
                        "defaultCenter": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "defaultPitch": {
                          "type": "number"
                        },
                        "defaultZoom": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "endColor": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "iconTemplate": {
                          "type": "string",
                          "maxLength": 73727
                        },
                        "includeArrows": {
                          "type": "boolean"
                        },
                        "includeLines": {
                          "type": "boolean"
                        },
                        "locationTagKey": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            {
                              "type": "string",
                              "minLength": 4,
                              "maxLength": 255,
                              "pattern": ".*{{.+}}.*"
                            }
                          ]
                        },
                        "mapStyle": {
                          "type": "string",
                          "enum": [
                            "normal",
                            "satellite"
                          ]
                        },
                        "pinMode": {
                          "type": "string",
                          "enum": [
                            "simple",
                            "advanced"
                          ]
                        },
                        "popupTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "resizedPins": {
                          "type": "boolean"
                        },
                        "resolution": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "null"
                            },
                            {
                              "type": "string",
                              "maxLength": 255
                            }
                          ]
                        },
                        "startColor": {
                          "type": "string",
                          "maxLength": 64
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "open-event-indicator"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "allowUpdates": {
                          "type": "boolean"
                        },
                        "query": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "filter": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "pie"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "realTime": {
                          "type": "boolean"
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "percentFormat": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "valueFormat": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "segments": {
                          "type": "array",
                          "maxItems": 255,
                          "items": {
                            "type": "object",
                            "properties": {
                              "attribute": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "aggregation": {
                                "oneOf": [
                                  {
                                    "oneOf": [
                                      {
                                        "type": "string",
                                        "enum": [
                                          "FIRST",
                                          "LAST",
                                          "COUNT",
                                          "MAX",
                                          "MIN",
                                          "MEDIAN",
                                          "MEAN",
                                          "SUM",
                                          "STD_DEV"
                                        ]
                                      },
                                      {
                                        "type": "string",
                                        "enum": [
                                          "NONE"
                                        ]
                                      }
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "oneOf": [
                                          {
                                            "type": "string",
                                            "enum": [
                                              "FIRST",
                                              "LAST",
                                              "COUNT",
                                              "MAX",
                                              "MIN",
                                              "MEDIAN",
                                              "MEAN",
                                              "SUM",
                                              "STD_DEV"
                                            ]
                                          },
                                          {
                                            "type": "string",
                                            "enum": [
                                              "NONE"
                                            ]
                                          }
                                        ]
                                      },
                                      "options": {
                                        "type": "object",
                                        "additionalProperties": false
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "type"
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "enum": [
                                          "TIMEATVALUE"
                                        ]
                                      },
                                      "options": {
                                        "type": "object",
                                        "properties": {
                                          "value": {
                                            "oneOf": [
                                              {
                                                "type": "string",
                                                "maxLength": 255
                                              },
                                              {
                                                "type": "number"
                                              },
                                              {
                                                "type": "boolean"
                                              }
                                            ]
                                          }
                                        },
                                        "additionalProperties": false,
                                        "required": [
                                          "value"
                                        ]
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "type",
                                      "options"
                                    ]
                                  }
                                ]
                              },
                              "color": {
                                "type": "string",
                                "maxLength": 64
                              },
                              "deviceIds": {
                                "type": "array",
                                "maxItems": 100,
                                "items": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "deviceTags": {
                                "type": "array",
                                "maxItems": 100,
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "key": {
                                      "type": "string",
                                      "maxLength": 255
                                    },
                                    "value": {
                                      "type": "string",
                                      "maxLength": 255
                                    },
                                    "fromCtx": {
                                      "type": "string",
                                      "maxLength": 255
                                    }
                                  },
                                  "additionalProperties": false
                                }
                              },
                              "label": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "expression": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "yAxisLabel": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "lineWeight": {
                                "type": "integer",
                                "minimum": 0,
                                "maximum": 5
                              },
                              "detectDataGaps": {
                                "type": "boolean"
                              },
                              "graphType": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "position-chart"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "additionalAttributes": {
                          "oneOf": [
                            {
                              "type": "null"
                            },
                            {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            }
                          ]
                        },
                        "centerOnDataPoints": {
                          "type": "boolean"
                        },
                        "compositeResult": {
                          "type": "boolean"
                        },
                        "coordinateA": {
                          "type": "string",
                          "minLength": 3,
                          "maxLength": 255
                        },
                        "coordinateB": {
                          "type": "string",
                          "minLength": 3,
                          "maxLength": 255
                        },
                        "defaultCenter": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "defaultZoom": {
                          "oneOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "maxLength": 128
                            }
                          ]
                        },
                        "disableZoom": {
                          "type": "boolean"
                        },
                        "deviceIds": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "deviceTags": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "value": {
                                "type": "string",
                                "maxLength": 255
                              },
                              "fromCtx": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          }
                        },
                        "duration": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "string",
                              "enum": [
                                "{{dashboard.duration}}"
                              ]
                            }
                          ]
                        },
                        "endColor": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "iconTemplate": {
                          "type": "string",
                          "maxLength": 73727
                        },
                        "imageUrl": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "includeArrows": {
                          "type": "boolean"
                        },
                        "includeLines": {
                          "type": "boolean"
                        },
                        "pinMode": {
                          "type": "string",
                          "enum": [
                            "simple",
                            "advanced"
                          ]
                        },
                        "pixelA": {
                          "type": "string",
                          "minLength": 3,
                          "maxLength": 255
                        },
                        "pixelB": {
                          "type": "string",
                          "minLength": 3,
                          "maxLength": 255
                        },
                        "popupTemplate": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "resizedPins": {
                          "type": "boolean"
                        },
                        "resolution": {
                          "oneOf": [
                            {
                              "type": "integer",
                              "minimum": 0
                            },
                            {
                              "type": "null"
                            },
                            {
                              "type": "string",
                              "maxLength": 255
                            }
                          ]
                        },
                        "startColor": {
                          "type": "string",
                          "maxLength": 64
                        },
                        "xAttribute": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "yAttribute": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "section-header"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "title": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "content": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "title": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "startX": {
                      "type": "number"
                    },
                    "startY": {
                      "type": "number"
                    },
                    "width": {
                      "type": "number"
                    },
                    "height": {
                      "type": "number"
                    },
                    "blockType": {
                      "type": "string",
                      "enum": [
                        "workflow-list"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "filter": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "includeCloud": {
                          "type": "boolean"
                        },
                        "includeEdge": {
                          "type": "boolean"
                        },
                        "includeEmbedded": {
                          "type": "boolean"
                        },
                        "includeExperience": {
                          "type": "boolean"
                        },
                        "experienceVersion": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "blockType",
                    "startX",
                    "startY",
                    "width",
                    "height"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "contextConfiguration": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceAttribute"
                      ]
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "defaultValue": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "validationEnabled": {
                      "type": "boolean"
                    },
                    "validationConfig": {
                      "type": "object",
                      "properties": {
                        "attributes": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "maxItems": 100
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "name",
                    "type",
                    "defaultValue"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceId"
                      ]
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "defaultValue": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "validationEnabled": {
                      "type": "boolean"
                    },
                    "validationConfig": {
                      "type": "object",
                      "properties": {
                        "deviceIds": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "pattern": "^[A-Fa-f\\d]{24}$"
                          },
                          "maxItems": 1000
                        },
                        "deviceTags": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          },
                          "maxItems": 100
                        },
                        "includeFullDevice": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "name",
                    "type",
                    "defaultValue"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceTag"
                      ]
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "defaultValue": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "validationEnabled": {
                      "type": "boolean"
                    },
                    "validationConfig": {
                      "type": "object",
                      "properties": {
                        "deviceTags": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          },
                          "maxItems": 100
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "name",
                    "type",
                    "defaultValue"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "number"
                      ]
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "defaultValue": {
                      "type": [
                        "number",
                        "string"
                      ]
                    },
                    "validationEnabled": {
                      "type": "boolean"
                    },
                    "validationConfig": {
                      "type": "object",
                      "properties": {
                        "min": {
                          "type": "number"
                        },
                        "max": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "name",
                    "type",
                    "defaultValue"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "string"
                      ]
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "defaultValue": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "validationEnabled": {
                      "type": "boolean"
                    },
                    "validationConfig": {
                      "type": "object",
                      "properties": {
                        "regExp": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "name",
                    "type",
                    "defaultValue"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "experienceUser"
                      ]
                    },
                    "applicationId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "defaultValue": {
                      "type": "string",
                      "maxLength": 32767
                    },
                    "validationEnabled": {
                      "type": "boolean"
                    },
                    "validationConfig": {
                      "type": "object",
                      "properties": {
                        "experienceGroupIds": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "pattern": "^[A-Fa-f\\d]{24}$"
                          },
                          "maxItems": 1000
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "name",
                    "type",
                    "defaultValue"
                  ],
                  "additionalProperties": false
                }
              ]
            },
            "maxItems": 100
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Dashboards Example

{
  "items": [
    {
      "id": "575ece2b7ae143cd83dc4a9b",
      "dashboardId": "575ece2b7ae143cd83dc4a9b",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "organizationName": "Example Org",
      "organizationIconColor": "#284fff",
      "ownerType": "organization",
      "ownerId": "58238ff2fe7b4b01009a0554",
      "name": "My Dashboard",
      "description": "The best dashboard description",
      "refreshRate": 60,
      "public": false,
      "isPasswordProtected": false,
      "defaultTheme": "light",
      "blocks": [],
      "duration": 600000,
      "resolution": 6000,
      "_currentRole": "admin",
      "reportConfigs": [
        {
          "toEmail": [
            "email@example.com"
          ],
          "cron": "0 0 12 * * TUE-THU",
          "theme": "dark",
          "subject": "Daily Dashboard Report"
        }
      ],
      "contextConfiguration": [
        {
          "validationEnabled": true,
          "validationConfig": {
            "deviceIds": [
              "589de9bca1975a00017b2293"
            ],
            "deviceTags": [
              {
                "key": "type",
                "value": "Weather Station"
              }
            ],
            "includeFullDevice": true
          },
          "name": "deviceId-withIdAndTagValidationAndIncludeFullDevice",
          "type": "deviceId",
          "applicationId": "589de7d2a1975a00017b227f",
          "defaultValue": "589de9bca1975a00017b2295"
        },
        {
          "validationEnabled": false,
          "validationConfig": {
            "includeFullDevice": false
          },
          "name": "deviceId-noValidationNoFullDevice",
          "type": "deviceId",
          "applicationId": "589de7d2a1975a00017b227f",
          "defaultValue": "589de9bca1975a00017b2295"
        },
        {
          "validationEnabled": true,
          "validationConfig": {
            "attributes": [
              "dew-point",
              "feels-like",
              "humidity",
              "location",
              "pressure",
              "temp",
              "visibility",
              "wind-speed"
            ]
          },
          "name": "attr",
          "type": "deviceAttribute",
          "applicationId": "589de7d2a1975a00017b227f",
          "defaultValue": "temp"
        },
        {
          "validationEnabled": true,
          "validationConfig": {
            "deviceTags": [
              {
                "key": "DeviceRecipe",
                "value": "Weather Station"
              },
              {
                "key": "region"
              }
            ]
          },
          "name": "deviceTag-withValidation",
          "type": "deviceTag",
          "applicationId": "589de7d2a1975a00017b227f",
          "defaultValue": {
            "key": "DeviceRecipe",
            "value": "Weather Station"
          }
        },
        {
          "validationEnabled": false,
          "validationConfig": {},
          "name": "deviceTag-noValidation",
          "type": "deviceTag",
          "applicationId": "589de7d2a1975a00017b227f",
          "defaultValue": {
            "key": "DeviceRecipe",
            "value": "Weather Station"
          }
        }
      ]
    }
  ],
  "count": 1,
  "totalCount": 5,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc"
}

Data Export

Schema for exporting data devices query

Data Export Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "deviceQuery": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "attributes": {
      "type": "array",
      "maxItems": 256,
      "items": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      }
    },
    "start": {
      "type": "number"
    },
    "end": {
      "type": "number"
    },
    "options": {
      "type": "object",
      "properties": {
        "includeDate": {
          "type": "boolean",
          "default": true
        },
        "includeID": {
          "type": "boolean",
          "default": true
        },
        "includeBlobData": {
          "type": "boolean",
          "default": false
        }
      }
    }
  },
  "additionalProperties": false
}

Data Export Example

{
  "email": "export@example.com",
  "deviceIds": [
    "575ecf887ae143cd83dc4aa2",
    "575ef5c97ae143cd83dc4aac"
  ],
  "attributes": [
    "voltage"
  ],
  "end": 0,
  "options": {
    "includeDate": false,
    "includeID": true
  }
}

Data Table

Schema for a single Data Table

Data Table Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "dataTableId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "columns": {
      "type": "array",
      "items": {
        "title": "Data Table Column",
        "description": "Schema for a single Data Table Column",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "dataType": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "boolean"
            ]
          },
          "constraint": {
            "type": "string",
            "enum": [
              "unique",
              "required",
              "optional"
            ]
          },
          "defaultValue": {
            "type": [
              "string",
              "number",
              "boolean"
            ]
          }
        },
        "required": [
          "name",
          "dataType",
          "constraint"
        ],
        "additionalProperties": false
      },
      "maxItems": 50
    }
  }
}

Data Table Example

{
  "id": "596e6ce831761df4231708f1",
  "dataTableId": "596e6ce831761df4231708f1",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "My Data Table",
  "columns": [
    {
      "name": "myColumn1",
      "dataType": "string",
      "constraint": "unique"
    },
    {
      "name": "myColumn2",
      "dataType": "number",
      "constraint": "optional"
    }
  ]
}

Data Table Column

Schema for a single Data Table Column

Data Table Column Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
    },
    "dataType": {
      "type": "string",
      "enum": [
        "string",
        "number",
        "boolean"
      ]
    },
    "constraint": {
      "type": "string",
      "enum": [
        "unique",
        "required",
        "optional"
      ]
    },
    "defaultValue": {
      "type": [
        "string",
        "number",
        "boolean"
      ]
    }
  },
  "required": [
    "name",
    "dataType",
    "constraint"
  ],
  "additionalProperties": false
}

Data Table Column Example

{
  "name": "myColumn3",
  "dataType": "string",
  "constraint": "optional",
  "defaultValue": "aDefault"
}

Data Table Patch

Schema for the body of a Data Table modification request

Data Table Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    }
  },
  "additionalProperties": false
}

Data Table Patch Example

{
  "name": "My Updated Data Table"
}

Data Table Post

Schema for the body of a Data Table creation request

Data Table Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "columns": {
      "type": "array",
      "items": {
        "title": "Data Table Column",
        "description": "Schema for a single Data Table Column",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "dataType": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "boolean"
            ]
          },
          "constraint": {
            "type": "string",
            "enum": [
              "unique",
              "required",
              "optional"
            ]
          },
          "defaultValue": {
            "type": [
              "string",
              "number",
              "boolean"
            ]
          }
        },
        "required": [
          "name",
          "dataType",
          "constraint"
        ],
        "additionalProperties": false
      },
      "maxItems": 50
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}

Data Table Post Example

{
  "name": "My Data Table",
  "columns": [
    {
      "name": "myColumn1",
      "dataType": "string",
      "constraint": "unique"
    },
    {
      "name": "myColumn2",
      "dataType": "number",
      "constraint": "optional"
    }
  ]
}

Data Table Row

Schema for a single Data Table Row

Data Table Row Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time"
    }
  },
  "patternProperties": {
    "^[0-9a-zA-Z_-]{1,255}$": {
      "type": [
        "string",
        "number",
        "boolean",
        "null"
      ]
    }
  }
}

Data Table Row Example

{
  "id": "596fbb703fc088453872e609",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "myColumn1": "myValue",
  "myColumn2": 5
}

Data Table Row Insert Multiple

Schema for inserting data table rows

Data Table Row Insert Multiple Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "title": "Data Table Row Insert Update",
    "description": "Schema for inserting or updating a data table row",
    "type": "object",
    "patternProperties": {
      "^[0-9a-zA-Z_-]{1,255}$": {
        "type": [
          "string",
          "number",
          "boolean",
          "null"
        ]
      }
    },
    "additionalProperties": false
  }
}

Data Table Row Insert Multiple Example

[
  {
    "myColumn1": "myValue"
  },
  {
    "myColumn1": "myValue"
  }
]

Data Table Row Insert

Schema for inserting a data table row or rows

Data Table Row Insert Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "oneOf": [
    {
      "title": "Data Table Row Insert Update",
      "description": "Schema for inserting or updating a data table row",
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        }
      },
      "additionalProperties": false
    },
    {
      "title": "Data Table Row Insert Multiple",
      "description": "Schema for inserting data table rows",
      "type": "array",
      "items": {
        "title": "Data Table Row Insert Update",
        "description": "Schema for inserting or updating a data table row",
        "type": "object",
        "patternProperties": {
          "^[0-9a-zA-Z_-]{1,255}$": {
            "type": [
              "string",
              "number",
              "boolean",
              "null"
            ]
          }
        },
        "additionalProperties": false
      }
    }
  ]
}

Data Table Row Insert Example

{
  "myColumn1": "myValue"
}

Data Table Row Insert Result

Schema for a the result of a single or multiple row insert

Data Table Row Insert Result Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "oneOf": [
    {
      "title": "Data Table Row",
      "description": "Schema for a single Data Table Row",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "createdAt": {
          "type": "string",
          "format": "date-time"
        },
        "updatedAt": {
          "type": "string",
          "format": "date-time"
        }
      },
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": [
            "string",
            "number",
            "boolean",
            "null"
          ]
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "createdAt": {
          "type": "string",
          "format": "date-time"
        },
        "count": {
          "type": "number"
        },
        "rowIds": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "maxItems": 1000
        }
      },
      "additionalProperties": false
    }
  ]
}

Data Table Row Insert Result Example

{
  "id": "596fbb703fc088453872e609",
  "createdAt": "2016-06-13T04:00:00.000Z",
  "updatedAt": "2016-06-13T04:00:00.000Z",
  "myColumn1": "myValue",
  "myColumn2": 5
}

Data Table Row Insert Update

Schema for inserting or updating a data table row

Data Table Row Insert Update Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "patternProperties": {
    "^[0-9a-zA-Z_-]{1,255}$": {
      "type": [
        "string",
        "number",
        "boolean",
        "null"
      ]
    }
  },
  "additionalProperties": false
}

Data Table Row Insert Update Example

{
  "myColumn1": "myValue"
}

Data Table Rows

Schema for a collection of Data Table Rows

Data Table Rows Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Data Table Row",
        "description": "Schema for a single Data Table Row",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "patternProperties": {
          "^[0-9a-zA-Z_-]{1,255}$": {
            "type": [
              "string",
              "number",
              "boolean",
              "null"
            ]
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "limit": {
      "type": "integer"
    },
    "offset": {
      "type": "integer"
    },
    "sortColumn": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "dataTableId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "query": {
      "type": "object"
    }
  }
}

Data Table Rows Example

{
  "items": [
    {
      "id": "596fbb703fc088453872e609",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "myColumn1": "myValue",
      "myColumn2": 5
    }
  ],
  "count": 1,
  "totalCount": 4,
  "offset": 0,
  "limit": 1,
  "sortColumn": "myColumn1",
  "sortDirection": "asc",
  "dataTableId": "596e6ce831761df4231708f1",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Data Table Rows Delete

Schema for response to data table rows removal

Data Table Rows Delete Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "removed": {
      "type": "number"
    }
  }
}

Data Table Rows Delete Example

{
  "removed": 100
}

Data Table Rows Export

Schema for the body of a data table export

Data Table Rows Export Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "query": {
      "title": "Advanced Query",
      "description": "Schema for advanced filters and queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedQuery"
          },
          "maxItems": 100
        }
      },
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "queryOptions": {
      "type": "object",
      "properties": {
        "sortDirection": {
          "type": "string",
          "enum": [
            "asc",
            "desc",
            "ASC",
            "DESC",
            ""
          ]
        },
        "limit": {
          "type": "number"
        },
        "sortColumn": {
          "type": "string"
        },
        "offset": {
          "type": "number"
        }
      }
    }
  },
  "additionalProperties": false
}

Data Table Rows Export Example

{
  "email": "email@example.com",
  "query": {
    "$or": [
      {
        "myColumn1": {
          "$ne": "myValue"
        }
      },
      {
        "myColumn2": 5
      }
    ]
  },
  "queryOptions": {
    "limit": 10000
  }
}

Data Tables

Schema for a collection of Data Tables

Data Tables Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Data Table",
        "description": "Schema for a single Data Table",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "dataTableId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "columns": {
            "type": "array",
            "items": {
              "title": "Data Table Column",
              "description": "Schema for a single Data Table Column",
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "dataType": {
                  "type": "string",
                  "enum": [
                    "string",
                    "number",
                    "boolean"
                  ]
                },
                "constraint": {
                  "type": "string",
                  "enum": [
                    "unique",
                    "required",
                    "optional"
                  ]
                },
                "defaultValue": {
                  "type": [
                    "string",
                    "number",
                    "boolean"
                  ]
                }
              },
              "required": [
                "name",
                "dataType",
                "constraint"
              ],
              "additionalProperties": false
            },
            "maxItems": 50
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Data Tables Example

{
  "items": [
    {
      "id": "596e6ce831761df4231708f1",
      "dataTableId": "596e6ce831761df4231708f1",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Data Table",
      "columns": [
        {
          "name": "myColumn1",
          "dataType": "string",
          "constraint": "unique"
        },
        {
          "name": "myColumn2",
          "dataType": "number",
          "constraint": "optional"
        }
      ]
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Debug Exclude Node IDs

Schema for an array of node IDs to exclude from debug output

Debug Exclude Node IDs Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "maxItems": 50,
  "items": {
    "type": "string",
    "maxLength": 48,
    "minLength": 1
  }
}

Debug Exclude Node IDs Example

[
  "1MT01D98tc",
  "shr-4IClop"
]

Debug Levels

Schema for user debug levels

Debug Levels Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "maxItems": 6,
  "items": {
    "type": "string",
    "enum": [
      "all",
      "none",
      "verbose",
      "info",
      "warn",
      "error"
    ]
  }
}

Debug Levels Example

[
  "warn",
  "error"
]

Device

Schema for a single Device

Device Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "dataType": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "gps",
              "boolean",
              "blob"
            ]
          },
          "contentType": {
            "type": "string",
            "maxLength": 64
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "attributeTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "system": {
            "type": "object",
            "properties": {
              "aggregation": {
                "type": "string",
                "enum": [
                  "FIRST",
                  "LAST",
                  "COUNT",
                  "MAX",
                  "MIN",
                  "MEDIAN",
                  "MEAN",
                  "SUM",
                  "STD_DEV"
                ]
              },
              "aggregationOptions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false
                },
                "additionalProperties": false,
                "maxItems": 0
              },
              "childAttributes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "mode": {
                      "type": "string",
                      "enum": [
                        "all",
                        "whitelist",
                        "blacklist"
                      ]
                    },
                    "deviceIds": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      "maxItems": 1000
                    },
                    "deviceTags": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "name",
                    "mode"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 256
              }
            },
            "additionalProperties": false
          }
        },
        "required": [
          "name",
          "dataType"
        ],
        "additionalProperties": false
      },
      "maxItems": 256
    },
    "deviceClass": {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    "gatewayId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "edgeAgentVersion": {
      "type": "string",
      "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
    },
    "connectionInfo": {
      "type": "object",
      "properties": {
        "time": {
          "type": "string",
          "format": "date-time"
        },
        "connected": {
          "enum": [
            1,
            0,
            null
          ]
        }
      }
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "ancestorIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "systemInterval": {
      "type": "integer",
      "minimum": 5,
      "maximum": 3600
    },
    "keepDuplicates": {
      "type": "boolean"
    }
  }
}

Device Example

{
  "id": "575ecf887ae143cd83dc4aa2",
  "deviceId": "575ecf887ae143cd83dc4aa2",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "My Device",
  "description": "A device description",
  "tags": [
    {
      "key": "TagKey",
      "value": "TagValue"
    },
    {
      "key": "floor",
      "value": "8"
    }
  ],
  "attributes": [
    {
      "name": "voltage",
      "dataType": "number"
    }
  ],
  "parentId": "5d8a0da7ce2f3d37c205d0c5",
  "deviceClass": "standalone",
  "connectionInfo": {
    "time": "2016-06-14T08:15:00.000Z",
    "connected": 1
  }
}

Device Attribute Data Type Filter

Select one or multiple device attribute data types

Device Attribute Data Type Filter Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "oneOf": [
    {
      "type": "string",
      "enum": [
        "string",
        "number",
        "gps",
        "boolean",
        "blob"
      ]
    },
    {
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "string",
        "enum": [
          "string",
          "number",
          "gps",
          "boolean",
          "blob"
        ]
      }
    }
  ]
}

Device Attribute Data Type Filter Example

[
  "number",
  "blob"
]

Device Class Filter

Select one or multiple device classes

Device Class Filter Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "oneOf": [
    {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "standalone",
          "gateway",
          "peripheral",
          "floating",
          "edgeCompute",
          "system",
          "embedded"
        ]
      }
    }
  ]
}

Device Class Filter Example

[
  "standalone",
  "edgeCompute"
]

Device Command

Schema for a command for a single Device

Device Command Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "time": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "object",
          "properties": {
            "$date": {
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "$date"
          ]
        }
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "payload": {}
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}

Device Command Example

{
  "time": "2016-06-13T04:00:00.000Z",
  "name": "myCommand",
  "payload": [
    1,
    1,
    2,
    3,
    5
  ]
}

Device Commands

Schema for an array of Device Commands

Device Commands Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "title": "Device Command",
    "description": "Schema for a command for a single Device",
    "type": "object",
    "properties": {
      "time": {
        "oneOf": [
          {
            "type": "string"
          },
          {
            "type": "number"
          },
          {
            "type": "object",
            "properties": {
              "$date": {
                "type": "string"
              }
            },
            "additionalProperties": false,
            "required": [
              "$date"
            ]
          }
        ]
      },
      "name": {
        "type": "string",
        "minLength": 1,
        "maxLength": 255
      },
      "payload": {}
    },
    "required": [
      "name"
    ],
    "additionalProperties": false
  }
}

Device Commands Example

[
  {
    "time": "2016-06-13T04:00:00.000Z",
    "name": "myCommand",
    "payload": [
      1,
      1,
      2,
      3,
      5
    ]
  },
  {
    "time": "2016-06-13T04:00:00.000Z",
    "name": "myCommand",
    "payload": [
      1,
      1,
      2,
      3,
      5
    ]
  }
]

Device Connection Status

Schema for the body of a request to set a device’s connection status

Device Connection Status Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "oneOf": [
    {
      "title": "Device Connected",
      "description": "Schema for marking a device as connected",
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "connected"
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "number"
            },
            {
              "type": "object",
              "properties": {
                "$date": {
                  "type": "string"
                }
              },
              "additionalProperties": false,
              "required": [
                "$date"
              ]
            }
          ]
        },
        "ipAddress": {
          "type": "string",
          "minLength": 2,
          "maxLength": 39
        }
      },
      "required": [
        "status"
      ],
      "additionalProperties": false
    },
    {
      "title": "Device Disconnected",
      "description": "Schema for marking a device as disconnected",
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "disconnected"
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "number"
            },
            {
              "type": "object",
              "properties": {
                "$date": {
                  "type": "string"
                }
              },
              "additionalProperties": false,
              "required": [
                "$date"
              ]
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "number"
            },
            {
              "type": "object",
              "properties": {
                "$date": {
                  "type": "string"
                }
              },
              "additionalProperties": false,
              "required": [
                "$date"
              ]
            }
          ]
        },
        "disconnectReason": {
          "type": "string",
          "maxLength": 1024
        },
        "messagesFromClient": {
          "type": "integer",
          "minimum": 0,
          "maximum": 2147483647
        },
        "messagesToClient": {
          "type": "integer",
          "minimum": 0,
          "maximum": 2147483647
        },
        "ipAddress": {
          "type": "string",
          "minLength": 2,
          "maxLength": 39
        }
      },
      "required": [
        "status"
      ],
      "additionalProperties": false
    }
  ]
}

Device Connection Status Example

{
  "status": "connected"
}

Device Counts

Schema for the result of a device counts request

Device Counts Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "start": {
      "type": "string",
      "format": "date-time"
    },
    "end": {
      "type": "string",
      "format": "date-time"
    },
    "counts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "created": {
            "type": "integer"
          },
          "deleted": {
            "type": "integer"
          },
          "total": {
            "type": "integer"
          }
        }
      }
    }
  }
}

Device Counts Example

{
  "start": "1999-05-20T05:00:00.000Z",
  "end": "1999-06-20T04:59:59.999Z",
  "counts": [
    {
      "created": 4,
      "deleted": 1,
      "date": "1999-06-20T00:00:00.000Z",
      "total": 17
    }
  ]
}

Device Credentials

Schema for the body of a device authentication request

Device Credentials Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "key": {
      "type": "string"
    },
    "secret": {
      "type": "string"
    },
    "tokenTTL": {
      "type": "integer",
      "minimum": 0
    },
    "requestedScopes": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "type": "string",
        "enum": [
          "all.Device",
          "all.Device.read",
          "data.export",
          "data.timeSeriesQuery",
          "data.lastValueQuery",
          "device.commandStream",
          "device.get",
          "device.getCompositeState",
          "device.getState",
          "device.stateStream",
          "device.getLogEntries",
          "device.getCommand",
          "device.debug",
          "device.sendState",
          "device.sendCommand",
          "device.setConnectionStatus",
          "devices.get",
          "devices.getCompositeState",
          "devices.sendCommand"
        ]
      }
    }
  },
  "required": [
    "deviceId"
  ],
  "additionalProperties": false
}

Device Credentials Example

{
  "deviceId": "575ecf887ae143cd83dc4aa2",
  "key": "this_would_be_the_key",
  "secret": "this_would_be_the_secret"
}

Device Log

Log of connection information for a Device

Device Log Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "connected": {
        "enum": [
          1,
          0
        ]
      },
      "time": {
        "type": "string",
        "format": "date-time"
      },
      "disconnectReason": {
        "type": "string"
      },
      "messagesFromClient": {
        "type": "number"
      },
      "messagesToClient": {
        "type": "number"
      },
      "ipAddress": {
        "type": "string"
      }
    }
  }
}

Device Log Example

[
  {
    "connected": 1,
    "time": "2016-06-03T00:56:22.447Z"
  },
  {
    "connected": 0,
    "disconnectReason": "Connection Lost",
    "messagesFromClient": 2548,
    "messagesToClient": 0,
    "time": "2016-06-03T00:56:21.028Z"
  },
  {
    "connected": 1,
    "time": "2016-06-01T06:24:39.190Z"
  },
  {
    "connected": 0,
    "disconnectReason": "Connection Lost",
    "messagesFromClient": 479,
    "messagesToClient": 0,
    "time": "2016-06-01T06:24:37.925Z"
  },
  {
    "connected": 1,
    "time": "2016-05-31T22:24:48.777Z"
  }
]

Device Names Response

Schema for a list of device names

Device Names Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "deviceSummary": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "deviceClass": {
            "type": "string",
            "enum": [
              "standalone",
              "gateway",
              "peripheral",
              "floating",
              "edgeCompute",
              "system",
              "embedded"
            ]
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        }
      },
      "maxItems": 1000
    }
  }
}

Device Names Response Example

{
  "deviceSummary": [
    {
      "name": "My Device",
      "id": "575ecf887ae143cd83dc4aa2",
      "deviceClass": "standalone"
    }
  ]
}

Device Patch

Schema for the body of a Device modification request

Device Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "dataType": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "gps",
              "boolean",
              "blob"
            ]
          },
          "contentType": {
            "type": "string",
            "maxLength": 64
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "attributeTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "system": {
            "type": "object",
            "properties": {
              "aggregation": {
                "type": "string",
                "enum": [
                  "FIRST",
                  "LAST",
                  "COUNT",
                  "MAX",
                  "MIN",
                  "MEDIAN",
                  "MEAN",
                  "SUM",
                  "STD_DEV"
                ]
              },
              "aggregationOptions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false
                },
                "additionalProperties": false,
                "maxItems": 0
              },
              "childAttributes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "mode": {
                      "type": "string",
                      "enum": [
                        "all",
                        "whitelist",
                        "blacklist"
                      ]
                    },
                    "deviceIds": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      "maxItems": 1000
                    },
                    "deviceTags": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "name",
                    "mode"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 256
              }
            },
            "additionalProperties": false
          }
        },
        "required": [
          "name",
          "dataType"
        ],
        "additionalProperties": false
      },
      "maxItems": 256
    },
    "deviceClass": {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    "gatewayId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "systemInterval": {
      "type": "integer",
      "minimum": 5,
      "maximum": 3600
    },
    "keepDuplicates": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

Device Patch Example

{
  "name": "My Updated Device",
  "description": "Description of my updated device",
  "tags": [
    {
      "key": "TagKey",
      "value": "TagValue"
    }
  ],
  "attributes": [
    {
      "name": "voltage",
      "dataType": "number"
    }
  ],
  "deviceClass": "standalone"
}

Device Payload Counts

Schema for the result of a device payload count request

Device Payload Counts Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "deviceCommand": {
      "type": "number"
    },
    "deviceConnect": {
      "type": "number"
    },
    "deviceDisconnect": {
      "type": "number"
    },
    "deviceState": {
      "type": "number"
    },
    "mqttIn": {
      "type": "number"
    },
    "mqttOut": {
      "type": "number"
    }
  }
}

Device Payload Counts Example

{
  "deviceState": 1244049,
  "mqttOut": 12,
  "deviceConnect": 1016,
  "deviceDisconnect": 1016
}

Device Post

Schema for the body of a Device creation request

Device Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "dataType": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "gps",
              "boolean",
              "blob"
            ]
          },
          "contentType": {
            "type": "string",
            "maxLength": 64
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "attributeTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "system": {
            "type": "object",
            "properties": {
              "aggregation": {
                "type": "string",
                "enum": [
                  "FIRST",
                  "LAST",
                  "COUNT",
                  "MAX",
                  "MIN",
                  "MEDIAN",
                  "MEAN",
                  "SUM",
                  "STD_DEV"
                ]
              },
              "aggregationOptions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false
                },
                "additionalProperties": false,
                "maxItems": 0
              },
              "childAttributes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "mode": {
                      "type": "string",
                      "enum": [
                        "all",
                        "whitelist",
                        "blacklist"
                      ]
                    },
                    "deviceIds": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      "maxItems": 1000
                    },
                    "deviceTags": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "name",
                    "mode"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 256
              }
            },
            "additionalProperties": false
          }
        },
        "required": [
          "name",
          "dataType"
        ],
        "additionalProperties": false
      },
      "maxItems": 256
    },
    "deviceClass": {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    "gatewayId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "systemInterval": {
      "type": "integer",
      "minimum": 5,
      "maximum": 3600
    },
    "keepDuplicates": {
      "type": "boolean"
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Device Post Example

{
  "name": "My New Device",
  "description": "Description of my new device",
  "tags": [
    {
      "key": "TagKey",
      "value": "TagValue"
    }
  ],
  "attributes": [
    {
      "name": "voltage",
      "dataType": "number"
    }
  ],
  "deviceClass": "standalone"
}

Device Recipe

Schema for a single Device Recipe

Device Recipe Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceRecipeId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "deviceName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "deviceDescription": {
      "type": "string",
      "maxLength": 32767
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "dataType": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "gps",
              "boolean",
              "blob"
            ]
          },
          "contentType": {
            "type": "string",
            "maxLength": 64
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "attributeTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "system": {
            "type": "object",
            "properties": {
              "aggregation": {
                "type": "string",
                "enum": [
                  "FIRST",
                  "LAST",
                  "COUNT",
                  "MAX",
                  "MIN",
                  "MEDIAN",
                  "MEAN",
                  "SUM",
                  "STD_DEV"
                ]
              },
              "aggregationOptions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false
                },
                "additionalProperties": false,
                "maxItems": 0
              },
              "childAttributes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "mode": {
                      "type": "string",
                      "enum": [
                        "all",
                        "whitelist",
                        "blacklist"
                      ]
                    },
                    "deviceIds": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      "maxItems": 1000
                    },
                    "deviceTags": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "name",
                    "mode"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 256
              }
            },
            "additionalProperties": false
          }
        },
        "required": [
          "name",
          "dataType"
        ],
        "additionalProperties": false
      },
      "maxItems": 256
    },
    "deviceClass": {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    "gatewayId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "systemInterval": {
      "type": "integer",
      "minimum": 5,
      "maximum": 3600
    },
    "keepDuplicates": {
      "type": "boolean"
    }
  }
}

Device Recipe Example

{
  "id": "575ecec57ae143cd83dc4a9f",
  "deviceRecipeId": "575ecec57ae143cd83dc4a9f",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "Actual recipe name",
  "deviceName": "Future device name",
  "description": "My recipe description",
  "deviceDescription": "Future device description",
  "tags": [
    {
      "key": "TagKey",
      "value": "TagValue"
    }
  ],
  "attributes": [
    {
      "name": "voltage",
      "dataType": "number"
    }
  ],
  "deviceClass": "standalone"
}

Device Recipe Bulk Create

Schema for the result of a bulk Device creation request

Device Recipe Bulk Create Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "created": {
      "type": "number"
    },
    "failed": {
      "type": "number"
    },
    "csvResult": {
      "type": "string"
    }
  }
}

Device Recipe Bulk Create Example

{
  "created": 10,
  "failed": 0,
  "csvResult": "a,comma,separated,string,of,results"
}

Device Recipe Bulk Create Post

Schema for the body of a bulk Device creation request

Device Recipe Bulk Create Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "csv": {
      "type": "string"
    },
    "count": {
      "type": "integer"
    },
    "nameColumn": {
      "type": "string",
      "maxLength": 255
    },
    "descriptionColumn": {
      "type": "string",
      "maxLength": 255
    },
    "gatewayIdColumn": {
      "type": "string",
      "maxLength": 255
    },
    "parentIdColumn": {
      "type": "string",
      "maxLength": 255
    },
    "makeUniqueKeySecret": {
      "type": "boolean"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "gatewayId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "additionalProperties": false
}

Device Recipe Bulk Create Post Example

{
  "nameColumn": "myNameColumn",
  "descriptionColumn": "column2",
  "csv": "a,comma,separated,string,of,input,data"
}

Device Recipe Patch

Schema for the body of a Device Recipe modification request

Device Recipe Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "deviceName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "deviceDescription": {
      "type": "string",
      "maxLength": 32767
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "dataType": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "gps",
              "boolean",
              "blob"
            ]
          },
          "contentType": {
            "type": "string",
            "maxLength": 64
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "attributeTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "system": {
            "type": "object",
            "properties": {
              "aggregation": {
                "type": "string",
                "enum": [
                  "FIRST",
                  "LAST",
                  "COUNT",
                  "MAX",
                  "MIN",
                  "MEDIAN",
                  "MEAN",
                  "SUM",
                  "STD_DEV"
                ]
              },
              "aggregationOptions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false
                },
                "additionalProperties": false,
                "maxItems": 0
              },
              "childAttributes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "mode": {
                      "type": "string",
                      "enum": [
                        "all",
                        "whitelist",
                        "blacklist"
                      ]
                    },
                    "deviceIds": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      "maxItems": 1000
                    },
                    "deviceTags": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "name",
                    "mode"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 256
              }
            },
            "additionalProperties": false
          }
        },
        "required": [
          "name",
          "dataType"
        ],
        "additionalProperties": false
      },
      "maxItems": 256
    },
    "deviceClass": {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    "gatewayId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "systemInterval": {
      "type": "integer",
      "minimum": 5,
      "maximum": 3600
    },
    "keepDuplicates": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

Device Recipe Patch Example

{
  "name": "My Updated Device Recipe",
  "deviceName": "Future device name",
  "description": "Description of my updated device recipe",
  "deviceDescription": "Future device description",
  "tags": [
    {
      "key": "TagKey",
      "value": "TagValue"
    }
  ],
  "attributes": [
    {
      "name": "voltage",
      "dataType": "number"
    }
  ],
  "deviceClass": "standalone"
}

Device Recipe Post

Schema for the body of a Device Recipe creation request

Device Recipe Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "deviceName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "deviceDescription": {
      "type": "string",
      "maxLength": 32767
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "dataType": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "gps",
              "boolean",
              "blob"
            ]
          },
          "contentType": {
            "type": "string",
            "maxLength": 64
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "attributeTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "system": {
            "type": "object",
            "properties": {
              "aggregation": {
                "type": "string",
                "enum": [
                  "FIRST",
                  "LAST",
                  "COUNT",
                  "MAX",
                  "MIN",
                  "MEDIAN",
                  "MEAN",
                  "SUM",
                  "STD_DEV"
                ]
              },
              "aggregationOptions": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false
                },
                "additionalProperties": false,
                "maxItems": 0
              },
              "childAttributes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "mode": {
                      "type": "string",
                      "enum": [
                        "all",
                        "whitelist",
                        "blacklist"
                      ]
                    },
                    "deviceIds": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      "maxItems": 1000
                    },
                    "deviceTags": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "name",
                    "mode"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 256
              }
            },
            "additionalProperties": false
          }
        },
        "required": [
          "name",
          "dataType"
        ],
        "additionalProperties": false
      },
      "maxItems": 256
    },
    "deviceClass": {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    "gatewayId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "systemInterval": {
      "type": "integer",
      "minimum": 5,
      "maximum": 3600
    },
    "keepDuplicates": {
      "type": "boolean"
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Device Recipe Post Example

{
  "name": "My New Device Recipe",
  "deviceName": "Future device name",
  "description": "Description of my new device recipe",
  "deviceDescription": "Future device description",
  "tags": [
    {
      "key": "TagKey",
      "value": "TagValue"
    }
  ],
  "attributes": [
    {
      "name": "voltage",
      "dataType": "number"
    }
  ],
  "deviceClass": "standalone"
}

Device Recipes

Schema for a collection of Device Recipes

Device Recipes Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Device Recipe",
        "description": "Schema for a single Device Recipe",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "deviceRecipeId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "deviceName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "deviceDescription": {
            "type": "string",
            "maxLength": 32767
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "value": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "required": [
                "key",
                "value"
              ],
              "additionalProperties": false
            },
            "maxItems": 100
          },
          "attributes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "dataType": {
                  "type": "string",
                  "enum": [
                    "string",
                    "number",
                    "gps",
                    "boolean",
                    "blob"
                  ]
                },
                "contentType": {
                  "type": "string",
                  "maxLength": 64
                },
                "description": {
                  "type": "string",
                  "maxLength": 32767
                },
                "attributeTags": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                },
                "system": {
                  "type": "object",
                  "properties": {
                    "aggregation": {
                      "type": "string",
                      "enum": [
                        "FIRST",
                        "LAST",
                        "COUNT",
                        "MAX",
                        "MIN",
                        "MEDIAN",
                        "MEAN",
                        "SUM",
                        "STD_DEV"
                      ]
                    },
                    "aggregationOptions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false
                      },
                      "additionalProperties": false,
                      "maxItems": 0
                    },
                    "childAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "mode": {
                            "type": "string",
                            "enum": [
                              "all",
                              "whitelist",
                              "blacklist"
                            ]
                          },
                          "deviceIds": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            "maxItems": 1000
                          },
                          "deviceTags": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                },
                                "value": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "maxItems": 100
                          }
                        },
                        "required": [
                          "name",
                          "mode"
                        ],
                        "additionalProperties": false
                      },
                      "maxItems": 256
                    }
                  },
                  "additionalProperties": false
                }
              },
              "required": [
                "name",
                "dataType"
              ],
              "additionalProperties": false
            },
            "maxItems": 256
          },
          "deviceClass": {
            "type": "string",
            "enum": [
              "standalone",
              "gateway",
              "peripheral",
              "floating",
              "edgeCompute",
              "system",
              "embedded"
            ]
          },
          "gatewayId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "parentId": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "systemInterval": {
            "type": "integer",
            "minimum": 5,
            "maximum": 3600
          },
          "keepDuplicates": {
            "type": "boolean"
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Device Recipes Example

{
  "items": [
    {
      "id": "575ecec57ae143cd83dc4a9f",
      "deviceRecipeId": "575ecec57ae143cd83dc4a9f",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "Actual recipe name",
      "deviceName": "Future device name",
      "description": "My recipe description",
      "deviceDescription": "Future device description",
      "tags": [
        {
          "key": "TagKey",
          "value": "TagValue"
        }
      ],
      "attributes": [
        {
          "name": "voltage",
          "dataType": "number"
        }
      ],
      "deviceClass": "standalone"
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Device State

Schema for a single Device state

Device State Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "time": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "object",
          "properties": {
            "$date": {
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "$date"
          ]
        }
      ]
    },
    "meta": {},
    "data": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": [
            "number",
            "string",
            "boolean"
          ]
        }
      },
      "additionalProperties": false
    },
    "flowVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}

Device State Example

{
  "time": "2016-06-13T04:00:00.000Z",
  "data": {
    "voltage": 22.4
  }
}

Device State or States

Schema for a single device state or an array of device states

Device State or States Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "oneOf": [
    {
      "title": "Device State",
      "description": "Schema for a single Device state",
      "type": "object",
      "properties": {
        "time": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "number"
            },
            {
              "type": "object",
              "properties": {
                "$date": {
                  "type": "string"
                }
              },
              "additionalProperties": false,
              "required": [
                "$date"
              ]
            }
          ]
        },
        "meta": {},
        "data": {
          "type": "object",
          "patternProperties": {
            "^[0-9a-zA-Z_-]{1,255}$": {
              "type": [
                "number",
                "string",
                "boolean"
              ]
            }
          },
          "additionalProperties": false
        },
        "flowVersion": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "required": [
        "data"
      ],
      "additionalProperties": false
    },
    {
      "title": "Device States",
      "description": "Schema for an array of Device states",
      "type": "array",
      "items": {
        "title": "Device State",
        "description": "Schema for a single Device state",
        "type": "object",
        "properties": {
          "time": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "object",
                "properties": {
                  "$date": {
                    "type": "string"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "$date"
                ]
              }
            ]
          },
          "meta": {},
          "data": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": [
                  "number",
                  "string",
                  "boolean"
                ]
              }
            },
            "additionalProperties": false
          },
          "flowVersion": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "data"
        ],
        "additionalProperties": false
      }
    }
  ]
}

Device State or States Example

{
  "time": "2016-06-13T04:00:00.000Z",
  "data": {
    "voltage": 22.4
  }
}

Device States

Schema for an array of Device states

Device States Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "title": "Device State",
    "description": "Schema for a single Device state",
    "type": "object",
    "properties": {
      "time": {
        "oneOf": [
          {
            "type": "string"
          },
          {
            "type": "number"
          },
          {
            "type": "object",
            "properties": {
              "$date": {
                "type": "string"
              }
            },
            "additionalProperties": false,
            "required": [
              "$date"
            ]
          }
        ]
      },
      "meta": {},
      "data": {
        "type": "object",
        "patternProperties": {
          "^[0-9a-zA-Z_-]{1,255}$": {
            "type": [
              "number",
              "string",
              "boolean"
            ]
          }
        },
        "additionalProperties": false
      },
      "flowVersion": {
        "type": "string",
        "minLength": 1,
        "maxLength": 255
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
}

Device States Example

[
  {
    "time": "2016-06-13T04:00:00.000Z",
    "data": {
      "voltage": 22.4
    }
  },
  {
    "time": "2016-06-13T04:00:00.000Z",
    "data": {
      "voltage": 22.4
    }
  }
]

Device Tag Filter

Array of Tags for filtering devices. Tag keys and tag values are optional.

Device Tag Filter Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "key": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      },
      "value": {
        "type": "string",
        "minLength": 1,
        "maxLength": 255
      }
    },
    "additionalProperties": false
  },
  "maxItems": 100
}

Device Tag Filter Example

[
  {
    "key": "Floor",
    "value": "2"
  },
  {
    "key": "Serial"
  }
]

Devices

Schema for a collection of Devices

Devices Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Device",
        "description": "Schema for a single Device",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "deviceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "value": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "required": [
                "key",
                "value"
              ],
              "additionalProperties": false
            },
            "maxItems": 100
          },
          "attributes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "dataType": {
                  "type": "string",
                  "enum": [
                    "string",
                    "number",
                    "gps",
                    "boolean",
                    "blob"
                  ]
                },
                "contentType": {
                  "type": "string",
                  "maxLength": 64
                },
                "description": {
                  "type": "string",
                  "maxLength": 32767
                },
                "attributeTags": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                },
                "system": {
                  "type": "object",
                  "properties": {
                    "aggregation": {
                      "type": "string",
                      "enum": [
                        "FIRST",
                        "LAST",
                        "COUNT",
                        "MAX",
                        "MIN",
                        "MEDIAN",
                        "MEAN",
                        "SUM",
                        "STD_DEV"
                      ]
                    },
                    "aggregationOptions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false
                      },
                      "additionalProperties": false,
                      "maxItems": 0
                    },
                    "childAttributes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          },
                          "mode": {
                            "type": "string",
                            "enum": [
                              "all",
                              "whitelist",
                              "blacklist"
                            ]
                          },
                          "deviceIds": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            "maxItems": 1000
                          },
                          "deviceTags": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                },
                                "value": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "maxItems": 100
                          }
                        },
                        "required": [
                          "name",
                          "mode"
                        ],
                        "additionalProperties": false
                      },
                      "maxItems": 256
                    }
                  },
                  "additionalProperties": false
                }
              },
              "required": [
                "name",
                "dataType"
              ],
              "additionalProperties": false
            },
            "maxItems": 256
          },
          "deviceClass": {
            "type": "string",
            "enum": [
              "standalone",
              "gateway",
              "peripheral",
              "floating",
              "edgeCompute",
              "system",
              "embedded"
            ]
          },
          "gatewayId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "edgeAgentVersion": {
            "type": "string",
            "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
          },
          "connectionInfo": {
            "type": "object",
            "properties": {
              "time": {
                "type": "string",
                "format": "date-time"
              },
              "connected": {
                "enum": [
                  1,
                  0,
                  null
                ]
              }
            }
          },
          "parentId": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "ancestorIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "systemInterval": {
            "type": "integer",
            "minimum": 5,
            "maximum": 3600
          },
          "keepDuplicates": {
            "type": "boolean"
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceClass": {
      "type": "string",
      "enum": [
        "standalone",
        "gateway",
        "peripheral",
        "floating",
        "edgeCompute",
        "system",
        "embedded"
      ]
    },
    "tagFilter": {
      "title": "Device Tag Filter",
      "description": "Array of Tags for filtering devices. Tag keys and tag values are optional.",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "query": {
      "type": "object"
    }
  }
}

Devices Example

{
  "items": [
    {
      "id": "575ecf887ae143cd83dc4aa2",
      "deviceId": "575ecf887ae143cd83dc4aa2",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Device",
      "description": "A device description",
      "tags": [
        {
          "key": "TagKey",
          "value": "TagValue"
        },
        {
          "key": "floor",
          "value": "8"
        }
      ],
      "attributes": [
        {
          "name": "voltage",
          "dataType": "number"
        }
      ],
      "parentId": "5d8a0da7ce2f3d37c205d0c5",
      "deviceClass": "standalone",
      "connectionInfo": {
        "time": "2016-06-14T08:15:00.000Z",
        "connected": 1
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Devices Data Removed

Schema for response to bulk device data removal

Devices Data Removed Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "completed": {
      "type": "number"
    },
    "notApplicable": {
      "type": "number"
    }
  }
}

Devices Data Removed Example

{
  "completed": 3,
  "skipped": 0
}

Devices Delete Post

Schema for the body of a bulk device delete request

Devices Delete Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "query": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    }
  },
  "additionalProperties": false,
  "required": [
    "query"
  ]
}

Devices Delete Post Example

{
  "query": {
    "name": {
      "$ne": "My Device"
    }
  },
  "email": "email@example.com"
}

Devices Payload Count Export Post

Schema for the body of a device payload count export request

Devices Payload Count Export Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "query": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "start": {
      "type": "number"
    },
    "end": {
      "type": "number"
    }
  },
  "additionalProperties": false
}

Devices Payload Count Export Post Example

{
  "query": {
    "name": {
      "$ne": "My Device"
    }
  },
  "email": "email@example.com"
}

Devices Metadata Export Post

Schema for the body of a device metadata export request

Devices Metadata Export Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "query": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

Devices Metadata Export Post Example

{
  "query": {
    "name": {
      "$ne": "My Device"
    }
  },
  "email": "email@example.com"
}

Devices Historical Import Post

Schema for the body of a device data historical import request

Devices Historical Import Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "fileUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    }
  },
  "required": [
    "fileUrl"
  ],
  "additionalProperties": false
}

Devices Historical Import Post Example

{
  "fileUrl": "https://example.com/my.csv",
  "email": "email@example.com"
}

Devices Patch

Schema for the body of a Devices modification request

Devices Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "updateFields": {
      "title": "Device Patch",
      "description": "Schema for the body of a Device modification request",
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "description": {
          "type": "string",
          "maxLength": 32767
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "value": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "required": [
              "key",
              "value"
            ],
            "additionalProperties": false
          },
          "maxItems": 100
        },
        "attributes": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "dataType": {
                "type": "string",
                "enum": [
                  "string",
                  "number",
                  "gps",
                  "boolean",
                  "blob"
                ]
              },
              "contentType": {
                "type": "string",
                "maxLength": 64
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "attributeTags": {
                "type": "object",
                "patternProperties": {
                  "^[0-9a-zA-Z_-]{1,255}$": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "system": {
                "type": "object",
                "properties": {
                  "aggregation": {
                    "type": "string",
                    "enum": [
                      "FIRST",
                      "LAST",
                      "COUNT",
                      "MAX",
                      "MIN",
                      "MEDIAN",
                      "MEAN",
                      "SUM",
                      "STD_DEV"
                    ]
                  },
                  "aggregationOptions": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "additionalProperties": false,
                    "maxItems": 0
                  },
                  "childAttributes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "mode": {
                          "type": "string",
                          "enum": [
                            "all",
                            "whitelist",
                            "blacklist"
                          ]
                        },
                        "deviceIds": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "pattern": "^[A-Fa-f\\d]{24}$"
                          },
                          "maxItems": 1000
                        },
                        "deviceTags": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "key": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 255
                              }
                            },
                            "additionalProperties": false
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "name",
                        "mode"
                      ],
                      "additionalProperties": false
                    },
                    "maxItems": 256
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "name",
              "dataType"
            ],
            "additionalProperties": false
          },
          "maxItems": 256
        },
        "deviceClass": {
          "type": "string",
          "enum": [
            "standalone",
            "gateway",
            "peripheral",
            "floating",
            "edgeCompute",
            "system",
            "embedded"
          ]
        },
        "gatewayId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "parentId": {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        "systemInterval": {
          "type": "integer",
          "minimum": 5,
          "maximum": 3600
        },
        "keepDuplicates": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "query": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "updateOperations": {
      "type": "array",
      "maxItems": 25,
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "name"
                ]
              },
              "value": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "deviceClass"
                ]
              },
              "value": {
                "type": "string",
                "enum": [
                  "standalone",
                  "gateway",
                  "peripheral",
                  "floating",
                  "edgeCompute",
                  "system",
                  "embedded"
                ]
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "description"
                ]
              },
              "value": {
                "type": "string",
                "maxLength": 32767
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "gatewayId",
                  "parentId"
                ]
              },
              "value": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "systemInterval"
                ]
              },
              "value": {
                "type": "integer",
                "minimum": 5,
                "maximum": 3600
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "keepDuplicates"
                ]
              },
              "value": {
                "type": "boolean"
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "tag"
                ]
              },
              "value": {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "required": [
                  "key",
                  "value"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "attributeTag"
                ]
              },
              "attributeName": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "value": {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "required": [
                  "key",
                  "value"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "operation",
              "target",
              "attributeName",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "set"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "attributeDescription"
                ]
              },
              "attributeName": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "value": {
                "type": "string",
                "maxLength": 32767
              }
            },
            "required": [
              "operation",
              "target",
              "attributeName",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "remove"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "description",
                  "parentId"
                ]
              }
            },
            "required": [
              "operation",
              "target"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "remove"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "tag"
                ]
              },
              "tagKey": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              }
            },
            "required": [
              "operation",
              "target",
              "tagKey"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "remove"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "attribute"
                ]
              },
              "attributeName": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              }
            },
            "required": [
              "operation",
              "target",
              "attributeName"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "remove"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "attributeTag"
                ]
              },
              "attributeName": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "tagKey": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              }
            },
            "required": [
              "operation",
              "target",
              "attributeName",
              "tagKey"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "remove"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "attributeDescription"
                ]
              },
              "attributeName": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              }
            },
            "required": [
              "operation",
              "target",
              "attributeName"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "add"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "attribute"
                ]
              },
              "value": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "dataType": {
                    "type": "string",
                    "enum": [
                      "string",
                      "number",
                      "gps",
                      "boolean",
                      "blob"
                    ]
                  },
                  "contentType": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "attributeTags": {
                    "type": "object",
                    "patternProperties": {
                      "^[0-9a-zA-Z_-]{1,255}$": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "system": {
                    "type": "object",
                    "properties": {
                      "aggregation": {
                        "type": "string",
                        "enum": [
                          "FIRST",
                          "LAST",
                          "COUNT",
                          "MAX",
                          "MIN",
                          "MEDIAN",
                          "MEAN",
                          "SUM",
                          "STD_DEV"
                        ]
                      },
                      "aggregationOptions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "additionalProperties": false,
                        "maxItems": 0
                      },
                      "childAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "name": {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            "mode": {
                              "type": "string",
                              "enum": [
                                "all",
                                "whitelist",
                                "blacklist"
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "pattern": "^[A-Fa-f\\d]{24}$"
                              },
                              "maxItems": 1000
                            },
                            "deviceTags": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  },
                                  "value": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "name",
                            "mode"
                          ],
                          "additionalProperties": false
                        },
                        "maxItems": 256
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "name",
                  "dataType"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "enum": [
                  "add"
                ]
              },
              "target": {
                "type": "string",
                "enum": [
                  "attributeSystem"
                ]
              },
              "value": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "dataType": {
                    "type": "string",
                    "enum": [
                      "string",
                      "number",
                      "gps",
                      "boolean",
                      "blob"
                    ]
                  },
                  "contentType": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "attributeTags": {
                    "type": "object",
                    "patternProperties": {
                      "^[0-9a-zA-Z_-]{1,255}$": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "system": {
                    "type": "object",
                    "properties": {
                      "aggregation": {
                        "type": "string",
                        "enum": [
                          "FIRST",
                          "LAST",
                          "COUNT",
                          "MAX",
                          "MIN",
                          "MEDIAN",
                          "MEAN",
                          "SUM",
                          "STD_DEV"
                        ]
                      },
                      "aggregationOptions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "additionalProperties": false,
                        "maxItems": 0
                      },
                      "childAttributes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "name": {
                              "type": "string",
                              "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                            },
                            "mode": {
                              "type": "string",
                              "enum": [
                                "all",
                                "whitelist",
                                "blacklist"
                              ]
                            },
                            "deviceIds": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "pattern": "^[A-Fa-f\\d]{24}$"
                              },
                              "maxItems": 1000
                            },
                            "deviceTags": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  },
                                  "value": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 255
                                  }
                                },
                                "additionalProperties": false
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "name",
                            "mode"
                          ],
                          "additionalProperties": false
                        },
                        "maxItems": 256
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "name",
                  "dataType"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "operation",
              "target",
              "value"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    }
  },
  "additionalProperties": false,
  "required": []
}

Devices Patch Example

{
  "updateFields": {
    "name": "My Updated Device",
    "description": "Description of my updated device",
    "tags": [
      {
        "key": "TagKey",
        "value": "TagValue"
      }
    ],
    "attributes": [
      {
        "name": "voltage",
        "dataType": "number"
      }
    ],
    "deviceClass": "standalone"
  },
  "deviceIds": [
    "575ecec57ae143cd83dc4a9f",
    "575ecec57ae143cd83dc4a9e",
    "575ecec57ae143cd83dc4a9a"
  ]
}

Devices Remove Data Post

Schema for the body of a bulk data removal request

Devices Remove Data Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "query": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "start": {
      "type": "number"
    },
    "end": {
      "type": "number"
    },
    "attributes": {
      "oneOf": [
        {
          "type": "null"
        },
        {
          "type": "array",
          "maxItems": 256,
          "items": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          }
        }
      ]
    },
    "keepConnectionHistory": {
      "type": "boolean"
    },
    "keepCommandHistory": {
      "type": "boolean"
    }
  },
  "additionalProperties": false,
  "required": [
    "query"
  ]
}

Devices Remove Data Post Example

{
  "query": {
    "name": {
      "$ne": "My Device"
    }
  },
  "start": 1,
  "end": 0,
  "attributes": [
    "deleteMyData",
    "mineToo"
  ]
}

Devices Updated

Schema for response of devices updated if under 100 devices queried

Devices Updated Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "updated": {
      "type": "number"
    },
    "failed": {
      "type": "number"
    },
    "skipped": {
      "type": "number"
    },
    "logLink": {
      "type": "string"
    }
  }
}

Devices Updated Example

{
  "updated": 3,
  "failed": 0,
  "skipped": 2,
  "logLink": "https://example.com/log-link"
}

Edge Deployment

Schema for a single deployment of an edge workflow to an edge device

Edge Deployment Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "edgeDeploymentId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "deviceConnectionInfo": {
      "type": "object",
      "properties": {
        "time": {
          "type": "string",
          "format": "date-time"
        },
        "connected": {
          "enum": [
            1,
            0,
            null
          ]
        }
      }
    },
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "flowName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "flowClass": {
      "type": "string",
      "enum": [
        "edge",
        "customNode"
      ]
    },
    "fileName": {
      "type": "string",
      "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "currentVersion": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    },
    "desiredVersion": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    },
    "currentEtag": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "desiredEtag": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "logs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "sourceType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "device",
              "apiToken",
              "notebook"
            ]
          },
          "sourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "changeType": {
            "type": "string",
            "enum": [
              "current",
              "desired"
            ]
          },
          "newValue": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "previousValue": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "attemptedValue": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "newEtag": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "previousEtag": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "attemptedEtag": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "error": {
            "type": "string"
          }
        }
      }
    }
  }
}

Edge Deployment Example

{
  "id": "5a591be186b70d7b9f9b0954",
  "edgeDeploymentId": "5a591be186b70d7b9f9b0954",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "deviceId": "575ecf887ae143cd83dc4aa2",
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "desiredVersion": "v1.4.0",
  "currentVersion": null,
  "logs": [
    {
      "sourceType": "user",
      "sourceId": "575ed70c7ae143cd83dc4aa9",
      "date": "2016-06-13T04:00:00.000Z",
      "changeType": "desired",
      "newValue": "v1.4.0",
      "previousValue": null
    }
  ]
}

Edge Deployment Release

Schema for deploying an edge workflow to one or more edge devices

Edge Deployment Release Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "version": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    }
  },
  "additionalProperties": false,
  "required": [
    "flowId",
    "version"
  ]
}

Edge Deployment Release Example

{
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "version": "v1.2.3",
  "deviceIds": [
    "575ecf887ae143cd83dc4aa2"
  ]
}

Edge Deployment Remove

Schema for removing edge deployments. Can remove a specific workflow from a specific device, can remove all workflows from a specific device, or can remove a specific workflow from all devices.

Edge Deployment Remove Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flowId": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  },
  "additionalProperties": false,
  "required": [
    "flowId",
    "deviceId"
  ]
}

Edge Deployment Remove Example

{
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "deviceId": null
}

Edge Deployment Replace

Schema for replacing a deployment of a workflow version with a different workflow version

Edge Deployment Replace Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "oldVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "newVersion": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    }
  },
  "additionalProperties": false,
  "required": [
    "flowId",
    "oldVersion",
    "newVersion"
  ]
}

Edge Deployment Replace Example

{
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "oldVersion": "v1.2.3",
  "newVersion": "v1.2.4"
}

Edge Deployments

Schema for a collection of Edge Deployments

Edge Deployments Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Edge Deployment",
        "description": "Schema for a single deployment of an edge workflow to an edge device",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "edgeDeploymentId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "deviceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "deviceName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "deviceConnectionInfo": {
            "type": "object",
            "properties": {
              "time": {
                "type": "string",
                "format": "date-time"
              },
              "connected": {
                "enum": [
                  1,
                  0,
                  null
                ]
              }
            }
          },
          "flowId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "flowName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "flowClass": {
            "type": "string",
            "enum": [
              "edge",
              "customNode"
            ]
          },
          "fileName": {
            "type": "string",
            "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "currentVersion": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "desiredVersion": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "currentEtag": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "desiredEtag": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "logs": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "sourceType": {
                  "type": "string",
                  "enum": [
                    "flow",
                    "user",
                    "device",
                    "apiToken",
                    "notebook"
                  ]
                },
                "sourceId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "date": {
                  "type": "string",
                  "format": "date-time"
                },
                "changeType": {
                  "type": "string",
                  "enum": [
                    "current",
                    "desired"
                  ]
                },
                "newValue": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "minLength": 1,
                  "maxLength": 255
                },
                "previousValue": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "minLength": 1,
                  "maxLength": 255
                },
                "attemptedValue": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "minLength": 1,
                  "maxLength": 255
                },
                "newEtag": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                },
                "previousEtag": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                },
                "attemptedEtag": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                },
                "error": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "version": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    }
  }
}

Edge Deployments Example

{
  "items": [
    {
      "id": "5a591be186b70d7b9f9b0954",
      "edgeDeploymentId": "5a591be186b70d7b9f9b0954",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "deviceId": "575ecf887ae143cd83dc4aa2",
      "flowId": "575ed18f7ae143cd83dc4aa6",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "desiredVersion": "v1.4.0",
      "currentVersion": null,
      "logs": [
        {
          "sourceType": "user",
          "sourceId": "575ed70c7ae143cd83dc4aa9",
          "date": "2016-06-13T04:00:00.000Z",
          "changeType": "desired",
          "newValue": "v1.4.0",
          "previousValue": null
        }
      ]
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "id",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Email Verification Verify

Schema for the body of a request verifying an email

Email Verification Verify Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "token": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "email",
    "token"
  ],
  "additionalProperties": false
}

Email Verification Verify Example

{
  "email": "email@example.com",
  "token": "the email verification token"
}

Embedded Deployment

Schema for a single deployment of embedded workflows to embedded devices

Embedded Deployment Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "embeddedDeploymentId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "deviceConnectionInfo": {
      "type": "object",
      "properties": {
        "time": {
          "type": "string",
          "format": "date-time"
        },
        "connected": {
          "enum": [
            1,
            0,
            null
          ]
        }
      }
    },
    "flows": {
      "type": "object",
      "patternProperties": {
        "^[A-Fa-f\\d]{24}$": {
          "type": "object",
          "properties": {
            "flowName": {
              "type": "string",
              "minLength": 1,
              "maxLength": 255
            },
            "currentVersion": {
              "type": [
                "string",
                "null"
              ],
              "minLength": 1,
              "maxLength": 255
            },
            "desiredVersion": {
              "type": [
                "string",
                "null"
              ],
              "minLength": 1,
              "maxLength": 255
            }
          }
        }
      },
      "additionalProperties": false
    },
    "currentBundleVersion": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    },
    "desiredBundleVersion": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    },
    "unknownBundle": {
      "type": "boolean"
    },
    "logs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "sourceType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "device",
              "apiToken",
              "notebook"
            ]
          },
          "sourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "changeType": {
            "type": "string",
            "enum": [
              "current",
              "desired"
            ]
          },
          "updateType": {
            "type": "string",
            "enum": [
              "newFlow",
              "replaceFlow",
              "removeFlow",
              "clear",
              "globals",
              "device",
              "unknownBundle",
              "knownBundle"
            ]
          },
          "updateFlowId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "desiredVersion": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "newBundle": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "attemptedBundle": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "error": {
            "type": "string"
          }
        }
      }
    }
  }
}

Embedded Deployment Example

{
  "id": "5a591be186b70d7b9f9b0954",
  "embeddedDeploymentId": "5a591be186b70d7b9f9b0954",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "flows": {
    "575ed18f7ae143cd83dc4aa6": {
      "flowName": "my flow",
      "desiredVersion": "v1.4.0",
      "currentVersion": null
    }
  },
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "currentBundleVersion": "nullVersion",
  "desiredBundleVersion": "1615500683",
  "unknownBundle": false,
  "logs": [
    {
      "sourceType": "user",
      "sourceId": "575ed70c7ae143cd83dc4aa9",
      "date": "2016-06-13T04:00:00.000Z",
      "changeType": "desired",
      "updateType": "newFlow",
      "updateFlowId": "575ed18f7ae143cd83dc4aa6",
      "desiredVersion": "v1.4.1",
      "newBundle": "v1.4.0"
    }
  ]
}

Embedded Deployment Export

Schema for the body of a compiled embedded deployment files request

Embedded Deployment Export Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "embeddedDeploymentId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "traceLevel": {
      "enum": [
        0,
        1,
        2
      ]
    },
    "disableDebugMessage": {
      "type": "boolean"
    },
    "stackSize": {
      "type": "integer",
      "minimum": 1600,
      "maximum": 2147483648
    },
    "debugSymbols": {
      "type": "boolean"
    },
    "exportMemory": {
      "type": "boolean"
    },
    "gzip": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

Embedded Deployment Export Example

{
  "email": "email@example.com",
  "deviceId": "575ecf887ae143cd83dc4aa2"
}

Embedded Deployment Release

Schema for deploying an embedded workflow to one or more edge devices

Embedded Deployment Release Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "version": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "releaseTag": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    }
  },
  "additionalProperties": false,
  "required": [
    "flowId",
    "version"
  ]
}

Embedded Deployment Release Example

{
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "version": "v1.2.3",
  "deviceIds": [
    "575ecf887ae143cd83dc4aa2"
  ]
}

Embedded Deployment Remove

Schema for removing embedded deployments. Can remove a specific workflow from a specific device, can remove all workflows from a specific device, or can remove a specific workflow from all devices.

Embedded Deployment Remove Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flowId": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  },
  "additionalProperties": false,
  "required": [
    "flowId",
    "deviceId"
  ]
}

Embedded Deployment Remove Example

{
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "deviceId": null
}

Embedded Deployment Replace

Schema for replacing a deployment of a workflow version with a different workflow version

Embedded Deployment Replace Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "oldVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "newVersion": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "maxLength": 255
    }
  },
  "additionalProperties": false,
  "required": [
    "flowId",
    "oldVersion",
    "newVersion"
  ]
}

Embedded Deployment Replace Example

{
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "oldVersion": "v1.2.3",
  "newVersion": "v1.2.4"
}

Embedded Deployments

Schema for a collection of Embedded Deployments

Embedded Deployments Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Embedded Deployment",
        "description": "Schema for a single deployment of embedded workflows to embedded devices",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "embeddedDeploymentId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "deviceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "deviceName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "deviceConnectionInfo": {
            "type": "object",
            "properties": {
              "time": {
                "type": "string",
                "format": "date-time"
              },
              "connected": {
                "enum": [
                  1,
                  0,
                  null
                ]
              }
            }
          },
          "flows": {
            "type": "object",
            "patternProperties": {
              "^[A-Fa-f\\d]{24}$": {
                "type": "object",
                "properties": {
                  "flowName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "currentVersion": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "desiredVersion": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "minLength": 1,
                    "maxLength": 255
                  }
                }
              }
            },
            "additionalProperties": false
          },
          "currentBundleVersion": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "desiredBundleVersion": {
            "type": [
              "string",
              "null"
            ],
            "minLength": 1,
            "maxLength": 255
          },
          "unknownBundle": {
            "type": "boolean"
          },
          "logs": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "sourceType": {
                  "type": "string",
                  "enum": [
                    "flow",
                    "user",
                    "device",
                    "apiToken",
                    "notebook"
                  ]
                },
                "sourceId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "date": {
                  "type": "string",
                  "format": "date-time"
                },
                "changeType": {
                  "type": "string",
                  "enum": [
                    "current",
                    "desired"
                  ]
                },
                "updateType": {
                  "type": "string",
                  "enum": [
                    "newFlow",
                    "replaceFlow",
                    "removeFlow",
                    "clear",
                    "globals",
                    "device",
                    "unknownBundle",
                    "knownBundle"
                  ]
                },
                "updateFlowId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "desiredVersion": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "minLength": 1,
                  "maxLength": 255
                },
                "newBundle": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "minLength": 1,
                  "maxLength": 255
                },
                "attemptedBundle": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "minLength": 1,
                  "maxLength": 255
                },
                "error": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "version": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    }
  }
}

Embedded Deployments Example

{
  "items": [
    {
      "id": "5a591be186b70d7b9f9b0954",
      "embeddedDeploymentId": "5a591be186b70d7b9f9b0954",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "flows": {
        "575ed18f7ae143cd83dc4aa6": {
          "flowName": "my flow",
          "desiredVersion": "v1.4.0",
          "currentVersion": null
        }
      },
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "currentBundleVersion": "nullVersion",
      "desiredBundleVersion": "1615500683",
      "unknownBundle": false,
      "logs": [
        {
          "sourceType": "user",
          "sourceId": "575ed70c7ae143cd83dc4aa9",
          "date": "2016-06-13T04:00:00.000Z",
          "changeType": "desired",
          "updateType": "newFlow",
          "updateFlowId": "575ed18f7ae143cd83dc4aa6",
          "desiredVersion": "v1.4.1",
          "newBundle": "v1.4.0"
        }
      ]
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "id",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Error

Schema for errors returned by the API

Error Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "type": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}

Error Example

{
  "type": "NotFound",
  "message": "Application was not found"
}

Event

Schema for a single Event

Event Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "eventId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "sourceType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "device",
        "apiToken",
        "experienceUser",
        "public"
      ]
    },
    "sourceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "sourceName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "level": {
      "type": "string",
      "enum": [
        "info",
        "warning",
        "error",
        "critical"
      ]
    },
    "state": {
      "type": "string",
      "enum": [
        "new",
        "acknowledged",
        "resolved"
      ]
    },
    "subject": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "message": {
      "type": "string",
      "maxLength": 32767
    },
    "data": {},
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "eventTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "updates": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "sourceType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "device",
              "apiToken",
              "experienceUser",
              "public"
            ]
          },
          "sourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "sourceName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "comment": {
            "type": "string",
            "maxLength": 32767
          },
          "data": {},
          "state": {
            "type": "string",
            "enum": [
              "new",
              "acknowledged",
              "resolved"
            ]
          },
          "stateChange": {
            "type": "object",
            "properties": {
              "old": {
                "type": "string",
                "enum": [
                  "new",
                  "acknowledged",
                  "resolved"
                ]
              },
              "new": {
                "type": "string",
                "enum": [
                  "new",
                  "acknowledged",
                  "resolved"
                ]
              }
            }
          }
        }
      }
    }
  }
}

Event Example

{
  "id": "575ed0de7ae143cd83dc4aa5",
  "eventId": "575ed0de7ae143cd83dc4aa5",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "sourceType": "user",
  "sourceId": "575ed70c7ae143cd83dc4aa9",
  "sourceName": "hello@example.com",
  "level": "info",
  "state": "new",
  "subject": "Power levels critical",
  "message": "Power levels on device 432 have surpassed critical thresholds",
  "updates": [],
  "deviceId": "575ecf887ae143cd83dc4aa2",
  "deviceName": "My Device",
  "eventTags": {
    "customKey": "customValue"
  }
}

Event Patch

Schema for the body of an Event modification request

Event Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "enum": [
        "new",
        "acknowledged",
        "resolved"
      ]
    },
    "comment": {
      "type": "string",
      "maxLength": 32767
    },
    "data": {},
    "eventTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

Event Patch Example

{
  "state": "acknowledged",
  "comment": "Looking into this issue"
}

Event Plus New Count

Schema for an event plus a count of new events

Event Plus New Count Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "event": {
      "title": "Event",
      "description": "Schema for a single Event",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "eventId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "creationDate": {
          "type": "string",
          "format": "date-time"
        },
        "lastUpdated": {
          "type": "string",
          "format": "date-time"
        },
        "sourceType": {
          "type": "string",
          "enum": [
            "flow",
            "user",
            "device",
            "apiToken",
            "experienceUser",
            "public"
          ]
        },
        "sourceId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "sourceName": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "level": {
          "type": "string",
          "enum": [
            "info",
            "warning",
            "error",
            "critical"
          ]
        },
        "state": {
          "type": "string",
          "enum": [
            "new",
            "acknowledged",
            "resolved"
          ]
        },
        "subject": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "message": {
          "type": "string",
          "maxLength": 32767
        },
        "data": {},
        "deviceId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "deviceName": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "eventTags": {
          "type": "object",
          "patternProperties": {
            "^[0-9a-zA-Z_-]{1,255}$": {
              "type": "string",
              "minLength": 1,
              "maxLength": 255
            }
          },
          "additionalProperties": false
        },
        "updates": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "sourceType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "device",
                  "apiToken",
                  "experienceUser",
                  "public"
                ]
              },
              "sourceId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "sourceName": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "comment": {
                "type": "string",
                "maxLength": 32767
              },
              "data": {},
              "state": {
                "type": "string",
                "enum": [
                  "new",
                  "acknowledged",
                  "resolved"
                ]
              },
              "stateChange": {
                "type": "object",
                "properties": {
                  "old": {
                    "type": "string",
                    "enum": [
                      "new",
                      "acknowledged",
                      "resolved"
                    ]
                  },
                  "new": {
                    "type": "string",
                    "enum": [
                      "new",
                      "acknowledged",
                      "resolved"
                    ]
                  }
                }
              }
            }
          }
        }
      }
    },
    "newCount": {
      "type": "integer"
    }
  }
}

Event Plus New Count Example

{
  "event": {
    "id": "575ed0de7ae143cd83dc4aa5",
    "eventId": "575ed0de7ae143cd83dc4aa5",
    "applicationId": "575ec8687ae143cd83dc4a97",
    "creationDate": "2016-06-13T04:00:00.000Z",
    "lastUpdated": "2016-06-13T04:00:00.000Z",
    "sourceType": "user",
    "sourceId": "575ed70c7ae143cd83dc4aa9",
    "sourceName": "hello@example.com",
    "level": "info",
    "state": "new",
    "subject": "Power levels critical",
    "message": "Power levels on device 432 have surpassed critical thresholds",
    "updates": [],
    "deviceId": "575ecf887ae143cd83dc4aa2",
    "deviceName": "My Device",
    "eventTags": {
      "customKey": "customValue"
    }
  },
  "newCount": 2
}

Event Post

Schema for the body of an Event creation request

Event Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "level": {
      "type": "string",
      "enum": [
        "info",
        "warning",
        "error",
        "critical"
      ]
    },
    "state": {
      "type": "string",
      "enum": [
        "new",
        "acknowledged",
        "resolved"
      ]
    },
    "subject": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "message": {
      "type": "string",
      "maxLength": 32767
    },
    "data": {},
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "eventTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "creationDate": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "object",
          "properties": {
            "$date": {
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "$date"
          ]
        }
      ]
    }
  },
  "required": [
    "level",
    "subject"
  ],
  "additionalProperties": false
}

Event Post Example

{
  "level": "info",
  "state": "new",
  "subject": "Power levels critical",
  "message": "Power levels on device 432 have surpassed critical thresholds",
  "deviceId": "575ecf887ae143cd83dc4aa2"
}

Event Tags Summary

Summary of all unique event tags and values in an application.

Event Tags Summary Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "eventTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      }
    }
  }
}

Event Tags Summary Example

{
  "eventTags": [
    {
      "key": "TagKey",
      "value": "TagValue"
    },
    {
      "key": "floor",
      "value": "8"
    }
  ]
}

Events

Schema for a collection of Events

Events Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Event",
        "description": "Schema for a single Event",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "eventId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "sourceType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "device",
              "apiToken",
              "experienceUser",
              "public"
            ]
          },
          "sourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "sourceName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "level": {
            "type": "string",
            "enum": [
              "info",
              "warning",
              "error",
              "critical"
            ]
          },
          "state": {
            "type": "string",
            "enum": [
              "new",
              "acknowledged",
              "resolved"
            ]
          },
          "subject": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "message": {
            "type": "string",
            "maxLength": 32767
          },
          "data": {},
          "deviceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "deviceName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "eventTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "updates": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "sourceType": {
                  "type": "string",
                  "enum": [
                    "flow",
                    "user",
                    "device",
                    "apiToken",
                    "experienceUser",
                    "public"
                  ]
                },
                "sourceId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "sourceName": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                },
                "creationDate": {
                  "type": "string",
                  "format": "date-time"
                },
                "comment": {
                  "type": "string",
                  "maxLength": 32767
                },
                "data": {},
                "state": {
                  "type": "string",
                  "enum": [
                    "new",
                    "acknowledged",
                    "resolved"
                  ]
                },
                "stateChange": {
                  "type": "object",
                  "properties": {
                    "old": {
                      "type": "string",
                      "enum": [
                        "new",
                        "acknowledged",
                        "resolved"
                      ]
                    },
                    "new": {
                      "type": "string",
                      "enum": [
                        "new",
                        "acknowledged",
                        "resolved"
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "state": {
      "type": "string",
      "enum": [
        "new",
        "acknowledged",
        "resolved"
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "query": {
      "type": "object"
    }
  }
}

Events Example

{
  "items": [
    {
      "id": "575ed0de7ae143cd83dc4aa5",
      "eventId": "575ed0de7ae143cd83dc4aa5",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "sourceType": "user",
      "sourceId": "575ed70c7ae143cd83dc4aa9",
      "sourceName": "hello@example.com",
      "level": "info",
      "state": "new",
      "subject": "Power levels critical",
      "message": "Power levels on device 432 have surpassed critical thresholds",
      "updates": [],
      "deviceId": "575ecf887ae143cd83dc4aa2",
      "deviceName": "My Device",
      "eventTags": {
        "customKey": "customValue"
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "subject",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "state": "new"
}

Events Deleted

Schema for response to events removal

Events Deleted Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "removed": {
      "type": "number"
    }
  }
}

Events Deleted Example

{
  "removed": 3
}

Event Export Options

Export options for events

Event Export Options Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "query": {
      "title": "Advanced Event Query",
      "description": "Schema for advanced event queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedEventQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedEventQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedEventQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "sourceId": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "sourceType": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "level": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "state": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "subject": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceId": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "eventTags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

Event Export Options Example

{
  "email": "email@example.com",
  "query": {
    "$or": [
      {
        "subject": {
          "$ne": "myValue"
        }
      },
      {
        "level": "info"
      }
    ]
  }
}

Experience Bootstrap Options

The body of an experience bootstrap request

Experience Bootstrap Options Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "replaceExisting": {
      "type": "boolean",
      "default": false
    },
    "createUsers": {
      "type": "boolean",
      "default": true
    },
    "createGroups": {
      "type": "boolean",
      "default": true
    },
    "slug": {
      "type": "string",
      "minLength": 3,
      "maxLength": 63,
      "pattern": "^[0-9a-z-]*$"
    }
  },
  "additionalProperties": false
}

Experience Bootstrap Options Example

{
  "replaceExisting": true
}

Experience Bootstrap Result

The result of an experience bootstrap request

Experience Bootstrap Result Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "resourceSuffix": {
      "type": "string"
    },
    "password": {
      "type": "string"
    },
    "email": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

Experience Bootstrap Result Example

{
  "password": "examplePass",
  "email": "example.user@example.com",
  "resourceSuffix": ""
}

Experience Domain

Schema for a single Experience Domain

Experience Domain Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceDomainId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "sslCert": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    },
    "sslBundle": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    },
    "domainName": {
      "type": "string",
      "maxLength": 45,
      "minLength": 3
    },
    "version": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    }
  }
}

Experience Domain Example

{
  "id": "58c1de6c8f812590d8e82980",
  "experienceDomainId": "58c1de6c8f812590d8e82980",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "domainName": "my.domain.example.com",
  "version": "develop"
}

Experience Domain Patch

Schema for the body of an Experience Domain modification request

Experience Domain Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "sslKey": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 32767,
          "minLength": 50
        },
        {
          "type": "null"
        }
      ]
    },
    "sslCert": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 32767,
          "minLength": 50
        },
        {
          "type": "null"
        }
      ]
    },
    "sslBundle": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 32767,
          "minLength": 50
        },
        {
          "type": "null"
        }
      ]
    },
    "version": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ]
    },
    "domainName": {
      "type": "string",
      "maxLength": 45,
      "minLength": 3
    }
  },
  "additionalProperties": false
}

Experience Domain Patch Example

{
  "domainName": "my.domain.example.com",
  "sslCert": "-----BEGIN CERTIFICATE-----\nMY_SSL_CERTIFICATE\n-----END CERTIFICATE-----",
  "sslKey": "-----BEGIN PRIVATE KEY-----\nMY_SSL_KEY\n-----END PRIVATE KEY-----",
  "version": "develop"
}

Experience Domain Post

Schema for the body of an Experience Domain creation request

Experience Domain Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "sslKey": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    },
    "sslCert": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    },
    "sslBundle": {
      "type": "string",
      "maxLength": 32767,
      "minLength": 50
    },
    "domainName": {
      "type": "string",
      "maxLength": 45,
      "minLength": 3
    },
    "version": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "domainName"
  ]
}

Experience Domain Post Example

{
  "domainName": "my.domain.example.com",
  "sslCert": "-----BEGIN CERTIFICATE-----\nMY_SSL_CERTIFICATE\n-----END CERTIFICATE-----",
  "sslKey": "-----BEGIN PRIVATE KEY-----\nMY_SSL_KEY\n-----END PRIVATE KEY-----",
  "version": "develop"
}

Experience Domains

Schema for a collection of Experience Domains

Experience Domains Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Experience Domain",
        "description": "Schema for a single Experience Domain",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "experienceDomainId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "sslCert": {
            "type": "string",
            "maxLength": 32767,
            "minLength": 50
          },
          "sslBundle": {
            "type": "string",
            "maxLength": 32767,
            "minLength": 50
          },
          "domainName": {
            "type": "string",
            "maxLength": 45,
            "minLength": 3
          },
          "version": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Experience Domains Example

{
  "items": [
    {
      "id": "58c1de6c8f812590d8e82980",
      "experienceDomainId": "58c1de6c8f812590d8e82980",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "domainName": "my.domain.example.com",
      "version": "develop"
    }
  ],
  "count": 1,
  "totalCount": 1,
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Experience Endpoint

Schema for a single Experience Endpoint

Experience Endpoint Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceEndpointId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "createdById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "createdByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "lastUpdatedById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdatedByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "route": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "enabled": {
      "type": "boolean"
    },
    "method": {
      "type": "string",
      "enum": [
        "delete",
        "get",
        "options",
        "patch",
        "post",
        "put"
      ]
    },
    "access": {
      "type": "string",
      "enum": [
        "public",
        "authenticated",
        "group"
      ]
    },
    "endpointTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "staticReply": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "type": "string"
            },
            "statusCode": {
              "type": "integer",
              "minimum": 100,
              "maximum": 599
            },
            "type": {
              "type": "string",
              "enum": [
                "page",
                "redirect"
              ]
            }
          },
          "required": [
            "value",
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "unauthorizedReply": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "type": "string"
            },
            "statusCode": {
              "type": "integer",
              "minimum": 100,
              "maximum": 599
            },
            "type": {
              "type": "string",
              "enum": [
                "page",
                "redirect"
              ]
            }
          },
          "required": [
            "value",
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "experienceGroups": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          }
        }
      }
    }
  }
}

Experience Endpoint Example

{
  "id": "58c1de6c8f812590d8e82980",
  "experienceEndpointId": "58c1de6c8f812590d8e82980",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "route": "/my/route/{id}",
  "enabled": true,
  "method": "get",
  "access": "group",
  "experienceGroups": [
    {
      "name": "myGroup",
      "id": "58b9d794cbfafe1be675744f"
    }
  ]
}

Experience Endpoint Patch

Schema for the body of an Experience Endpoint modification request

Experience Endpoint Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "route": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "enabled": {
      "type": "boolean"
    },
    "method": {
      "type": "string",
      "enum": [
        "delete",
        "get",
        "options",
        "patch",
        "post",
        "put"
      ]
    },
    "access": {
      "type": "string",
      "enum": [
        "public",
        "authenticated",
        "group"
      ]
    },
    "endpointTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "experienceGroupIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "staticReply": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "type": "string"
            },
            "statusCode": {
              "type": "integer",
              "minimum": 100,
              "maximum": 599
            },
            "type": {
              "type": "string",
              "enum": [
                "page",
                "redirect"
              ]
            }
          },
          "required": [
            "value",
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "unauthorizedReply": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "type": "string"
            },
            "statusCode": {
              "type": "integer",
              "minimum": 100,
              "maximum": 599
            },
            "type": {
              "type": "string",
              "enum": [
                "page",
                "redirect"
              ]
            }
          },
          "required": [
            "value",
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "additionalProperties": false
}

Experience Endpoint Patch Example

{
  "access": "group",
  "experienceGroupIds": [
    "58c1de6f8f812590d8e82983"
  ]
}

Experience Endpoint Post

Schema for the body of an Experience Endpoint creation request

Experience Endpoint Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "route": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "enabled": {
      "type": "boolean"
    },
    "method": {
      "type": "string",
      "enum": [
        "delete",
        "get",
        "options",
        "patch",
        "post",
        "put"
      ]
    },
    "access": {
      "type": "string",
      "enum": [
        "public",
        "authenticated",
        "group"
      ]
    },
    "endpointTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "experienceGroupIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "staticReply": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "type": "string"
            },
            "statusCode": {
              "type": "integer",
              "minimum": 100,
              "maximum": 599
            },
            "type": {
              "type": "string",
              "enum": [
                "page",
                "redirect"
              ]
            }
          },
          "required": [
            "value",
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "unauthorizedReply": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "value": {
              "type": "string"
            },
            "statusCode": {
              "type": "integer",
              "minimum": 100,
              "maximum": 599
            },
            "type": {
              "type": "string",
              "enum": [
                "page",
                "redirect"
              ]
            }
          },
          "required": [
            "value",
            "type"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "route",
    "method"
  ]
}

Experience Endpoint Post Example

{
  "route": "/my/route/{id}",
  "method": "get",
  "access": "public"
}

Experience Endpoint Stats

Schema for stats for an experience’s endpoints

Experience Endpoint Stats Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "patternProperties": {
    ".*": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "time": {
            "type": "string",
            "format": "date-time"
          },
          "count": {
            "type": "number"
          }
        }
      }
    }
  }
}

Experience Endpoint Stats Example

{
  "58cae95a0f5fcd000138ed0d": [
    {
      "time": "2017-03-21T20:00:00.000Z",
      "count": 10
    },
    {
      "time": "2017-03-21T21:00:00.000Z",
      "count": 1
    }
  ],
  "NotFound": [
    {
      "time": "2017-03-21T20:00:00.000Z",
      "count": 1
    },
    {
      "time": "2017-03-21T21:00:00.000Z",
      "count": 4
    }
  ]
}

Experience Endpoints

Schema for a collection of Experience Endpoints

Experience Endpoints Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Experience Endpoint",
        "description": "Schema for a single Experience Endpoint",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "experienceEndpointId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "createdById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "lastUpdatedById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "lastUpdatedByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "route": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "enabled": {
            "type": "boolean"
          },
          "method": {
            "type": "string",
            "enum": [
              "delete",
              "get",
              "options",
              "patch",
              "post",
              "put"
            ]
          },
          "access": {
            "type": "string",
            "enum": [
              "public",
              "authenticated",
              "group"
            ]
          },
          "endpointTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "staticReply": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "string"
                  },
                  "statusCode": {
                    "type": "integer",
                    "minimum": 100,
                    "maximum": 599
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "page",
                      "redirect"
                    ]
                  }
                },
                "required": [
                  "value",
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "unauthorizedReply": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "string"
                  },
                  "statusCode": {
                    "type": "integer",
                    "minimum": 100,
                    "maximum": 599
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "page",
                      "redirect"
                    ]
                  }
                },
                "required": [
                  "value",
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "experienceGroups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                },
                "id": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceGroupId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "notFoundRequestCount": {
      "type": "number"
    }
  }
}

Experience Endpoints Example

{
  "items": [
    {
      "id": "58c1de6c8f812590d8e82980",
      "experienceEndpointId": "58c1de6c8f812590d8e82980",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "route": "/my/route/{id}",
      "enabled": true,
      "method": "get",
      "access": "group",
      "experienceGroups": [
        {
          "name": "myGroup",
          "id": "58b9d794cbfafe1be675744f"
        }
      ]
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Experience Group

Schema for a single Experience Group

Experience Group Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceGroupId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "experienceUserIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "experienceEndpointIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "groupTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "deviceQueryJson": {
      "type": [
        "string",
        "null"
      ],
      "maxLength": 8192
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "ancestorIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "directDeviceCount": {
      "type": "number"
    },
    "totalDeviceCount": {
      "type": "number"
    }
  }
}

Experience Group Example

{
  "id": "58b9d794cbfafe1be675744f",
  "experienceGroupId": "58b9d794cbfafe1be675744f",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "My Group",
  "experienceUserIds": [
    "58b9d782cbfafe1be675744d",
    "58b9d787cbfafe1be675744e"
  ],
  "experienceEndpointIds": [
    "58b9d743cbfafe1be675744b",
    "58b9d743cbfafe1be675744c"
  ]
}

Experience Group Patch

Schema for the body of an Experience Group modification request

Experience Group Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "experienceUserIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "experienceEndpointIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "groupTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "deviceQueryJson": {
      "type": [
        "string",
        "null"
      ],
      "maxLength": 8192
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "additionalProperties": false
}

Experience Group Patch Example

{
  "name": "My New Group Name",
  "experienceUserIds": [
    "575ed70c7ae143cd83dc4aa9",
    "675ed70c7ae143cd83dc4aa9"
  ],
  "experienceEndpointIds": [
    "58b9d743cbfafe1be675744b",
    "58b9d743cbfafe1be675744c"
  ],
  "parentId": "775ed70c7ae143cd83dc4aa9",
  "deviceIds": [
    "58b9d743cbfafe1be675744d"
  ],
  "deviceTags": [
    {
      "key": "myKey",
      "value": "foo"
    }
  ]
}

Experience Group Post

Schema for the body of an Experience Group creation request

Experience Group Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "experienceUserIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "experienceEndpointIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "groupTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "deviceQueryJson": {
      "type": [
        "string",
        "null"
      ],
      "maxLength": 8192
    },
    "parentId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Experience Group Post Example

{
  "name": "My Group",
  "experienceUserIds": [
    "575ed70c7ae143cd83dc4aa9",
    "675ed70c7ae143cd83dc4aa9"
  ],
  "experienceEndpointIds": [
    "58b9d743cbfafe1be675744b",
    "58b9d743cbfafe1be675744c"
  ],
  "deviceIds": [
    "58b9d743cbfafe1be675744d"
  ],
  "deviceTags": [
    {
      "key": "floor",
      "value": "8"
    }
  ],
  "parentId": "58b9d743cbfafe1be675744e"
}

Experience Groups

Schema for a collection of Experience Groups

Experience Groups Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Experience Group",
        "description": "Schema for a single Experience Group",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "experienceGroupId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "experienceUserIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "experienceEndpointIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "groupTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "deviceIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "deviceTags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "value": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            },
            "maxItems": 100
          },
          "deviceQueryJson": {
            "type": [
              "string",
              "null"
            ],
            "maxLength": 8192
          },
          "parentId": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "ancestorIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "maxItems": 1000
          },
          "directDeviceCount": {
            "type": "number"
          },
          "totalDeviceCount": {
            "type": "number"
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Experience Groups Example

{
  "items": [
    {
      "id": "58b9d794cbfafe1be675744f",
      "experienceGroupId": "58b9d794cbfafe1be675744f",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Group",
      "experienceUserIds": [
        "58b9d782cbfafe1be675744d",
        "58b9d787cbfafe1be675744e"
      ],
      "experienceEndpointIds": [
        "58b9d743cbfafe1be675744b",
        "58b9d743cbfafe1be675744c"
      ]
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Experience Linked Resources

The body of an experience linked resources response

Experience Linked Resources Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "experienceViews": {
      "title": "Experience Views",
      "description": "Schema for a collection of Experience Views",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "title": "Experience View",
            "description": "Schema for a single Experience View",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "experienceViewId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "createdById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "createdByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "lastUpdatedById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "lastUpdatedByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "viewType": {
                "type": "string",
                "enum": [
                  "layout",
                  "page",
                  "component"
                ]
              },
              "layoutId": {
                "type": [
                  "string",
                  "null"
                ],
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "layoutName": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "body": {
                "type": "string",
                "maxLength": 131072
              },
              "viewTags": {
                "type": "object",
                "patternProperties": {
                  "^[0-9a-zA-Z_-]{1,255}$": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            }
          }
        },
        "count": {
          "type": "integer"
        },
        "totalCount": {
          "type": "integer"
        },
        "perPage": {
          "type": "integer"
        },
        "page": {
          "type": "integer"
        },
        "filter": {
          "type": "string"
        },
        "filterField": {
          "type": "string"
        },
        "sortField": {
          "type": "string"
        },
        "sortDirection": {
          "type": "string",
          "enum": [
            "asc",
            "desc",
            "ASC",
            "DESC",
            ""
          ]
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "viewType": {
          "type": "string",
          "enum": [
            "layout",
            "page",
            "component"
          ]
        }
      }
    },
    "experienceEndpoints": {
      "title": "Experience Endpoints",
      "description": "Schema for a collection of Experience Endpoints",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "title": "Experience Endpoint",
            "description": "Schema for a single Experience Endpoint",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "experienceEndpointId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "createdById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "createdByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "lastUpdatedById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "lastUpdatedByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "route": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "enabled": {
                "type": "boolean"
              },
              "method": {
                "type": "string",
                "enum": [
                  "delete",
                  "get",
                  "options",
                  "patch",
                  "post",
                  "put"
                ]
              },
              "access": {
                "type": "string",
                "enum": [
                  "public",
                  "authenticated",
                  "group"
                ]
              },
              "endpointTags": {
                "type": "object",
                "patternProperties": {
                  "^[0-9a-zA-Z_-]{1,255}$": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "staticReply": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "string"
                      },
                      "statusCode": {
                        "type": "integer",
                        "minimum": 100,
                        "maximum": 599
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "page",
                          "redirect"
                        ]
                      }
                    },
                    "required": [
                      "value",
                      "type"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "unauthorizedReply": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "string"
                      },
                      "statusCode": {
                        "type": "integer",
                        "minimum": 100,
                        "maximum": 599
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "page",
                          "redirect"
                        ]
                      }
                    },
                    "required": [
                      "value",
                      "type"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "experienceGroups": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    },
                    "id": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    }
                  }
                }
              }
            }
          }
        },
        "count": {
          "type": "integer"
        },
        "totalCount": {
          "type": "integer"
        },
        "filter": {
          "type": "string"
        },
        "filterField": {
          "type": "string"
        },
        "sortField": {
          "type": "string"
        },
        "sortDirection": {
          "type": "string",
          "enum": [
            "asc",
            "desc",
            "ASC",
            "DESC",
            ""
          ]
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "experienceGroupId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "notFoundRequestCount": {
          "type": "number"
        }
      }
    },
    "flows": {
      "title": "Workflows",
      "description": "Schema for a collection of Workflows",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "title": "Workflow",
            "description": "Schema for a single Workflow",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "createdById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "createdByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "lastUpdatedById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "lastUpdatedByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "shortDescription": {
                "type": "string",
                "maxLength": 1024
              },
              "iconData": {
                "type": "string",
                "maxLength": 32767,
                "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
              },
              "docsUrl": {
                "type": "string",
                "maxLength": 1024
              },
              "category": {
                "type": "string",
                "enum": [
                  "data",
                  "experience",
                  "logic",
                  "output",
                  "debug"
                ]
              },
              "enabled": {
                "type": "boolean"
              },
              "defaultVersionId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "minimumAgentVersion": {
                "type": "string",
                "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
              },
              "flowClass": {
                "type": "string",
                "enum": [
                  "cloud",
                  "edge",
                  "embedded",
                  "experience",
                  "customNode"
                ]
              },
              "triggers": {
                "type": "array",
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdConnect",
                            "deviceTagConnect",
                            "deviceIdDisconnect",
                            "deviceTagDisconnect",
                            "integration",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdsTagsConnect",
                                "deviceIdsTagsDisconnect",
                                "eeaInit",
                                "flowError",
                                "azureEventHub",
                                "googlePubSub",
                                "mqtt",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "particle",
                                "sqs",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete",
                                "websocket"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "bulkInsert": {
                              "type": "boolean"
                            },
                            "delete": {
                              "type": "boolean"
                            },
                            "insert": {
                              "type": "boolean"
                            },
                            "update": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceId",
                            "deviceTag"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "attributeBlacklist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "attributeWhitelist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "maxAge": {
                              "type": "number"
                            },
                            "triggerOn": {
                              "type": "string",
                              "enum": [
                                "batch",
                                "individual",
                                "both"
                              ]
                            },
                            "batchBehavior": {
                              "type": "string",
                              "enum": [
                                "once",
                                "each"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTags",
                                "device",
                                "deviceTag"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timeUnit": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "maxAgeToggle": {
                              "type": "boolean"
                            },
                            "allowedAttributeType": {
                              "type": "string",
                              "enum": [
                                "attributeWhitelist",
                                "any",
                                "attributeBlacklist"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceIdInactivity",
                            "deviceTagInactivity"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTagsInactivity"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {},
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "experienceVersion": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "subject": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "new": {
                              "type": "boolean"
                            },
                            "acknowledged": {
                              "type": "boolean"
                            },
                            "resolved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "scope": {
                              "type": "string",
                              "enum": [
                                "local",
                                "global",
                                "experience",
                                "cloud"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "mqttTopic"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "integrationId": {
                              "type": "string",
                              "enum": [
                                "losant",
                                "local",
                                "external"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "mqtt"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "syncTypes": {
                              "type": "array",
                              "maxItems": 3,
                              "minItems": 1,
                              "items": {
                                "type": "string",
                                "enum": [
                                  "application",
                                  "device",
                                  "peripheral"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "uri": {
                              "type": "string",
                              "format": "uri",
                              "maxLength": 1024
                            },
                            "securityPolicy": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "securityMode": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "username": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "cert": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "privateKey": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "nameSpace": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "identifier": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "samplingInterval": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "eventFilter": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "configName": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "redis"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "host": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "port": {
                              "type": "string",
                              "maxLength": 16
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "topic": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "redisTrigger"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "method": {
                              "type": "string",
                              "enum": [
                                "*",
                                "delete",
                                "get",
                                "options",
                                "patch",
                                "post",
                                "put"
                              ]
                            },
                            "route": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "baudRate": {
                              "type": "number"
                            },
                            "dataBits": {
                              "type": "number"
                            },
                            "stopBits": {
                              "type": "number"
                            },
                            "parity": {
                              "type": "string",
                              "maxLength": 8
                            },
                            "rtscts": {
                              "type": "boolean"
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "writeOnOpen": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "writeOnOpenEncoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiterEncoding": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "parseBy": {
                              "type": "string",
                              "enum": [
                                "byteLength",
                                "delimiter"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "udpPort": {
                              "type": "string",
                              "maxLength": 5
                            },
                            "snmpTrapConfig": {
                              "type": "object",
                              "properties": {
                                "community": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "user": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "securityLevel": {
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "auth",
                                        "authAndEncrypt"
                                      ]
                                    },
                                    "authMethod": {
                                      "type": "string",
                                      "enum": [
                                        "sha",
                                        "md5"
                                      ]
                                    },
                                    "authKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "encryptionMethod": {
                                      "type": "string",
                                      "enum": [
                                        "aes",
                                        "des"
                                      ]
                                    },
                                    "encryptionKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "securityLevel"
                                  ],
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "udpPort",
                            "snmpTrapConfig"
                          ],
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            },
                            "cron": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "tz": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timerTypeSelect": {
                              "type": "string",
                              "enum": [
                                "cronWeekly",
                                "seconds",
                                "cron"
                              ]
                            },
                            "timeAt": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "timezone": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "weekdays": {
                              "type": "array",
                              "maxItems": 7,
                              "items": {
                                "type": "number"
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "groupId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 262144
                            },
                            "deviceId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "pattern": "^[A-Fa-f\\d]{24}$"
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    ""
                                  ]
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "nodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "config": {
                      "type": "object"
                    },
                    "meta": {
                      "type": "object"
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "type"
                  ]
                }
              },
              "customNodeConfig": {
                "type": "object",
                "properties": {
                  "outputCount": {
                    "type": "number",
                    "enum": [
                      1,
                      2
                    ]
                  },
                  "resultMode": {
                    "type": "string",
                    "enum": [
                      "optional",
                      "required",
                      "none"
                    ]
                  },
                  "resultDescription": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "fields": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "checkbox"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "select"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "options": {
                              "type": "array",
                              "minItems": 1,
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "label": {
                                    "type": "string",
                                    "maxLength": 1024
                                  },
                                  "value": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 1024
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "value"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label",
                            "defaultValue",
                            "options"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "stringTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "required": {
                              "type": "boolean"
                            },
                            "validRegExp": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "numberTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "number"
                            },
                            "required": {
                              "type": "boolean"
                            },
                            "validMin": {
                              "type": "number"
                            },
                            "validMax": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "jsonTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "required": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "payloadPath"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "required": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "section"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "outputCount",
                  "resultMode",
                  "fields"
                ]
              },
              "customNodeSupports": {
                "type": "array",
                "maxItems": 1,
                "items": {
                  "type": "string",
                  "enum": [
                    "cloud",
                    "edge"
                  ]
                }
              },
              "customNodeUseCount": {
                "type": "number"
              },
              "globals": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "json": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 32767
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "key",
                    "json"
                  ]
                }
              },
              "deletedInDevelop": {
                "type": "boolean"
              },
              "stats": {
                "type": "object",
                "properties": {
                  "runCount": {
                    "type": "number"
                  },
                  "errorCount": {
                    "type": "number"
                  },
                  "byVersion": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "object",
                        "properties": {
                          "runCount": {
                            "type": "number"
                          },
                          "errorCount": {
                            "type": "number"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "count": {
          "type": "integer"
        },
        "totalCount": {
          "type": "integer"
        },
        "perPage": {
          "type": "integer"
        },
        "page": {
          "type": "integer"
        },
        "filter": {
          "type": "string"
        },
        "filterField": {
          "type": "string"
        },
        "sortField": {
          "type": "string"
        },
        "sortDirection": {
          "type": "string",
          "enum": [
            "asc",
            "desc",
            "ASC",
            "DESC",
            ""
          ]
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "flowClass": {
          "type": "string",
          "enum": [
            "cloud",
            "edge",
            "embedded",
            "experience",
            "customNode"
          ]
        }
      }
    },
    "flowVersions": {
      "title": "Workflow Versions",
      "description": "Schema for a collection of Workflow Versions",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "title": "Workflow Version",
            "description": "Schema for a single Workflow Version",
            "oneOf": [
              {
                "description": "Schema for a single Cloud/Edge/Embedded/Custom Node Workflow Version",
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "flowVersionId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "flowId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "applicationId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "creationDate": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "lastUpdated": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "createdById": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "createdByType": {
                    "type": "string",
                    "enum": [
                      "flow",
                      "user",
                      "apiToken"
                    ]
                  },
                  "lastUpdatedById": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "lastUpdatedByType": {
                    "type": "string",
                    "enum": [
                      "flow",
                      "user",
                      "apiToken"
                    ]
                  },
                  "version": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "flowClass": {
                    "type": "string",
                    "enum": [
                      "cloud",
                      "edge",
                      "embedded",
                      "customNode"
                    ]
                  },
                  "notes": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "enabled": {
                    "type": "boolean"
                  },
                  "triggers": {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdConnect",
                                "deviceTagConnect",
                                "deviceIdDisconnect",
                                "deviceTagDisconnect",
                                "integration",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "customNodeStart",
                                    "deviceCommand",
                                    "deviceIdsTagsConnect",
                                    "deviceIdsTagsDisconnect",
                                    "eeaInit",
                                    "flowError",
                                    "azureEventHub",
                                    "googlePubSub",
                                    "mqtt",
                                    "notebook",
                                    "onBoot",
                                    "onConnect",
                                    "onDisconnect",
                                    "particle",
                                    "sqs",
                                    "udp",
                                    "webhook",
                                    "resourceJobIteration",
                                    "resourceJobIterationTimeout",
                                    "resourceJobComplete",
                                    "websocket"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "bulkInsert": {
                                  "type": "boolean"
                                },
                                "delete": {
                                  "type": "boolean"
                                },
                                "insert": {
                                  "type": "boolean"
                                },
                                "update": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "dataTable"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "deviceId",
                                "deviceTag"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "attributeBlacklist": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  }
                                },
                                "attributeWhitelist": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  }
                                },
                                "maxAge": {
                                  "type": "number"
                                },
                                "triggerOn": {
                                  "type": "string",
                                  "enum": [
                                    "batch",
                                    "individual",
                                    "both"
                                  ]
                                },
                                "batchBehavior": {
                                  "type": "string",
                                  "enum": [
                                    "once",
                                    "each"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "deviceIdsTags",
                                    "device",
                                    "deviceTag"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "timeUnit": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "maxAgeToggle": {
                                  "type": "boolean"
                                },
                                "allowedAttributeType": {
                                  "type": "string",
                                  "enum": [
                                    "attributeWhitelist",
                                    "any",
                                    "attributeBlacklist"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "deviceIdInactivity",
                                "deviceTagInactivity"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "seconds": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "deviceIdsTagsInactivity"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {},
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "direct"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "experienceVersion": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "endpoint"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "subject": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "new": {
                                  "type": "boolean"
                                },
                                "acknowledged": {
                                  "type": "boolean"
                                },
                                "resolved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "event"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "encoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "byteLength": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiter": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "fileTail"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "fileAdded": {
                                  "type": "boolean"
                                },
                                "fileChanged": {
                                  "type": "boolean"
                                },
                                "fileRemoved": {
                                  "type": "boolean"
                                },
                                "directoryAdded": {
                                  "type": "boolean"
                                },
                                "directoryRemoved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "fileWatch"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "scope": {
                                  "type": "string",
                                  "enum": [
                                    "local",
                                    "global",
                                    "experience",
                                    "cloud"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "flowError"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "mqttTopic"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "integrationId": {
                                  "type": "string",
                                  "enum": [
                                    "losant",
                                    "local",
                                    "external"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "mqtt"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "syncTypes": {
                                  "type": "array",
                                  "maxItems": 3,
                                  "minItems": 1,
                                  "items": {
                                    "type": "string",
                                    "enum": [
                                      "application",
                                      "device",
                                      "peripheral"
                                    ]
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "onSync"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "uri": {
                                  "type": "string",
                                  "format": "uri",
                                  "maxLength": 1024
                                },
                                "securityPolicy": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "securityMode": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "username": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "password": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "cert": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "privateKey": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "nameSpace": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "identifier": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "samplingInterval": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "eventFilter": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "configName": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "opcua"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "redis"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "host": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "port": {
                                  "type": "string",
                                  "maxLength": 16
                                },
                                "password": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "topic": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "fileAdded": {
                                  "type": "boolean"
                                },
                                "fileChanged": {
                                  "type": "boolean"
                                },
                                "fileRemoved": {
                                  "type": "boolean"
                                },
                                "directoryAdded": {
                                  "type": "boolean"
                                },
                                "directoryRemoved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "redisTrigger"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "method": {
                                  "type": "string",
                                  "enum": [
                                    "*",
                                    "delete",
                                    "get",
                                    "options",
                                    "patch",
                                    "post",
                                    "put"
                                  ]
                                },
                                "route": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "request"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "baudRate": {
                                  "type": "number"
                                },
                                "dataBits": {
                                  "type": "number"
                                },
                                "stopBits": {
                                  "type": "number"
                                },
                                "parity": {
                                  "type": "string",
                                  "maxLength": 8
                                },
                                "rtscts": {
                                  "type": "boolean"
                                },
                                "encoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "writeOnOpen": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "writeOnOpenEncoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "byteLength": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiter": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiterEncoding": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "serial"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "parseBy": {
                                  "type": "string",
                                  "enum": [
                                    "byteLength",
                                    "delimiter"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "udpPort": {
                                  "type": "string",
                                  "maxLength": 5
                                },
                                "snmpTrapConfig": {
                                  "type": "object",
                                  "properties": {
                                    "community": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "user": {
                                      "type": "object",
                                      "properties": {
                                        "name": {
                                          "type": "string",
                                          "maxLength": 1024
                                        },
                                        "securityLevel": {
                                          "type": "string",
                                          "enum": [
                                            "none",
                                            "auth",
                                            "authAndEncrypt"
                                          ]
                                        },
                                        "authMethod": {
                                          "type": "string",
                                          "enum": [
                                            "sha",
                                            "md5"
                                          ]
                                        },
                                        "authKey": {
                                          "type": "string",
                                          "maxLength": 1024
                                        },
                                        "encryptionMethod": {
                                          "type": "string",
                                          "enum": [
                                            "aes",
                                            "des"
                                          ]
                                        },
                                        "encryptionKey": {
                                          "type": "string",
                                          "maxLength": 1024
                                        }
                                      },
                                      "required": [
                                        "name",
                                        "securityLevel"
                                      ],
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false
                                }
                              },
                              "required": [
                                "udpPort",
                                "snmpTrapConfig"
                              ],
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "snmpTrap"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "seconds": {
                                  "type": "number"
                                },
                                "cron": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "tz": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "timer"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "timerTypeSelect": {
                                  "type": "string",
                                  "enum": [
                                    "cronWeekly",
                                    "seconds",
                                    "cron"
                                  ]
                                },
                                "timeAt": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "timezone": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "weekdays": {
                                  "type": "array",
                                  "maxItems": 7,
                                  "items": {
                                    "type": "number"
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "virtualButton"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "groupId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "payload": {
                                  "type": "string",
                                  "maxLength": 262144
                                },
                                "deviceId": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^[A-Fa-f\\d]{24}$"
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        ""
                                      ]
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "nodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "config": {
                          "type": "object"
                        },
                        "meta": {
                          "type": "object"
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type"
                      ]
                    }
                  },
                  "globals": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "json": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "key",
                        "json"
                      ]
                    }
                  },
                  "minimumAgentVersion": {
                    "type": "string",
                    "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
                  },
                  "customNodeConfig": {
                    "type": "object",
                    "properties": {
                      "outputCount": {
                        "type": "number",
                        "enum": [
                          1,
                          2
                        ]
                      },
                      "resultMode": {
                        "type": "string",
                        "enum": [
                          "optional",
                          "required",
                          "none"
                        ]
                      },
                      "resultDescription": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "fields": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "checkbox"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "select"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "options": {
                                  "type": "array",
                                  "minItems": 1,
                                  "maxItems": 100,
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "label": {
                                        "type": "string",
                                        "maxLength": 1024
                                      },
                                      "value": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 1024
                                      }
                                    },
                                    "additionalProperties": false,
                                    "required": [
                                      "value"
                                    ]
                                  }
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label",
                                "defaultValue",
                                "options"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "stringTemplate"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "required": {
                                  "type": "boolean"
                                },
                                "validRegExp": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "numberTemplate"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "number"
                                },
                                "required": {
                                  "type": "boolean"
                                },
                                "validMin": {
                                  "type": "number"
                                },
                                "validMax": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "jsonTemplate"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "defaultValue": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "required": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "payloadPath"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "required": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "section"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "id": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "type",
                                "label"
                              ]
                            }
                          ]
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "outputCount",
                      "resultMode",
                      "fields"
                    ]
                  },
                  "stats": {
                    "type": "object",
                    "properties": {
                      "runCount": {
                        "type": "number"
                      },
                      "errorCount": {
                        "type": "number"
                      },
                      "byVersion": {
                        "type": "object",
                        "patternProperties": {
                          ".*": {
                            "type": "object",
                            "properties": {
                              "runCount": {
                                "type": "number"
                              },
                              "errorCount": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "description": "Schema for a single Experience Workflow Version",
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "flowVersionId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "flowId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "applicationId": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  "creationDate": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "lastUpdated": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "flowClass": {
                    "type": "string",
                    "enum": [
                      "experience"
                    ]
                  },
                  "versions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "enabled": {
                    "type": "boolean"
                  },
                  "triggers": {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdConnect",
                                "deviceTagConnect",
                                "deviceIdDisconnect",
                                "deviceTagDisconnect",
                                "integration",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "customNodeStart",
                                    "deviceCommand",
                                    "deviceIdsTagsConnect",
                                    "deviceIdsTagsDisconnect",
                                    "eeaInit",
                                    "flowError",
                                    "azureEventHub",
                                    "googlePubSub",
                                    "mqtt",
                                    "notebook",
                                    "onBoot",
                                    "onConnect",
                                    "onDisconnect",
                                    "particle",
                                    "sqs",
                                    "udp",
                                    "webhook",
                                    "resourceJobIteration",
                                    "resourceJobIterationTimeout",
                                    "resourceJobComplete",
                                    "websocket"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "bulkInsert": {
                                  "type": "boolean"
                                },
                                "delete": {
                                  "type": "boolean"
                                },
                                "insert": {
                                  "type": "boolean"
                                },
                                "update": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "dataTable"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "deviceId",
                                "deviceTag"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "attributeBlacklist": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  }
                                },
                                "attributeWhitelist": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                                  }
                                },
                                "maxAge": {
                                  "type": "number"
                                },
                                "triggerOn": {
                                  "type": "string",
                                  "enum": [
                                    "batch",
                                    "individual",
                                    "both"
                                  ]
                                },
                                "batchBehavior": {
                                  "type": "string",
                                  "enum": [
                                    "once",
                                    "each"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "deviceIdsTags",
                                    "device",
                                    "deviceTag"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "timeUnit": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "maxAgeToggle": {
                                  "type": "boolean"
                                },
                                "allowedAttributeType": {
                                  "type": "string",
                                  "enum": [
                                    "attributeWhitelist",
                                    "any",
                                    "attributeBlacklist"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "deviceIdInactivity",
                                "deviceTagInactivity"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "seconds": {
                                  "type": "number"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "deviceIdsTagsInactivity"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {},
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "direct"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "experienceVersion": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "endpoint"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "subject": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "new": {
                                  "type": "boolean"
                                },
                                "acknowledged": {
                                  "type": "boolean"
                                },
                                "resolved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "event"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "encoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "byteLength": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiter": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "fileTail"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "fileAdded": {
                                  "type": "boolean"
                                },
                                "fileChanged": {
                                  "type": "boolean"
                                },
                                "fileRemoved": {
                                  "type": "boolean"
                                },
                                "directoryAdded": {
                                  "type": "boolean"
                                },
                                "directoryRemoved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "fileWatch"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "scope": {
                                  "type": "string",
                                  "enum": [
                                    "local",
                                    "global",
                                    "experience",
                                    "cloud"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "flowError"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "mqttTopic"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "integrationId": {
                                  "type": "string",
                                  "enum": [
                                    "losant",
                                    "local",
                                    "external"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "mqtt"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "syncTypes": {
                                  "type": "array",
                                  "maxItems": 3,
                                  "minItems": 1,
                                  "items": {
                                    "type": "string",
                                    "enum": [
                                      "application",
                                      "device",
                                      "peripheral"
                                    ]
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "onSync"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "uri": {
                                  "type": "string",
                                  "format": "uri",
                                  "maxLength": 1024
                                },
                                "securityPolicy": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "securityMode": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "username": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "password": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "cert": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "privateKey": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "nameSpace": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "identifier": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "samplingInterval": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "eventFilter": {
                                  "type": "array",
                                  "maxItems": 100,
                                  "items": {
                                    "type": "string",
                                    "maxLength": 255
                                  }
                                },
                                "configName": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "opcua"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "redis"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "host": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "port": {
                                  "type": "string",
                                  "maxLength": 16
                                },
                                "password": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "topic": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "fileAdded": {
                                  "type": "boolean"
                                },
                                "fileChanged": {
                                  "type": "boolean"
                                },
                                "fileRemoved": {
                                  "type": "boolean"
                                },
                                "directoryAdded": {
                                  "type": "boolean"
                                },
                                "directoryRemoved": {
                                  "type": "boolean"
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "redisTrigger"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "method": {
                                  "type": "string",
                                  "enum": [
                                    "*",
                                    "delete",
                                    "get",
                                    "options",
                                    "patch",
                                    "post",
                                    "put"
                                  ]
                                },
                                "route": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "request"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "triggerId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "path": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "baudRate": {
                                  "type": "number"
                                },
                                "dataBits": {
                                  "type": "number"
                                },
                                "stopBits": {
                                  "type": "number"
                                },
                                "parity": {
                                  "type": "string",
                                  "maxLength": 8
                                },
                                "rtscts": {
                                  "type": "boolean"
                                },
                                "encoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "writeOnOpen": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "writeOnOpenEncoding": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "byteLength": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiter": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "delimiterEncoding": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "serial"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "parseBy": {
                                  "type": "string",
                                  "enum": [
                                    "byteLength",
                                    "delimiter"
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "udpPort": {
                                  "type": "string",
                                  "maxLength": 5
                                },
                                "snmpTrapConfig": {
                                  "type": "object",
                                  "properties": {
                                    "community": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "user": {
                                      "type": "object",
                                      "properties": {
                                        "name": {
                                          "type": "string",
                                          "maxLength": 1024
                                        },
                                        "securityLevel": {
                                          "type": "string",
                                          "enum": [
                                            "none",
                                            "auth",
                                            "authAndEncrypt"
                                          ]
                                        },
                                        "authMethod": {
                                          "type": "string",
                                          "enum": [
                                            "sha",
                                            "md5"
                                          ]
                                        },
                                        "authKey": {
                                          "type": "string",
                                          "maxLength": 1024
                                        },
                                        "encryptionMethod": {
                                          "type": "string",
                                          "enum": [
                                            "aes",
                                            "des"
                                          ]
                                        },
                                        "encryptionKey": {
                                          "type": "string",
                                          "maxLength": 1024
                                        }
                                      },
                                      "required": [
                                        "name",
                                        "securityLevel"
                                      ],
                                      "additionalProperties": false
                                    }
                                  },
                                  "additionalProperties": false
                                }
                              },
                              "required": [
                                "udpPort",
                                "snmpTrapConfig"
                              ],
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "snmpTrap"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "properties": {
                                "seconds": {
                                  "type": "number"
                                },
                                "cron": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "tz": {
                                  "type": "string",
                                  "maxLength": 255
                                }
                              },
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "timer"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "timerTypeSelect": {
                                  "type": "string",
                                  "enum": [
                                    "cronWeekly",
                                    "seconds",
                                    "cron"
                                  ]
                                },
                                "timeAt": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "timezone": {
                                  "type": "string",
                                  "maxLength": 255
                                },
                                "weekdays": {
                                  "type": "array",
                                  "maxItems": 7,
                                  "items": {
                                    "type": "number"
                                  }
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "config": {
                              "type": "object",
                              "additionalProperties": false
                            },
                            "meta": {
                              "type": "object",
                              "properties": {
                                "category": {
                                  "type": "string",
                                  "enum": [
                                    "trigger"
                                  ]
                                },
                                "name": {
                                  "type": "string",
                                  "enum": [
                                    "virtualButton"
                                  ]
                                },
                                "label": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 255
                                },
                                "x": {
                                  "type": "number"
                                },
                                "y": {
                                  "type": "number"
                                },
                                "uiId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "groupId": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "description": {
                                  "type": "string",
                                  "maxLength": 32767
                                },
                                "icon": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "color": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "inputCount": {
                                  "type": "number"
                                },
                                "outputCount": {
                                  "type": "number"
                                },
                                "id": {
                                  "type": "string",
                                  "maxLength": 48
                                },
                                "payload": {
                                  "type": "string",
                                  "maxLength": 262144
                                },
                                "deviceId": {
                                  "oneOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^[A-Fa-f\\d]{24}$"
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        ""
                                      ]
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                }
                              },
                              "additionalProperties": false
                            },
                            "outputIds": {
                              "type": "array",
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "maxLength": 48,
                                  "minLength": 1
                                },
                                "maxItems": 100
                              },
                              "maxItems": 100
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "nodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "config": {
                          "type": "object"
                        },
                        "meta": {
                          "type": "object"
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type"
                      ]
                    }
                  },
                  "globals": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        "json": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "key",
                        "json"
                      ]
                    }
                  },
                  "stats": {
                    "type": "object",
                    "properties": {
                      "runCount": {
                        "type": "number"
                      },
                      "errorCount": {
                        "type": "number"
                      },
                      "byVersion": {
                        "type": "object",
                        "patternProperties": {
                          ".*": {
                            "type": "object",
                            "properties": {
                              "runCount": {
                                "type": "number"
                              },
                              "errorCount": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        },
        "count": {
          "type": "integer"
        },
        "totalCount": {
          "type": "integer"
        },
        "perPage": {
          "type": "integer"
        },
        "page": {
          "type": "integer"
        },
        "filter": {
          "type": "string"
        },
        "filterField": {
          "type": "string"
        },
        "sortField": {
          "type": "string"
        },
        "sortDirection": {
          "type": "string",
          "enum": [
            "asc",
            "desc",
            "ASC",
            "DESC",
            ""
          ]
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "flowId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        }
      }
    }
  },
  "additionalProperties": false
}

Experience Linked Resources Example

{
  "experienceViews": {
    "items": [
      {
        "id": "59cc5c628246c6caed4b16c1",
        "experienceViewId": "59cc5c628246c6caed4b16c1",
        "applicationId": "575ec8687ae143cd83dc4a97",
        "creationDate": "2016-06-13T04:00:00.000Z",
        "lastUpdated": "2016-06-13T04:00:00.000Z",
        "name": "My Page View",
        "viewType": "page",
        "body": "<p>{{data}}</p>",
        "layoutId": "59cc5cad8246c6caed4b16c2",
        "viewTags": {
          "customKey": "customValue"
        }
      }
    ],
    "count": 1,
    "totalCount": 4,
    "perPage": 1,
    "page": 0,
    "sortField": "name",
    "sortDirection": "asc",
    "applicationId": "575ec8687ae143cd83dc4a97"
  },
  "experienceEndpoints": {
    "items": [
      {
        "id": "58c1de6c8f812590d8e82980",
        "experienceEndpointId": "58c1de6c8f812590d8e82980",
        "applicationId": "575ec8687ae143cd83dc4a97",
        "creationDate": "2016-06-13T04:00:00.000Z",
        "lastUpdated": "2016-06-13T04:00:00.000Z",
        "route": "/my/route/{id}",
        "enabled": true,
        "method": "get",
        "access": "group",
        "experienceGroups": [
          {
            "name": "myGroup",
            "id": "58b9d794cbfafe1be675744f"
          }
        ]
      }
    ],
    "count": 1,
    "totalCount": 4,
    "perPage": 1,
    "page": 0,
    "sortField": "name",
    "sortDirection": "asc",
    "applicationId": "575ec8687ae143cd83dc4a97"
  },
  "flows": {
    "items": [
      {
        "id": "575ed18f7ae143cd83dc4aa6",
        "flowId": "575ed18f7ae143cd83dc4aa6",
        "applicationId": "575ec8687ae143cd83dc4a97",
        "creationDate": "2016-06-13T04:00:00.000Z",
        "lastUpdated": "2016-06-13T04:00:00.000Z",
        "name": "My Workflow",
        "description": "Description of my empty workflow",
        "enabled": true,
        "triggers": [],
        "nodes": [],
        "globals": [],
        "stats": {
          "runCount": 0,
          "errorCount": 0
        }
      }
    ],
    "count": 1,
    "totalCount": 4,
    "perPage": 1,
    "page": 0,
    "sortField": "name",
    "sortDirection": "asc",
    "applicationId": "575ec8687ae143cd83dc4a97"
  },
  "flowVersions": {
    "items": [
      {
        "id": "675ed18f7ae143cd83dc4bb7",
        "flowVersionId": "675ed18f7ae143cd83dc4bb7",
        "flowId": "575ed18f7ae143cd83dc4aa6",
        "applicationId": "575ec8687ae143cd83dc4a97",
        "creationDate": "2016-06-13T04:00:00.000Z",
        "lastUpdated": "2016-06-13T04:00:00.000Z",
        "description": "Description of my workflow version",
        "flowClass": "experience",
        "versions": [
          "v1.2.3"
        ],
        "enabled": true,
        "triggers": [],
        "nodes": [],
        "globals": []
      }
    ],
    "count": 1,
    "totalCount": 4,
    "perPage": 1,
    "page": 0,
    "sortField": "version",
    "sortDirection": "asc",
    "applicationId": "575ec8687ae143cd83dc4a97",
    "flowId": "575ed18f7ae143cd83dc4aa6"
  }
}

Experience Slug

Schema for a single Experience Slug

Experience Slug Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceSlugId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "slug": {
      "type": "string",
      "minLength": 3,
      "maxLength": 63,
      "pattern": "^[0-9a-z-]*$"
    },
    "version": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    }
  }
}

Experience Slug Example

{
  "id": "5b995e51ea9994b50d745284",
  "experienceSlugId": "5b995e51ea9994b50d745284",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "slug": "my-custom-slug",
  "version": "develop"
}

Experience Slug Patch

Schema for the body of an Experience Slug modification request

Experience Slug Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "version": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ]
    },
    "slug": {
      "type": "string",
      "minLength": 3,
      "maxLength": 63,
      "pattern": "^[0-9a-z-]*$"
    }
  },
  "additionalProperties": false
}

Experience Slug Patch Example

{
  "slug": "my-new-slug",
  "version": null
}

Experience Slug Post

Schema for the body of an Experience Slug creation request

Experience Slug Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "version": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ]
    },
    "slug": {
      "type": "string",
      "minLength": 3,
      "maxLength": 63,
      "pattern": "^[0-9a-z-]*$"
    }
  },
  "additionalProperties": false,
  "required": [
    "slug"
  ]
}

Experience Slug Post Example

{
  "slug": "my-custom-slug",
  "version": "develop"
}

Experience Slugs

Schema for a collection of Experience Slugs

Experience Slugs Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Experience Slug",
        "description": "Schema for a single Experience Slug",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "experienceSlugId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "slug": {
            "type": "string",
            "minLength": 3,
            "maxLength": 63,
            "pattern": "^[0-9a-z-]*$"
          },
          "version": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Experience Slugs Example

{
  "items": [
    {
      "id": "5b995e51ea9994b50d745284",
      "experienceSlugId": "5b995e51ea9994b50d745284",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "slug": "my-custom-slug",
      "version": "develop"
    }
  ],
  "count": 1,
  "totalCount": 1,
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Experience User

Schema for a single Experience User

Experience User Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceUserId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "passwordLastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "lastLogin": {
      "type": "string",
      "format": "date-time"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "avatarUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "tokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "userTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "experienceGroups": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "parentId": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      }
    }
  }
}

Experience User Example

{
  "id": "58b9d782cbfafe1be675744d",
  "experienceUserId": "58b9d782cbfafe1be675744d",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "passwordLastUpdated": "2016-06-13T04:00:00.000Z",
  "lastLogin": "2016-06-13T04:00:00.000Z",
  "email": "experienceuser@example.com",
  "firstName": "Example",
  "lastName": "Name",
  "avatarUrl": "https://example.avatar.url/is_here.png",
  "userTags": {
    "customKey": "customValue"
  }
}

Experience User Patch

Schema for the body of an Experience User modification request

Experience User Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "password": {
      "type": "string",
      "minLength": 8,
      "maxLength": 2048
    },
    "tokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "userTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "experienceGroupIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    }
  },
  "additionalProperties": false
}

Experience User Patch Example

{
  "password": "aNewPassword",
  "userTags": {
    "customKey": "newCustomValue"
  }
}

Experience User Post

Schema for the body of an Experience User creation request

Experience User Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "password": {
      "type": "string",
      "minLength": 8,
      "maxLength": 2048
    },
    "tokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "userTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    },
    "experienceGroupIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    }
  },
  "additionalProperties": false,
  "required": [
    "email",
    "password"
  ]
}

Experience User Post Example

{
  "email": "experienceuser@example.com",
  "firstName": "Example",
  "lastName": "Name",
  "password": "aUserPassword",
  "userTags": {
    "customKey": "customValue"
  }
}

Experience Users

Schema for a collection of Experience Users

Experience Users Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Experience User",
        "description": "Schema for a single Experience User",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "experienceUserId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "passwordLastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "lastLogin": {
            "type": "string",
            "format": "date-time"
          },
          "email": {
            "type": "string",
            "format": "email",
            "maxLength": 1024
          },
          "firstName": {
            "type": "string",
            "maxLength": 1024
          },
          "lastName": {
            "type": "string",
            "maxLength": 1024
          },
          "avatarUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "tokenCutoff": {
            "type": "string",
            "format": "date-time"
          },
          "userTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          },
          "experienceGroups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                },
                "id": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "parentId": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceGroupId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Experience Users Example

{
  "items": [
    {
      "id": "58b9d782cbfafe1be675744d",
      "experienceUserId": "58b9d782cbfafe1be675744d",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "passwordLastUpdated": "2016-06-13T04:00:00.000Z",
      "lastLogin": "2016-06-13T04:00:00.000Z",
      "email": "experienceuser@example.com",
      "firstName": "Example",
      "lastName": "Name",
      "avatarUrl": "https://example.avatar.url/is_here.png",
      "userTags": {
        "customKey": "customValue"
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Experience Version

Schema for a single Experience Version

Experience Version Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceVersionId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "createdById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "createdByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdatedById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdatedByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "endpointDefaultCors": {
      "type": "boolean"
    },
    "allowedCorsOrigins": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 8,
        "maxLength": 270
      },
      "maxItems": 100
    },
    "version": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          },
          "description": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "attachedDomains": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "domainName": {
            "type": "string",
            "maxLength": 45,
            "minLength": 3
          },
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          }
        }
      }
    },
    "attachedSlugs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          }
        }
      }
    }
  }
}

Experience Version Example

{
  "id": "5b995ec6ea9994b50d745285",
  "experienceVersionId": "5b995ec6ea9994b50d745285",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "version": "myVersionName",
  "endpointDefaultCors": true,
  "attachedDomains": [
    {
      "id": "58c1de6c8f812590d8e82980",
      "domainName": "my.domain.example.com"
    }
  ],
  "attachedSlugs": [
    {
      "id": "5b995e51ea9994b50d745284",
      "slug": "my-custom-slug"
    }
  ]
}

Experience Version Patch

Schema for the body of an Experience Version modification request

Experience Version Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "endpointDefaultCors": {
      "type": "boolean"
    },
    "allowedCorsOrigins": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 8,
        "maxLength": 270
      },
      "maxItems": 100
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          },
          "description": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "sourceVersionIdOrName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    }
  },
  "additionalProperties": false
}

Experience Version Patch Example

{
  "endpointDefaultCors": false
}

Experience Version Post

Schema for the body of an Experience Version creation request

Experience Version Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "version": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "domainIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "slugIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "endpointDefaultCors": {
      "type": "boolean"
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          },
          "description": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "allowedCorsOrigins": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 8,
        "maxLength": 270
      },
      "maxItems": 100
    }
  },
  "additionalProperties": false,
  "required": [
    "version"
  ]
}

Experience Version Post Example

{
  "version": "myNewVersion",
  "description": "my version description",
  "domainIds": [
    "58c1de6c8f812590d8e82980"
  ],
  "slugIds": [
    "5b995e51ea9994b50d745284"
  ]
}

Experience Versions

Schema for a collection of Experience Versions

Experience Versions Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Experience Version",
        "description": "Schema for a single Experience Version",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "experienceVersionId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "createdById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdatedById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "lastUpdatedByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "endpointDefaultCors": {
            "type": "boolean"
          },
          "allowedCorsOrigins": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 8,
              "maxLength": 270
            },
            "maxItems": 100
          },
          "version": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "globals": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "json": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 32767
                },
                "description": {
                  "type": "string",
                  "maxLength": 1024
                }
              },
              "additionalProperties": false,
              "required": [
                "key",
                "json"
              ]
            }
          },
          "attachedDomains": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "domainName": {
                  "type": "string",
                  "maxLength": 45,
                  "minLength": 3
                },
                "id": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                }
              }
            }
          },
          "attachedSlugs": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "slug": {
                  "type": "string"
                },
                "id": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Experience Versions Example

{
  "items": [
    {
      "id": "5b995ec6ea9994b50d745285",
      "experienceVersionId": "5b995ec6ea9994b50d745285",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "version": "myVersionName",
      "endpointDefaultCors": true,
      "attachedDomains": [
        {
          "id": "58c1de6c8f812590d8e82980",
          "domainName": "my.domain.example.com"
        }
      ],
      "attachedSlugs": [
        {
          "id": "5b995e51ea9994b50d745284",
          "slug": "my-custom-slug"
        }
      ]
    }
  ],
  "count": 1,
  "totalCount": 1,
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Experience View

Schema for a single Experience View

Experience View Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "experienceViewId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "createdById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "createdByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "lastUpdatedById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdatedByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "viewType": {
      "type": "string",
      "enum": [
        "layout",
        "page",
        "component"
      ]
    },
    "layoutId": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "layoutName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "body": {
      "type": "string",
      "maxLength": 131072
    },
    "viewTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    }
  }
}

Experience View Example

{
  "id": "59cc5c628246c6caed4b16c1",
  "experienceViewId": "59cc5c628246c6caed4b16c1",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "My Page View",
  "viewType": "page",
  "body": "<p>{{data}}</p>",
  "layoutId": "59cc5cad8246c6caed4b16c2",
  "viewTags": {
    "customKey": "customValue"
  }
}

Experience View Patch

Schema for the body of an Experience View modification request

Experience View Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "layoutId": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "body": {
      "type": "string",
      "maxLength": 131072
    },
    "viewTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

Experience View Patch Example

{
  "body": "New Content! <p>{{newData}}</p>",
  "viewTags": {
    "customKey": "newCustomValue"
  }
}

Experience View Post

Schema for the body of an Experience View creation request

Experience View Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "viewType": {
      "type": "string",
      "enum": [
        "layout",
        "page",
        "component"
      ]
    },
    "layoutId": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "body": {
      "type": "string",
      "maxLength": 131072
    },
    "viewTags": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false,
  "required": [
    "name",
    "viewType"
  ]
}

Experience View Post Example

{
  "name": "My Page View",
  "viewType": "page",
  "body": "<p>{{data}}</p>",
  "layoutId": "59cc5cad8246c6caed4b16c2",
  "viewTags": {
    "customKey": "customValue"
  }
}

Experience Views

Schema for a collection of Experience Views

Experience Views Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Experience View",
        "description": "Schema for a single Experience View",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "experienceViewId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "createdById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "lastUpdatedById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "lastUpdatedByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "viewType": {
            "type": "string",
            "enum": [
              "layout",
              "page",
              "component"
            ]
          },
          "layoutId": {
            "type": [
              "string",
              "null"
            ],
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "layoutName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "body": {
            "type": "string",
            "maxLength": 131072
          },
          "viewTags": {
            "type": "object",
            "patternProperties": {
              "^[0-9a-zA-Z_-]{1,255}$": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            },
            "additionalProperties": false
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "viewType": {
      "type": "string",
      "enum": [
        "layout",
        "page",
        "component"
      ]
    }
  }
}

Experience Views Example

{
  "items": [
    {
      "id": "59cc5c628246c6caed4b16c1",
      "experienceViewId": "59cc5c628246c6caed4b16c1",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Page View",
      "viewType": "page",
      "body": "<p>{{data}}</p>",
      "layoutId": "59cc5cad8246c6caed4b16c2",
      "viewTags": {
        "customKey": "customValue"
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

File Schema

Schema for a single file

File Schema Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "authorId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "authorType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "device",
        "apiToken",
        "notebook"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "pending",
        "moving",
        "deleting",
        "completed"
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "parentDirectory": {
      "type": "string",
      "maxLength": 1024
    },
    "type": {
      "type": "string",
      "enum": [
        "file",
        "directory"
      ]
    },
    "fileSize": {
      "type": "number"
    },
    "s3etag": {
      "type": "string"
    },
    "contentType": {
      "type": "string",
      "maxLength": 1024
    },
    "fileDimensions": {
      "type": "object",
      "properties": {
        "width": {
          "type": "number"
        },
        "height": {
          "type": "number"
        }
      }
    },
    "moveIntoId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "url": {
      "type": "string"
    }
  }
}

File Schema Example

{
  "id": "575ec8687ae143cd83dc4a97",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "authorId": "575ed70c7ae143cd83dc4aa9",
  "authorType": "user",
  "status": "pending",
  "name": "file.csv",
  "type": "file",
  "parentDirectory": "/",
  "fileSize": 500,
  "contentType": "text/csv"
}

File Patch

Schema to patch a file

File Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "fileSize": {
      "type": "number"
    },
    "contentType": {
      "type": "string",
      "maxLength": 1024
    },
    "fileDimensions": {
      "type": "object",
      "properties": {
        "width": {
          "type": "number"
        },
        "height": {
          "type": "number"
        }
      }
    }
  }
}

File Patch Example

{
  "fileSize": 500,
  "contentType": "image",
  "fileDimensions": {
    "width": 200,
    "height": 200
  }
}

File Post

Schema to create a single file or directory

File Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "parentDirectory": {
      "type": "string",
      "maxLength": 1024
    },
    "type": {
      "type": "string",
      "enum": [
        "file",
        "directory"
      ]
    },
    "fileSize": {
      "type": "number"
    },
    "contentType": {
      "type": "string",
      "maxLength": 1024
    },
    "fileDimensions": {
      "type": "object",
      "properties": {
        "width": {
          "type": "number"
        },
        "height": {
          "type": "number"
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false,
  "required": [
    "name",
    "type"
  ]
}

File Post Example

{
  "name": "file.csv",
  "type": "file",
  "parentDirectory": "/",
  "fileSize": 500,
  "contentType": "text/csv"
}

File Upload Post Response

Schema to upload the file to s3

File Upload Post Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "authorId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "authorType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "device",
        "apiToken",
        "notebook"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "pending",
        "moving",
        "deleting",
        "completed"
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "parentDirectory": {
      "type": "string",
      "maxLength": 1024
    },
    "type": {
      "type": "string",
      "enum": [
        "file",
        "directory"
      ]
    },
    "fileSize": {
      "type": "number"
    },
    "contentType": {
      "type": "string",
      "maxLength": 1024
    },
    "fileDimensions": {
      "type": "object",
      "properties": {
        "width": {
          "type": "number"
        },
        "height": {
          "type": "number"
        }
      }
    },
    "upload": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string"
        },
        "fields": {
          "type": "object",
          "patternProperties": {
            "^.*$": {
              "type": "string"
            }
          },
          "properties": {
            "key": {
              "type": "string"
            },
            "bucket": {
              "type": "string"
            }
          }
        }
      }
    }
  }
}

File Upload Post Response Example

{
  "id": "575ec8687ae143cd83dc4a97",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "authorId": "575ed70c7ae143cd83dc4aa9",
  "authorType": "user",
  "status": "pending",
  "name": "file.csv",
  "type": "file",
  "parentDirectory": "/",
  "fileSize": 500,
  "contentType": "text/csv",
  "upload": {
    "url": "https://example.com/the-bucket-name",
    "fields": {
      "key": "5630dcbe1035c9d0011/file.js",
      "bucket": "the-bucket-name",
      "X-Amz-Algorithm": "AWS4-HMAC-SHA256",
      "X-Amz-Credential": "AKIAJPGQGBQX4PYM6FXA/20180416/us-west-1/s3/aws4_request",
      "X-Amz-Date": "20180416T142402Z",
      "Policy": "wMloiLCJjb25kaXRpb25zIjpbeyJrZXkiOiI1NjMwZGNiZTEwM2Y4ZTQ4NWM5ZDAwMTEvZmlsZS5qcyJ9LHsiYnVja2V0IjoibG9zYW50LWZpbGVzIn0seyJYLUFtei1BbGdvcml0aG0iOiJBV1M0LUhNQUMtU0hBMjU2In0seyJYLUFtei1DcmVkZW50aWFsIjoiQUtJQUpQR1FHQlFYNFBZTTZGWEEvMjAxODA0MTYvdXMtd2VzdC0xL3MzL2F3czRfcmVxdWVzdCJ9LHsiWC1BbXotRGF0ZSI6IjIwMTgwNDE2VDE0MjQwMloifV19",
      "X-Amz-Signature": "a4a411df572c43b4427ff08ef51763bc2d834fa399c3688f347d936370"
    }
  }
}

Files Schema

Schema for a collection of files

Files Schema Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "File Schema",
        "description": "Schema for a single file",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "authorId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "authorType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "device",
              "apiToken",
              "notebook"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "pending",
              "moving",
              "deleting",
              "completed"
            ]
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "parentDirectory": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "enum": [
              "file",
              "directory"
            ]
          },
          "fileSize": {
            "type": "number"
          },
          "s3etag": {
            "type": "string"
          },
          "contentType": {
            "type": "string",
            "maxLength": 1024
          },
          "fileDimensions": {
            "type": "object",
            "properties": {
              "width": {
                "type": "number"
              },
              "height": {
                "type": "number"
              }
            }
          },
          "moveIntoId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "url": {
            "type": "string"
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "parentExists": {
      "type": "boolean"
    }
  }
}

Files Schema Example

{
  "items": [
    {
      "id": "575ec8687ae143cd83dc4a97",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "authorId": "575ed70c7ae143cd83dc4aa9",
      "authorType": "user",
      "status": "pending",
      "name": "file.csv",
      "type": "file",
      "parentDirectory": "/",
      "fileSize": 500,
      "contentType": "text/csv"
    },
    {
      "id": "575ec8687ae143cd83dc4a96",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "authorId": "575ed70c7ae143cd83dc4aa9",
      "authorType": "user",
      "status": "completed",
      "name": "b",
      "type": "directory",
      "parentDirectory": "/a/",
      "fileSize": 500,
      "contentType": "text/csv"
    }
  ],
  "count": 2
}

Workflow

Schema for a single Workflow

Workflow Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "createdById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "createdByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "lastUpdatedById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdatedByType": {
      "type": "string",
      "enum": [
        "flow",
        "user",
        "apiToken"
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "shortDescription": {
      "type": "string",
      "maxLength": 1024
    },
    "iconData": {
      "type": "string",
      "maxLength": 32767,
      "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
    },
    "docsUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "category": {
      "type": "string",
      "enum": [
        "data",
        "experience",
        "logic",
        "output",
        "debug"
      ]
    },
    "enabled": {
      "type": "boolean"
    },
    "defaultVersionId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "minimumAgentVersion": {
      "type": "string",
      "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
    },
    "flowClass": {
      "type": "string",
      "enum": [
        "cloud",
        "edge",
        "embedded",
        "experience",
        "customNode"
      ]
    },
    "triggers": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "customNodeStart",
                  "deviceCommand",
                  "deviceIdConnect",
                  "deviceTagConnect",
                  "deviceIdDisconnect",
                  "deviceTagDisconnect",
                  "integration",
                  "notebook",
                  "onBoot",
                  "onConnect",
                  "onDisconnect",
                  "udp",
                  "webhook",
                  "resourceJobIteration",
                  "resourceJobIterationTimeout",
                  "resourceJobComplete"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "customNodeStart",
                      "deviceCommand",
                      "deviceIdsTagsConnect",
                      "deviceIdsTagsDisconnect",
                      "eeaInit",
                      "flowError",
                      "azureEventHub",
                      "googlePubSub",
                      "mqtt",
                      "notebook",
                      "onBoot",
                      "onConnect",
                      "onDisconnect",
                      "particle",
                      "sqs",
                      "udp",
                      "webhook",
                      "resourceJobIteration",
                      "resourceJobIterationTimeout",
                      "resourceJobComplete",
                      "websocket"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "bulkInsert": {
                    "type": "boolean"
                  },
                  "delete": {
                    "type": "boolean"
                  },
                  "insert": {
                    "type": "boolean"
                  },
                  "update": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "dataTable"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceId",
                  "deviceTag"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "attributeBlacklist": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    }
                  },
                  "attributeWhitelist": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    }
                  },
                  "maxAge": {
                    "type": "number"
                  },
                  "triggerOn": {
                    "type": "string",
                    "enum": [
                      "batch",
                      "individual",
                      "both"
                    ]
                  },
                  "batchBehavior": {
                    "type": "string",
                    "enum": [
                      "once",
                      "each"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "deviceIdsTags",
                      "device",
                      "deviceTag"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "timeUnit": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "maxAgeToggle": {
                    "type": "boolean"
                  },
                  "allowedAttributeType": {
                    "type": "string",
                    "enum": [
                      "attributeWhitelist",
                      "any",
                      "attributeBlacklist"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceIdInactivity",
                  "deviceTagInactivity"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "seconds": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "deviceIdsTagsInactivity"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "direct"
                ]
              },
              "config": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "direct"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "endpoint"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "experienceVersion": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "endpoint"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "event"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "subject": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "new": {
                    "type": "boolean"
                  },
                  "acknowledged": {
                    "type": "boolean"
                  },
                  "resolved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "event"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "fileTail"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "encoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "byteLength": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiter": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "fileTail"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "fileWatch"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "fileAdded": {
                    "type": "boolean"
                  },
                  "fileChanged": {
                    "type": "boolean"
                  },
                  "fileRemoved": {
                    "type": "boolean"
                  },
                  "directoryAdded": {
                    "type": "boolean"
                  },
                  "directoryRemoved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "fileWatch"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "flowError"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "scope": {
                    "type": "string",
                    "enum": [
                      "local",
                      "global",
                      "experience",
                      "cloud"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "flowError"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "mqttTopic"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "integrationId": {
                    "type": "string",
                    "enum": [
                      "losant",
                      "local",
                      "external"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "mqtt"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "onSync"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "syncTypes": {
                    "type": "array",
                    "maxItems": 3,
                    "minItems": 1,
                    "items": {
                      "type": "string",
                      "enum": [
                        "application",
                        "device",
                        "peripheral"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "onSync"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "opcua"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "uri": {
                    "type": "string",
                    "format": "uri",
                    "maxLength": 1024
                  },
                  "securityPolicy": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "securityMode": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "username": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "password": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "cert": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "privateKey": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "nameSpace": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "identifier": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "samplingInterval": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "eventFilter": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "configName": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "opcua"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "redis"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "host": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "port": {
                    "type": "string",
                    "maxLength": 16
                  },
                  "password": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "topic": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "fileAdded": {
                    "type": "boolean"
                  },
                  "fileChanged": {
                    "type": "boolean"
                  },
                  "fileRemoved": {
                    "type": "boolean"
                  },
                  "directoryAdded": {
                    "type": "boolean"
                  },
                  "directoryRemoved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "redisTrigger"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "request"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "method": {
                    "type": "string",
                    "enum": [
                      "*",
                      "delete",
                      "get",
                      "options",
                      "patch",
                      "post",
                      "put"
                    ]
                  },
                  "route": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "request"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "serial"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "baudRate": {
                    "type": "number"
                  },
                  "dataBits": {
                    "type": "number"
                  },
                  "stopBits": {
                    "type": "number"
                  },
                  "parity": {
                    "type": "string",
                    "maxLength": 8
                  },
                  "rtscts": {
                    "type": "boolean"
                  },
                  "encoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "writeOnOpen": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "writeOnOpenEncoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "byteLength": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiter": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiterEncoding": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "serial"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "parseBy": {
                    "type": "string",
                    "enum": [
                      "byteLength",
                      "delimiter"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "snmpTrap"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "udpPort": {
                    "type": "string",
                    "maxLength": 5
                  },
                  "snmpTrapConfig": {
                    "type": "object",
                    "properties": {
                      "community": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "user": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "securityLevel": {
                            "type": "string",
                            "enum": [
                              "none",
                              "auth",
                              "authAndEncrypt"
                            ]
                          },
                          "authMethod": {
                            "type": "string",
                            "enum": [
                              "sha",
                              "md5"
                            ]
                          },
                          "authKey": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "encryptionMethod": {
                            "type": "string",
                            "enum": [
                              "aes",
                              "des"
                            ]
                          },
                          "encryptionKey": {
                            "type": "string",
                            "maxLength": 1024
                          }
                        },
                        "required": [
                          "name",
                          "securityLevel"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "udpPort",
                  "snmpTrapConfig"
                ],
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "snmpTrap"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "timer"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "seconds": {
                    "type": "number"
                  },
                  "cron": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "tz": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "timer"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "timerTypeSelect": {
                    "type": "string",
                    "enum": [
                      "cronWeekly",
                      "seconds",
                      "cron"
                    ]
                  },
                  "timeAt": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "timezone": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "weekdays": {
                    "type": "array",
                    "maxItems": 7,
                    "items": {
                      "type": "number"
                    }
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "virtualButton"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "virtualButton"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "groupId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "payload": {
                    "type": "string",
                    "maxLength": 262144
                  },
                  "deviceId": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      {
                        "type": "string",
                        "enum": [
                          ""
                        ]
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "config": {
            "type": "object"
          },
          "meta": {
            "type": "object"
          },
          "outputIds": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 48,
                "minLength": 1
              },
              "maxItems": 100
            },
            "maxItems": 100
          }
        },
        "additionalProperties": false,
        "required": [
          "type"
        ]
      }
    },
    "customNodeConfig": {
      "type": "object",
      "properties": {
        "outputCount": {
          "type": "number",
          "enum": [
            1,
            2
          ]
        },
        "resultMode": {
          "type": "string",
          "enum": [
            "optional",
            "required",
            "none"
          ]
        },
        "resultDescription": {
          "type": "string",
          "maxLength": 32767
        },
        "fields": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "checkbox"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "select"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "options": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "value"
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label",
                  "defaultValue",
                  "options"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "stringTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validRegExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "numberTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "number"
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validMin": {
                    "type": "number"
                  },
                  "validMax": {
                    "type": "number"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "jsonTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "payloadPath"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "section"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              }
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "outputCount",
        "resultMode",
        "fields"
      ]
    },
    "customNodeSupports": {
      "type": "array",
      "maxItems": 1,
      "items": {
        "type": "string",
        "enum": [
          "cloud",
          "edge"
        ]
      }
    },
    "customNodeUseCount": {
      "type": "number"
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "deletedInDevelop": {
      "type": "boolean"
    },
    "stats": {
      "type": "object",
      "properties": {
        "runCount": {
          "type": "number"
        },
        "errorCount": {
          "type": "number"
        },
        "byVersion": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "object",
              "properties": {
                "runCount": {
                  "type": "number"
                },
                "errorCount": {
                  "type": "number"
                }
              }
            }
          }
        }
      }
    }
  }
}

Workflow Example

{
  "id": "575ed18f7ae143cd83dc4aa6",
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "My Workflow",
  "description": "Description of my empty workflow",
  "enabled": true,
  "triggers": [],
  "nodes": [],
  "globals": [],
  "stats": {
    "runCount": 0,
    "errorCount": 0
  }
}

Workflow Errors

Workflow run error information

Workflow Errors Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flowVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "flowVersionId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "start": {
      "type": "string",
      "format": "date-time"
    },
    "end": {
      "type": "string",
      "format": "date-time"
    },
    "limit": {
      "type": "number"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "time": {
            "type": "string",
            "format": "date-time"
          },
          "deviceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "deviceName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "flowVersion": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "flowVersionId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "nodeId": {
            "type": "string"
          },
          "nodeLabel": {
            "type": "string"
          },
          "error": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "message": {
                "type": "string"
              }
            }
          }
        }
      }
    }
  }
}

Workflow Errors Example

{
  "start": "2016-06-03T00:00:00.000Z",
  "end": "2016-06-04T00:00:00.000Z",
  "limit": 25,
  "sortDirection": "desc",
  "errors": [
    {
      "time": "2016-06-03T00:00:00.000Z",
      "nodeId": "dji4r",
      "error": {
        "name": "Validation",
        "message": "Result path is required"
      }
    }
  ]
}

Workflow Log

Log of aggregated workflow run information

Workflow Log Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "flowVersionId": {
        "type": "string"
      },
      "time": {
        "type": "string",
        "format": "date-time"
      },
      "pathsFailed": {
        "type": "number"
      },
      "pathsCompleted": {
        "type": "number"
      },
      "runCount": {
        "type": "number"
      },
      "wallTime": {
        "type": "number"
      },
      "errors": {
        "type": "array",
        "items": {}
      }
    }
  }
}

Workflow Log Example

[
  {
    "flowVersionId": "develop",
    "time": "2016-06-03T00:56:22.447Z",
    "pathsFailed": 0,
    "pathsCompleted": 1,
    "runCount": 1,
    "wallTime": 450,
    "errors": []
  },
  {
    "flowVersionId": "develop",
    "time": "2016-06-03T00:56:22.447Z",
    "pathsFailed": 0,
    "pathsCompleted": 1,
    "runCount": 3,
    "wallTime": 152,
    "errors": []
  }
]

Workflow Patch

Schema for the body of a Workflow modification request

Workflow Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "shortDescription": {
      "type": "string",
      "maxLength": 1024
    },
    "iconData": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 32767,
          "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
        },
        {
          "type": "null"
        }
      ]
    },
    "docsUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "category": {
      "type": "string",
      "enum": [
        "data",
        "experience",
        "logic",
        "output",
        "debug",
        ""
      ]
    },
    "enabled": {
      "type": "boolean"
    },
    "defaultVersionId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "triggers": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "customNodeStart",
                  "deviceCommand",
                  "deviceIdConnect",
                  "deviceTagConnect",
                  "deviceIdDisconnect",
                  "deviceTagDisconnect",
                  "integration",
                  "notebook",
                  "onBoot",
                  "onConnect",
                  "onDisconnect",
                  "udp",
                  "webhook",
                  "resourceJobIteration",
                  "resourceJobIterationTimeout",
                  "resourceJobComplete"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "customNodeStart",
                      "deviceCommand",
                      "deviceIdsTagsConnect",
                      "deviceIdsTagsDisconnect",
                      "eeaInit",
                      "flowError",
                      "azureEventHub",
                      "googlePubSub",
                      "mqtt",
                      "notebook",
                      "onBoot",
                      "onConnect",
                      "onDisconnect",
                      "particle",
                      "sqs",
                      "udp",
                      "webhook",
                      "resourceJobIteration",
                      "resourceJobIterationTimeout",
                      "resourceJobComplete",
                      "websocket"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "bulkInsert": {
                    "type": "boolean"
                  },
                  "delete": {
                    "type": "boolean"
                  },
                  "insert": {
                    "type": "boolean"
                  },
                  "update": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "dataTable"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceId",
                  "deviceTag"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "attributeBlacklist": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    }
                  },
                  "attributeWhitelist": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    }
                  },
                  "maxAge": {
                    "type": "number"
                  },
                  "triggerOn": {
                    "type": "string",
                    "enum": [
                      "batch",
                      "individual",
                      "both"
                    ]
                  },
                  "batchBehavior": {
                    "type": "string",
                    "enum": [
                      "once",
                      "each"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "deviceIdsTags",
                      "device",
                      "deviceTag"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "timeUnit": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "maxAgeToggle": {
                    "type": "boolean"
                  },
                  "allowedAttributeType": {
                    "type": "string",
                    "enum": [
                      "attributeWhitelist",
                      "any",
                      "attributeBlacklist"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceIdInactivity",
                  "deviceTagInactivity"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "seconds": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "deviceIdsTagsInactivity"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "direct"
                ]
              },
              "config": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "direct"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "endpoint"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "experienceVersion": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "endpoint"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "event"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "subject": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "new": {
                    "type": "boolean"
                  },
                  "acknowledged": {
                    "type": "boolean"
                  },
                  "resolved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "event"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "fileTail"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "encoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "byteLength": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiter": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "fileTail"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "fileWatch"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "fileAdded": {
                    "type": "boolean"
                  },
                  "fileChanged": {
                    "type": "boolean"
                  },
                  "fileRemoved": {
                    "type": "boolean"
                  },
                  "directoryAdded": {
                    "type": "boolean"
                  },
                  "directoryRemoved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "fileWatch"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "flowError"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "scope": {
                    "type": "string",
                    "enum": [
                      "local",
                      "global",
                      "experience",
                      "cloud"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "flowError"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "mqttTopic"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "integrationId": {
                    "type": "string",
                    "enum": [
                      "losant",
                      "local",
                      "external"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "mqtt"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "onSync"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "syncTypes": {
                    "type": "array",
                    "maxItems": 3,
                    "minItems": 1,
                    "items": {
                      "type": "string",
                      "enum": [
                        "application",
                        "device",
                        "peripheral"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "onSync"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "opcua"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "uri": {
                    "type": "string",
                    "format": "uri",
                    "maxLength": 1024
                  },
                  "securityPolicy": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "securityMode": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "username": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "password": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "cert": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "privateKey": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "nameSpace": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "identifier": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "samplingInterval": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "eventFilter": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "configName": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "opcua"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "redis"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "host": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "port": {
                    "type": "string",
                    "maxLength": 16
                  },
                  "password": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "topic": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "fileAdded": {
                    "type": "boolean"
                  },
                  "fileChanged": {
                    "type": "boolean"
                  },
                  "fileRemoved": {
                    "type": "boolean"
                  },
                  "directoryAdded": {
                    "type": "boolean"
                  },
                  "directoryRemoved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "redisTrigger"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "request"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "method": {
                    "type": "string",
                    "enum": [
                      "*",
                      "delete",
                      "get",
                      "options",
                      "patch",
                      "post",
                      "put"
                    ]
                  },
                  "route": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "request"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "serial"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "baudRate": {
                    "type": "number"
                  },
                  "dataBits": {
                    "type": "number"
                  },
                  "stopBits": {
                    "type": "number"
                  },
                  "parity": {
                    "type": "string",
                    "maxLength": 8
                  },
                  "rtscts": {
                    "type": "boolean"
                  },
                  "encoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "writeOnOpen": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "writeOnOpenEncoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "byteLength": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiter": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiterEncoding": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "serial"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "parseBy": {
                    "type": "string",
                    "enum": [
                      "byteLength",
                      "delimiter"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "snmpTrap"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "udpPort": {
                    "type": "string",
                    "maxLength": 5
                  },
                  "snmpTrapConfig": {
                    "type": "object",
                    "properties": {
                      "community": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "user": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "securityLevel": {
                            "type": "string",
                            "enum": [
                              "none",
                              "auth",
                              "authAndEncrypt"
                            ]
                          },
                          "authMethod": {
                            "type": "string",
                            "enum": [
                              "sha",
                              "md5"
                            ]
                          },
                          "authKey": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "encryptionMethod": {
                            "type": "string",
                            "enum": [
                              "aes",
                              "des"
                            ]
                          },
                          "encryptionKey": {
                            "type": "string",
                            "maxLength": 1024
                          }
                        },
                        "required": [
                          "name",
                          "securityLevel"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "udpPort",
                  "snmpTrapConfig"
                ],
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "snmpTrap"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "timer"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "seconds": {
                    "type": "number"
                  },
                  "cron": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "tz": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "timer"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "timerTypeSelect": {
                    "type": "string",
                    "enum": [
                      "cronWeekly",
                      "seconds",
                      "cron"
                    ]
                  },
                  "timeAt": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "timezone": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "weekdays": {
                    "type": "array",
                    "maxItems": 7,
                    "items": {
                      "type": "number"
                    }
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "virtualButton"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "virtualButton"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "groupId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "payload": {
                    "type": "string",
                    "maxLength": 262144
                  },
                  "deviceId": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      {
                        "type": "string",
                        "enum": [
                          ""
                        ]
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "config": {
            "type": "object"
          },
          "meta": {
            "type": "object"
          },
          "outputIds": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 48,
                "minLength": 1
              },
              "maxItems": 100
            },
            "maxItems": 100
          }
        },
        "additionalProperties": false,
        "required": [
          "type"
        ]
      }
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "minimumAgentVersion": {
      "type": "string",
      "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
    },
    "customNodeConfig": {
      "type": "object",
      "properties": {
        "outputCount": {
          "type": "number",
          "enum": [
            1,
            2
          ]
        },
        "resultMode": {
          "type": "string",
          "enum": [
            "optional",
            "required",
            "none"
          ]
        },
        "resultDescription": {
          "type": "string",
          "maxLength": 32767
        },
        "fields": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "checkbox"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "select"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "options": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "value"
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label",
                  "defaultValue",
                  "options"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "stringTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validRegExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "numberTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "number"
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validMin": {
                    "type": "number"
                  },
                  "validMax": {
                    "type": "number"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "jsonTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "payloadPath"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "section"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              }
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "outputCount",
        "resultMode",
        "fields"
      ]
    }
  },
  "additionalProperties": false
}

Workflow Patch Example

{
  "name": "My Updated Workflow",
  "description": "Description of my updated workflow",
  "enabled": false
}

Workflow Post

Schema for the body of a Workflow creation request

Workflow Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "shortDescription": {
      "type": "string",
      "maxLength": 1024
    },
    "iconData": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 32767,
          "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
        },
        {
          "type": "null"
        }
      ]
    },
    "docsUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "category": {
      "type": "string",
      "enum": [
        "data",
        "experience",
        "logic",
        "output",
        "debug",
        ""
      ]
    },
    "enabled": {
      "type": "boolean"
    },
    "triggers": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "customNodeStart",
                  "deviceCommand",
                  "deviceIdConnect",
                  "deviceTagConnect",
                  "deviceIdDisconnect",
                  "deviceTagDisconnect",
                  "integration",
                  "notebook",
                  "onBoot",
                  "onConnect",
                  "onDisconnect",
                  "udp",
                  "webhook",
                  "resourceJobIteration",
                  "resourceJobIterationTimeout",
                  "resourceJobComplete"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "customNodeStart",
                      "deviceCommand",
                      "deviceIdsTagsConnect",
                      "deviceIdsTagsDisconnect",
                      "eeaInit",
                      "flowError",
                      "azureEventHub",
                      "googlePubSub",
                      "mqtt",
                      "notebook",
                      "onBoot",
                      "onConnect",
                      "onDisconnect",
                      "particle",
                      "sqs",
                      "udp",
                      "webhook",
                      "resourceJobIteration",
                      "resourceJobIterationTimeout",
                      "resourceJobComplete",
                      "websocket"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "bulkInsert": {
                    "type": "boolean"
                  },
                  "delete": {
                    "type": "boolean"
                  },
                  "insert": {
                    "type": "boolean"
                  },
                  "update": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "dataTable"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceId",
                  "deviceTag"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "attributeBlacklist": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    }
                  },
                  "attributeWhitelist": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    }
                  },
                  "maxAge": {
                    "type": "number"
                  },
                  "triggerOn": {
                    "type": "string",
                    "enum": [
                      "batch",
                      "individual",
                      "both"
                    ]
                  },
                  "batchBehavior": {
                    "type": "string",
                    "enum": [
                      "once",
                      "each"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "deviceIdsTags",
                      "device",
                      "deviceTag"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "timeUnit": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "maxAgeToggle": {
                    "type": "boolean"
                  },
                  "allowedAttributeType": {
                    "type": "string",
                    "enum": [
                      "attributeWhitelist",
                      "any",
                      "attributeBlacklist"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceIdInactivity",
                  "deviceTagInactivity"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "seconds": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "deviceIdsTagsInactivity"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "direct"
                ]
              },
              "config": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "direct"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "endpoint"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "experienceVersion": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "endpoint"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "event"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "subject": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "new": {
                    "type": "boolean"
                  },
                  "acknowledged": {
                    "type": "boolean"
                  },
                  "resolved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "event"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "fileTail"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "encoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "byteLength": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiter": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "fileTail"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "fileWatch"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "fileAdded": {
                    "type": "boolean"
                  },
                  "fileChanged": {
                    "type": "boolean"
                  },
                  "fileRemoved": {
                    "type": "boolean"
                  },
                  "directoryAdded": {
                    "type": "boolean"
                  },
                  "directoryRemoved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "fileWatch"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "flowError"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "scope": {
                    "type": "string",
                    "enum": [
                      "local",
                      "global",
                      "experience",
                      "cloud"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "flowError"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "mqttTopic"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "integrationId": {
                    "type": "string",
                    "enum": [
                      "losant",
                      "local",
                      "external"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "mqtt"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "onSync"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "syncTypes": {
                    "type": "array",
                    "maxItems": 3,
                    "minItems": 1,
                    "items": {
                      "type": "string",
                      "enum": [
                        "application",
                        "device",
                        "peripheral"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "onSync"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "opcua"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "uri": {
                    "type": "string",
                    "format": "uri",
                    "maxLength": 1024
                  },
                  "securityPolicy": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "securityMode": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "username": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "password": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "cert": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "privateKey": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "nameSpace": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "identifier": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "samplingInterval": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "eventFilter": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "configName": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "opcua"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "redis"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "host": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "port": {
                    "type": "string",
                    "maxLength": 16
                  },
                  "password": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "topic": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "fileAdded": {
                    "type": "boolean"
                  },
                  "fileChanged": {
                    "type": "boolean"
                  },
                  "fileRemoved": {
                    "type": "boolean"
                  },
                  "directoryAdded": {
                    "type": "boolean"
                  },
                  "directoryRemoved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "redisTrigger"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "request"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "method": {
                    "type": "string",
                    "enum": [
                      "*",
                      "delete",
                      "get",
                      "options",
                      "patch",
                      "post",
                      "put"
                    ]
                  },
                  "route": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "request"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "serial"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "baudRate": {
                    "type": "number"
                  },
                  "dataBits": {
                    "type": "number"
                  },
                  "stopBits": {
                    "type": "number"
                  },
                  "parity": {
                    "type": "string",
                    "maxLength": 8
                  },
                  "rtscts": {
                    "type": "boolean"
                  },
                  "encoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "writeOnOpen": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "writeOnOpenEncoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "byteLength": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiter": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiterEncoding": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "serial"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "parseBy": {
                    "type": "string",
                    "enum": [
                      "byteLength",
                      "delimiter"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "snmpTrap"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "udpPort": {
                    "type": "string",
                    "maxLength": 5
                  },
                  "snmpTrapConfig": {
                    "type": "object",
                    "properties": {
                      "community": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "user": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "securityLevel": {
                            "type": "string",
                            "enum": [
                              "none",
                              "auth",
                              "authAndEncrypt"
                            ]
                          },
                          "authMethod": {
                            "type": "string",
                            "enum": [
                              "sha",
                              "md5"
                            ]
                          },
                          "authKey": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "encryptionMethod": {
                            "type": "string",
                            "enum": [
                              "aes",
                              "des"
                            ]
                          },
                          "encryptionKey": {
                            "type": "string",
                            "maxLength": 1024
                          }
                        },
                        "required": [
                          "name",
                          "securityLevel"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "udpPort",
                  "snmpTrapConfig"
                ],
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "snmpTrap"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "timer"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "seconds": {
                    "type": "number"
                  },
                  "cron": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "tz": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "timer"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "timerTypeSelect": {
                    "type": "string",
                    "enum": [
                      "cronWeekly",
                      "seconds",
                      "cron"
                    ]
                  },
                  "timeAt": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "timezone": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "weekdays": {
                    "type": "array",
                    "maxItems": 7,
                    "items": {
                      "type": "number"
                    }
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "virtualButton"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "virtualButton"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "groupId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "payload": {
                    "type": "string",
                    "maxLength": 262144
                  },
                  "deviceId": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      {
                        "type": "string",
                        "enum": [
                          ""
                        ]
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "config": {
            "type": "object"
          },
          "meta": {
            "type": "object"
          },
          "outputIds": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 48,
                "minLength": 1
              },
              "maxItems": 100
            },
            "maxItems": 100
          }
        },
        "additionalProperties": false,
        "required": [
          "type"
        ]
      }
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "flowClass": {
      "type": "string",
      "enum": [
        "cloud",
        "edge",
        "embedded",
        "experience",
        "customNode"
      ]
    },
    "minimumAgentVersion": {
      "type": "string",
      "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
    },
    "customNodeConfig": {
      "type": "object",
      "properties": {
        "outputCount": {
          "type": "number",
          "enum": [
            1,
            2
          ]
        },
        "resultMode": {
          "type": "string",
          "enum": [
            "optional",
            "required",
            "none"
          ]
        },
        "resultDescription": {
          "type": "string",
          "maxLength": 32767
        },
        "fields": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "checkbox"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "select"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "options": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "value"
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label",
                  "defaultValue",
                  "options"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "stringTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validRegExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "numberTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "number"
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validMin": {
                    "type": "number"
                  },
                  "validMax": {
                    "type": "number"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "jsonTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "payloadPath"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "section"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              }
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "outputCount",
        "resultMode",
        "fields"
      ]
    },
    "customNodeSupports": {
      "type": "array",
      "maxItems": 1,
      "items": {
        "type": "string",
        "enum": [
          "cloud",
          "edge"
        ]
      }
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Workflow Post Example

{
  "name": "My New Workflow",
  "description": "Description of my new workflow"
}

Workflow Statistics

Statistics about the runs for a given workflow

Workflow Statistics Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flowVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "flowVersionId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "start": {
      "type": "string",
      "format": "date-time"
    },
    "end": {
      "type": "string",
      "format": "date-time"
    },
    "resolution": {
      "type": "number"
    },
    "metrics": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "time": {
            "type": "string",
            "format": "date-time"
          },
          "pathsFailed": {
            "type": "number"
          },
          "pathsCompleted": {
            "type": "number"
          },
          "runCount": {
            "type": "number"
          },
          "wallTime": {
            "type": "number"
          }
        }
      }
    }
  }
}

Workflow Statistics Example

{
  "start": "2016-06-03T00:00:00.000Z",
  "end": "2016-06-04T00:00:00.000Z",
  "resolution": 86400000,
  "metrics": [
    {
      "time": "2016-06-03T00:00:00.000Z",
      "pathsFailed": 0,
      "pathsCompleted": 1,
      "runCount": 1,
      "wallTime": 450
    }
  ]
}

Workflow Storage Entries

Set of persistent workflow storage values

Workflow Storage Entries Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "patternProperties": {
    "^.{1,255}$": {}
  }
}

Workflow Storage Entries Example

{
  "myStorageKey": "hello",
  "other key": [
    13,
    21,
    34
  ]
}

Workflow Storage Entry

Schema for the body of a request to set a Workflow storage entry

Workflow Storage Entry Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "value": {}
  },
  "additionalProperties": false,
  "required": [
    "key"
  ]
}

Workflow Storage Entry Example

{
  "key": "myStorageKey",
  "value": 12
}

Get Workflow Storage Entries Metadata

Schema for the result of get storage metadata request

Get Workflow Storage Entries Metadata Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "memoryUsed": {
      "type": "number"
    },
    "keysCount": {
      "type": "number"
    }
  },
  "additionalProperties": false
}

Get Workflow Storage Entries Metadata Example

{
  "memoryUsed": 610,
  "keysCount": 2
}

Workflow Trigger Filter

Array of triggers for filtering workflows. Trigger keys and trigger types are optional.

Workflow Trigger Filter Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "key": {
        "type": "string",
        "maxLength": 1024
      },
      "type": {
        "type": "string",
        "maxLength": 1024
      }
    },
    "additionalProperties": false
  },
  "maxItems": 100
}

Workflow Trigger Filter Example

[
  {
    "type": "webhook",
    "key": "575ed78e7ae143cd83dc4aab"
  }
]

Workflow Version

Schema for a single Workflow Version

Workflow Version Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "oneOf": [
    {
      "description": "Schema for a single Cloud/Edge/Embedded/Custom Node Workflow Version",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "flowVersionId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "flowId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "creationDate": {
          "type": "string",
          "format": "date-time"
        },
        "lastUpdated": {
          "type": "string",
          "format": "date-time"
        },
        "createdById": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "createdByType": {
          "type": "string",
          "enum": [
            "flow",
            "user",
            "apiToken"
          ]
        },
        "lastUpdatedById": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "lastUpdatedByType": {
          "type": "string",
          "enum": [
            "flow",
            "user",
            "apiToken"
          ]
        },
        "version": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "flowClass": {
          "type": "string",
          "enum": [
            "cloud",
            "edge",
            "embedded",
            "customNode"
          ]
        },
        "notes": {
          "type": "string",
          "maxLength": 32767
        },
        "enabled": {
          "type": "boolean"
        },
        "triggers": {
          "type": "array",
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "customNodeStart",
                      "deviceCommand",
                      "deviceIdConnect",
                      "deviceTagConnect",
                      "deviceIdDisconnect",
                      "deviceTagDisconnect",
                      "integration",
                      "notebook",
                      "onBoot",
                      "onConnect",
                      "onDisconnect",
                      "udp",
                      "webhook",
                      "resourceJobIteration",
                      "resourceJobIterationTimeout",
                      "resourceJobComplete"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "customNodeStart",
                          "deviceCommand",
                          "deviceIdsTagsConnect",
                          "deviceIdsTagsDisconnect",
                          "eeaInit",
                          "flowError",
                          "azureEventHub",
                          "googlePubSub",
                          "mqtt",
                          "notebook",
                          "onBoot",
                          "onConnect",
                          "onDisconnect",
                          "particle",
                          "sqs",
                          "udp",
                          "webhook",
                          "resourceJobIteration",
                          "resourceJobIterationTimeout",
                          "resourceJobComplete",
                          "websocket"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "triggerId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "dataTable"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "bulkInsert": {
                        "type": "boolean"
                      },
                      "delete": {
                        "type": "boolean"
                      },
                      "insert": {
                        "type": "boolean"
                      },
                      "update": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "dataTable"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "deviceId",
                      "deviceTag"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "attributeBlacklist": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        }
                      },
                      "attributeWhitelist": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        }
                      },
                      "maxAge": {
                        "type": "number"
                      },
                      "triggerOn": {
                        "type": "string",
                        "enum": [
                          "batch",
                          "individual",
                          "both"
                        ]
                      },
                      "batchBehavior": {
                        "type": "string",
                        "enum": [
                          "once",
                          "each"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "deviceIdsTags",
                          "device",
                          "deviceTag"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "timeUnit": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "maxAgeToggle": {
                        "type": "boolean"
                      },
                      "allowedAttributeType": {
                        "type": "string",
                        "enum": [
                          "attributeWhitelist",
                          "any",
                          "attributeBlacklist"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "deviceIdInactivity",
                      "deviceTagInactivity"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "seconds": {
                        "type": "number"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "deviceIdsTagsInactivity"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "direct"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "direct"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "endpoint"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "experienceVersion": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "endpoint"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "event"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "subject": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "new": {
                        "type": "boolean"
                      },
                      "acknowledged": {
                        "type": "boolean"
                      },
                      "resolved": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "event"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "fileTail"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "path": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "encoding": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "byteLength": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "delimiter": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "fileTail"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "fileWatch"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "path": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "fileAdded": {
                        "type": "boolean"
                      },
                      "fileChanged": {
                        "type": "boolean"
                      },
                      "fileRemoved": {
                        "type": "boolean"
                      },
                      "directoryAdded": {
                        "type": "boolean"
                      },
                      "directoryRemoved": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "fileWatch"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "flowError"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "scope": {
                        "type": "string",
                        "enum": [
                          "local",
                          "global",
                          "experience",
                          "cloud"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "flowError"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "mqttTopic"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "integrationId": {
                        "type": "string",
                        "enum": [
                          "losant",
                          "local",
                          "external"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "mqtt"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "triggerId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "onSync"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "syncTypes": {
                        "type": "array",
                        "maxItems": 3,
                        "minItems": 1,
                        "items": {
                          "type": "string",
                          "enum": [
                            "application",
                            "device",
                            "peripheral"
                          ]
                        }
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "onSync"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "opcua"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "uri": {
                        "type": "string",
                        "format": "uri",
                        "maxLength": 1024
                      },
                      "securityPolicy": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "securityMode": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "username": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "password": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "cert": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "privateKey": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "nameSpace": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "identifier": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "samplingInterval": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "eventFilter": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "configName": {
                        "type": "string",
                        "maxLength": 1024
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "opcua"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "redis"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "host": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "port": {
                        "type": "string",
                        "maxLength": 16
                      },
                      "password": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "topic": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "fileAdded": {
                        "type": "boolean"
                      },
                      "fileChanged": {
                        "type": "boolean"
                      },
                      "fileRemoved": {
                        "type": "boolean"
                      },
                      "directoryAdded": {
                        "type": "boolean"
                      },
                      "directoryRemoved": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "redisTrigger"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "request"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "method": {
                        "type": "string",
                        "enum": [
                          "*",
                          "delete",
                          "get",
                          "options",
                          "patch",
                          "post",
                          "put"
                        ]
                      },
                      "route": {
                        "type": "string",
                        "maxLength": 1024
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "request"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "triggerId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "serial"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "path": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "baudRate": {
                        "type": "number"
                      },
                      "dataBits": {
                        "type": "number"
                      },
                      "stopBits": {
                        "type": "number"
                      },
                      "parity": {
                        "type": "string",
                        "maxLength": 8
                      },
                      "rtscts": {
                        "type": "boolean"
                      },
                      "encoding": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "writeOnOpen": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "writeOnOpenEncoding": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "byteLength": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "delimiter": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "delimiterEncoding": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "serial"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "parseBy": {
                        "type": "string",
                        "enum": [
                          "byteLength",
                          "delimiter"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "snmpTrap"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "udpPort": {
                        "type": "string",
                        "maxLength": 5
                      },
                      "snmpTrapConfig": {
                        "type": "object",
                        "properties": {
                          "community": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "user": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "securityLevel": {
                                "type": "string",
                                "enum": [
                                  "none",
                                  "auth",
                                  "authAndEncrypt"
                                ]
                              },
                              "authMethod": {
                                "type": "string",
                                "enum": [
                                  "sha",
                                  "md5"
                                ]
                              },
                              "authKey": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "encryptionMethod": {
                                "type": "string",
                                "enum": [
                                  "aes",
                                  "des"
                                ]
                              },
                              "encryptionKey": {
                                "type": "string",
                                "maxLength": 1024
                              }
                            },
                            "required": [
                              "name",
                              "securityLevel"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "udpPort",
                      "snmpTrapConfig"
                    ],
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "snmpTrap"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "timer"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "seconds": {
                        "type": "number"
                      },
                      "cron": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "tz": {
                        "type": "string",
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "timer"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "timerTypeSelect": {
                        "type": "string",
                        "enum": [
                          "cronWeekly",
                          "seconds",
                          "cron"
                        ]
                      },
                      "timeAt": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "timezone": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "weekdays": {
                        "type": "array",
                        "maxItems": 7,
                        "items": {
                          "type": "number"
                        }
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "virtualButton"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "virtualButton"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "groupId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "payload": {
                        "type": "string",
                        "maxLength": 262144
                      },
                      "deviceId": {
                        "oneOf": [
                          {
                            "type": "string",
                            "pattern": "^[A-Fa-f\\d]{24}$"
                          },
                          {
                            "type": "string",
                            "enum": [
                              ""
                            ]
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              }
            ]
          }
        },
        "nodes": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "config": {
                "type": "object"
              },
              "meta": {
                "type": "object"
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "additionalProperties": false,
            "required": [
              "type"
            ]
          }
        },
        "globals": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "json": {
                "type": "string",
                "minLength": 1,
                "maxLength": 32767
              }
            },
            "additionalProperties": false,
            "required": [
              "key",
              "json"
            ]
          }
        },
        "minimumAgentVersion": {
          "type": "string",
          "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
        },
        "customNodeConfig": {
          "type": "object",
          "properties": {
            "outputCount": {
              "type": "number",
              "enum": [
                1,
                2
              ]
            },
            "resultMode": {
              "type": "string",
              "enum": [
                "optional",
                "required",
                "none"
              ]
            },
            "resultDescription": {
              "type": "string",
              "maxLength": 32767
            },
            "fields": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "checkbox"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "defaultValue": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "label"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "select"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "defaultValue": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "options": {
                        "type": "array",
                        "minItems": 1,
                        "maxItems": 100,
                        "items": {
                          "type": "object",
                          "properties": {
                            "label": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "value": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "value"
                          ]
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "label",
                      "defaultValue",
                      "options"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "stringTemplate"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "defaultValue": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "required": {
                        "type": "boolean"
                      },
                      "validRegExp": {
                        "type": "string",
                        "maxLength": 1024
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "label"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "numberTemplate"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "defaultValue": {
                        "type": "number"
                      },
                      "required": {
                        "type": "boolean"
                      },
                      "validMin": {
                        "type": "number"
                      },
                      "validMax": {
                        "type": "number"
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "label"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "jsonTemplate"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "defaultValue": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "required": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "label"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "payloadPath"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "required": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "label"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "section"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 1024
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "type",
                      "label"
                    ]
                  }
                ]
              }
            }
          },
          "additionalProperties": false,
          "required": [
            "outputCount",
            "resultMode",
            "fields"
          ]
        },
        "stats": {
          "type": "object",
          "properties": {
            "runCount": {
              "type": "number"
            },
            "errorCount": {
              "type": "number"
            },
            "byVersion": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "object",
                  "properties": {
                    "runCount": {
                      "type": "number"
                    },
                    "errorCount": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    {
      "description": "Schema for a single Experience Workflow Version",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "flowVersionId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "flowId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "applicationId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "creationDate": {
          "type": "string",
          "format": "date-time"
        },
        "lastUpdated": {
          "type": "string",
          "format": "date-time"
        },
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "description": {
          "type": "string",
          "maxLength": 32767
        },
        "flowClass": {
          "type": "string",
          "enum": [
            "experience"
          ]
        },
        "versions": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "enabled": {
          "type": "boolean"
        },
        "triggers": {
          "type": "array",
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "customNodeStart",
                      "deviceCommand",
                      "deviceIdConnect",
                      "deviceTagConnect",
                      "deviceIdDisconnect",
                      "deviceTagDisconnect",
                      "integration",
                      "notebook",
                      "onBoot",
                      "onConnect",
                      "onDisconnect",
                      "udp",
                      "webhook",
                      "resourceJobIteration",
                      "resourceJobIterationTimeout",
                      "resourceJobComplete"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "customNodeStart",
                          "deviceCommand",
                          "deviceIdsTagsConnect",
                          "deviceIdsTagsDisconnect",
                          "eeaInit",
                          "flowError",
                          "azureEventHub",
                          "googlePubSub",
                          "mqtt",
                          "notebook",
                          "onBoot",
                          "onConnect",
                          "onDisconnect",
                          "particle",
                          "sqs",
                          "udp",
                          "webhook",
                          "resourceJobIteration",
                          "resourceJobIterationTimeout",
                          "resourceJobComplete",
                          "websocket"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "triggerId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "dataTable"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "bulkInsert": {
                        "type": "boolean"
                      },
                      "delete": {
                        "type": "boolean"
                      },
                      "insert": {
                        "type": "boolean"
                      },
                      "update": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "dataTable"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "deviceId",
                      "deviceTag"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "attributeBlacklist": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        }
                      },
                      "attributeWhitelist": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        }
                      },
                      "maxAge": {
                        "type": "number"
                      },
                      "triggerOn": {
                        "type": "string",
                        "enum": [
                          "batch",
                          "individual",
                          "both"
                        ]
                      },
                      "batchBehavior": {
                        "type": "string",
                        "enum": [
                          "once",
                          "each"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "deviceIdsTags",
                          "device",
                          "deviceTag"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "timeUnit": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "maxAgeToggle": {
                        "type": "boolean"
                      },
                      "allowedAttributeType": {
                        "type": "string",
                        "enum": [
                          "attributeWhitelist",
                          "any",
                          "attributeBlacklist"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "deviceIdInactivity",
                      "deviceTagInactivity"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "seconds": {
                        "type": "number"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "deviceIdsTagsInactivity"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "direct"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "direct"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "endpoint"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "experienceVersion": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "endpoint"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "event"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "subject": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "new": {
                        "type": "boolean"
                      },
                      "acknowledged": {
                        "type": "boolean"
                      },
                      "resolved": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "event"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "fileTail"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "path": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "encoding": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "byteLength": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "delimiter": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "fileTail"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "fileWatch"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "path": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "fileAdded": {
                        "type": "boolean"
                      },
                      "fileChanged": {
                        "type": "boolean"
                      },
                      "fileRemoved": {
                        "type": "boolean"
                      },
                      "directoryAdded": {
                        "type": "boolean"
                      },
                      "directoryRemoved": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "fileWatch"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "flowError"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "scope": {
                        "type": "string",
                        "enum": [
                          "local",
                          "global",
                          "experience",
                          "cloud"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "flowError"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "mqttTopic"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "integrationId": {
                        "type": "string",
                        "enum": [
                          "losant",
                          "local",
                          "external"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "mqtt"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "triggerId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "onSync"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "syncTypes": {
                        "type": "array",
                        "maxItems": 3,
                        "minItems": 1,
                        "items": {
                          "type": "string",
                          "enum": [
                            "application",
                            "device",
                            "peripheral"
                          ]
                        }
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "onSync"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "opcua"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "uri": {
                        "type": "string",
                        "format": "uri",
                        "maxLength": 1024
                      },
                      "securityPolicy": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "securityMode": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "username": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "password": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "cert": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "privateKey": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "nameSpace": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "identifier": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "samplingInterval": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "eventFilter": {
                        "type": "array",
                        "maxItems": 100,
                        "items": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "configName": {
                        "type": "string",
                        "maxLength": 1024
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "opcua"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "redis"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "host": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "port": {
                        "type": "string",
                        "maxLength": 16
                      },
                      "password": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "topic": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "fileAdded": {
                        "type": "boolean"
                      },
                      "fileChanged": {
                        "type": "boolean"
                      },
                      "fileRemoved": {
                        "type": "boolean"
                      },
                      "directoryAdded": {
                        "type": "boolean"
                      },
                      "directoryRemoved": {
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "redisTrigger"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "request"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "method": {
                        "type": "string",
                        "enum": [
                          "*",
                          "delete",
                          "get",
                          "options",
                          "patch",
                          "post",
                          "put"
                        ]
                      },
                      "route": {
                        "type": "string",
                        "maxLength": 1024
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "request"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "triggerId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "serial"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "path": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "baudRate": {
                        "type": "number"
                      },
                      "dataBits": {
                        "type": "number"
                      },
                      "stopBits": {
                        "type": "number"
                      },
                      "parity": {
                        "type": "string",
                        "maxLength": 8
                      },
                      "rtscts": {
                        "type": "boolean"
                      },
                      "encoding": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "writeOnOpen": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "writeOnOpenEncoding": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "byteLength": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "delimiter": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "delimiterEncoding": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "serial"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "parseBy": {
                        "type": "string",
                        "enum": [
                          "byteLength",
                          "delimiter"
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "snmpTrap"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "udpPort": {
                        "type": "string",
                        "maxLength": 5
                      },
                      "snmpTrapConfig": {
                        "type": "object",
                        "properties": {
                          "community": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "user": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "securityLevel": {
                                "type": "string",
                                "enum": [
                                  "none",
                                  "auth",
                                  "authAndEncrypt"
                                ]
                              },
                              "authMethod": {
                                "type": "string",
                                "enum": [
                                  "sha",
                                  "md5"
                                ]
                              },
                              "authKey": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "encryptionMethod": {
                                "type": "string",
                                "enum": [
                                  "aes",
                                  "des"
                                ]
                              },
                              "encryptionKey": {
                                "type": "string",
                                "maxLength": 1024
                              }
                            },
                            "required": [
                              "name",
                              "securityLevel"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "udpPort",
                      "snmpTrapConfig"
                    ],
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "snmpTrap"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "timer"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "properties": {
                      "seconds": {
                        "type": "number"
                      },
                      "cron": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "tz": {
                        "type": "string",
                        "maxLength": 255
                      }
                    },
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "timer"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "timerTypeSelect": {
                        "type": "string",
                        "enum": [
                          "cronWeekly",
                          "seconds",
                          "cron"
                        ]
                      },
                      "timeAt": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "timezone": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "weekdays": {
                        "type": "array",
                        "maxItems": 7,
                        "items": {
                          "type": "number"
                        }
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "virtualButton"
                    ]
                  },
                  "config": {
                    "type": "object",
                    "additionalProperties": false
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "category": {
                        "type": "string",
                        "enum": [
                          "trigger"
                        ]
                      },
                      "name": {
                        "type": "string",
                        "enum": [
                          "virtualButton"
                        ]
                      },
                      "label": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "x": {
                        "type": "number"
                      },
                      "y": {
                        "type": "number"
                      },
                      "uiId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "groupId": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 32767
                      },
                      "icon": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "color": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "inputCount": {
                        "type": "number"
                      },
                      "outputCount": {
                        "type": "number"
                      },
                      "id": {
                        "type": "string",
                        "maxLength": 48
                      },
                      "payload": {
                        "type": "string",
                        "maxLength": 262144
                      },
                      "deviceId": {
                        "oneOf": [
                          {
                            "type": "string",
                            "pattern": "^[A-Fa-f\\d]{24}$"
                          },
                          {
                            "type": "string",
                            "enum": [
                              ""
                            ]
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "outputIds": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 48,
                        "minLength": 1
                      },
                      "maxItems": 100
                    },
                    "maxItems": 100
                  }
                },
                "required": [
                  "type"
                ],
                "additionalProperties": false
              }
            ]
          }
        },
        "nodes": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "config": {
                "type": "object"
              },
              "meta": {
                "type": "object"
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "additionalProperties": false,
            "required": [
              "type"
            ]
          }
        },
        "globals": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
              },
              "json": {
                "type": "string",
                "minLength": 1,
                "maxLength": 32767
              }
            },
            "additionalProperties": false,
            "required": [
              "key",
              "json"
            ]
          }
        },
        "stats": {
          "type": "object",
          "properties": {
            "runCount": {
              "type": "number"
            },
            "errorCount": {
              "type": "number"
            },
            "byVersion": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "object",
                  "properties": {
                    "runCount": {
                      "type": "number"
                    },
                    "errorCount": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  ]
}

Workflow Version Example

{
  "id": "675ed18f7ae143cd83dc4bb7",
  "flowVersionId": "675ed18f7ae143cd83dc4bb7",
  "flowId": "575ed18f7ae143cd83dc4aa6",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "description": "Description of my workflow version",
  "flowClass": "experience",
  "versions": [
    "v1.2.3"
  ],
  "enabled": true,
  "triggers": [],
  "nodes": [],
  "globals": []
}

Workflow Version Patch

Schema for the body of a Workflow Version modification request

Workflow Version Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "notes": {
      "type": "string",
      "maxLength": 32767
    },
    "enabled": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

Workflow Version Patch Example

{
  "notes": "Updated workflow version notes",
  "enabled": false
}

Workflow Version Post

Schema for the body of a Workflow Version creation request

Workflow Version Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "version": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "notes": {
      "type": "string",
      "maxLength": 32767
    },
    "enabled": {
      "type": "boolean"
    },
    "triggers": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "customNodeStart",
                  "deviceCommand",
                  "deviceIdConnect",
                  "deviceTagConnect",
                  "deviceIdDisconnect",
                  "deviceTagDisconnect",
                  "integration",
                  "notebook",
                  "onBoot",
                  "onConnect",
                  "onDisconnect",
                  "udp",
                  "webhook",
                  "resourceJobIteration",
                  "resourceJobIterationTimeout",
                  "resourceJobComplete"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "customNodeStart",
                      "deviceCommand",
                      "deviceIdsTagsConnect",
                      "deviceIdsTagsDisconnect",
                      "eeaInit",
                      "flowError",
                      "azureEventHub",
                      "googlePubSub",
                      "mqtt",
                      "notebook",
                      "onBoot",
                      "onConnect",
                      "onDisconnect",
                      "particle",
                      "sqs",
                      "udp",
                      "webhook",
                      "resourceJobIteration",
                      "resourceJobIterationTimeout",
                      "resourceJobComplete",
                      "websocket"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "bulkInsert": {
                    "type": "boolean"
                  },
                  "delete": {
                    "type": "boolean"
                  },
                  "insert": {
                    "type": "boolean"
                  },
                  "update": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "dataTable"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceId",
                  "deviceTag"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "attributeBlacklist": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    }
                  },
                  "attributeWhitelist": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    }
                  },
                  "maxAge": {
                    "type": "number"
                  },
                  "triggerOn": {
                    "type": "string",
                    "enum": [
                      "batch",
                      "individual",
                      "both"
                    ]
                  },
                  "batchBehavior": {
                    "type": "string",
                    "enum": [
                      "once",
                      "each"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "deviceIdsTags",
                      "device",
                      "deviceTag"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "timeUnit": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "maxAgeToggle": {
                    "type": "boolean"
                  },
                  "allowedAttributeType": {
                    "type": "string",
                    "enum": [
                      "attributeWhitelist",
                      "any",
                      "attributeBlacklist"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "deviceIdInactivity",
                  "deviceTagInactivity"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "seconds": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "deviceIdsTagsInactivity"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "direct"
                ]
              },
              "config": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "direct"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "endpoint"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "experienceVersion": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "endpoint"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "event"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "subject": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "new": {
                    "type": "boolean"
                  },
                  "acknowledged": {
                    "type": "boolean"
                  },
                  "resolved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "event"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "fileTail"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "encoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "byteLength": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiter": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "fileTail"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "fileWatch"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "fileAdded": {
                    "type": "boolean"
                  },
                  "fileChanged": {
                    "type": "boolean"
                  },
                  "fileRemoved": {
                    "type": "boolean"
                  },
                  "directoryAdded": {
                    "type": "boolean"
                  },
                  "directoryRemoved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "fileWatch"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "flowError"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "scope": {
                    "type": "string",
                    "enum": [
                      "local",
                      "global",
                      "experience",
                      "cloud"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "flowError"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "mqttTopic"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "integrationId": {
                    "type": "string",
                    "enum": [
                      "losant",
                      "local",
                      "external"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "mqtt"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "onSync"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "syncTypes": {
                    "type": "array",
                    "maxItems": 3,
                    "minItems": 1,
                    "items": {
                      "type": "string",
                      "enum": [
                        "application",
                        "device",
                        "peripheral"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "onSync"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "opcua"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "uri": {
                    "type": "string",
                    "format": "uri",
                    "maxLength": 1024
                  },
                  "securityPolicy": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "securityMode": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "username": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "password": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "cert": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "privateKey": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "nameSpace": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "identifier": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "samplingInterval": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "eventFilter": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "configName": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "opcua"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "redis"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "host": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "port": {
                    "type": "string",
                    "maxLength": 16
                  },
                  "password": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "topic": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "fileAdded": {
                    "type": "boolean"
                  },
                  "fileChanged": {
                    "type": "boolean"
                  },
                  "fileRemoved": {
                    "type": "boolean"
                  },
                  "directoryAdded": {
                    "type": "boolean"
                  },
                  "directoryRemoved": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "redisTrigger"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "request"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "method": {
                    "type": "string",
                    "enum": [
                      "*",
                      "delete",
                      "get",
                      "options",
                      "patch",
                      "post",
                      "put"
                    ]
                  },
                  "route": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "request"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "serial"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "baudRate": {
                    "type": "number"
                  },
                  "dataBits": {
                    "type": "number"
                  },
                  "stopBits": {
                    "type": "number"
                  },
                  "parity": {
                    "type": "string",
                    "maxLength": 8
                  },
                  "rtscts": {
                    "type": "boolean"
                  },
                  "encoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "writeOnOpen": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "writeOnOpenEncoding": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "byteLength": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiter": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "delimiterEncoding": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "serial"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "parseBy": {
                    "type": "string",
                    "enum": [
                      "byteLength",
                      "delimiter"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "snmpTrap"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "udpPort": {
                    "type": "string",
                    "maxLength": 5
                  },
                  "snmpTrapConfig": {
                    "type": "object",
                    "properties": {
                      "community": {
                        "type": "string",
                        "maxLength": 1024
                      },
                      "user": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "securityLevel": {
                            "type": "string",
                            "enum": [
                              "none",
                              "auth",
                              "authAndEncrypt"
                            ]
                          },
                          "authMethod": {
                            "type": "string",
                            "enum": [
                              "sha",
                              "md5"
                            ]
                          },
                          "authKey": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "encryptionMethod": {
                            "type": "string",
                            "enum": [
                              "aes",
                              "des"
                            ]
                          },
                          "encryptionKey": {
                            "type": "string",
                            "maxLength": 1024
                          }
                        },
                        "required": [
                          "name",
                          "securityLevel"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": [
                  "udpPort",
                  "snmpTrapConfig"
                ],
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "snmpTrap"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "timer"
                ]
              },
              "config": {
                "type": "object",
                "properties": {
                  "seconds": {
                    "type": "number"
                  },
                  "cron": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "tz": {
                    "type": "string",
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "timer"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "timerTypeSelect": {
                    "type": "string",
                    "enum": [
                      "cronWeekly",
                      "seconds",
                      "cron"
                    ]
                  },
                  "timeAt": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "timezone": {
                    "type": "string",
                    "maxLength": 255
                  },
                  "weekdays": {
                    "type": "array",
                    "maxItems": 7,
                    "items": {
                      "type": "number"
                    }
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "virtualButton"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "virtualButton"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "groupId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "payload": {
                    "type": "string",
                    "maxLength": 262144
                  },
                  "deviceId": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      {
                        "type": "string",
                        "enum": [
                          ""
                        ]
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "config": {
            "type": "object"
          },
          "meta": {
            "type": "object"
          },
          "outputIds": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 48,
                "minLength": 1
              },
              "maxItems": 100
            },
            "maxItems": 100
          }
        },
        "additionalProperties": false,
        "required": [
          "type"
        ]
      }
    },
    "globals": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "json": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32767
          }
        },
        "additionalProperties": false,
        "required": [
          "key",
          "json"
        ]
      }
    },
    "minimumAgentVersion": {
      "type": "string",
      "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
    },
    "customNodeConfig": {
      "type": "object",
      "properties": {
        "outputCount": {
          "type": "number",
          "enum": [
            1,
            2
          ]
        },
        "resultMode": {
          "type": "string",
          "enum": [
            "optional",
            "required",
            "none"
          ]
        },
        "resultDescription": {
          "type": "string",
          "maxLength": 32767
        },
        "fields": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "checkbox"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "select"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "options": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "value"
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label",
                  "defaultValue",
                  "options"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "stringTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validRegExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "numberTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "number"
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validMin": {
                    "type": "number"
                  },
                  "validMax": {
                    "type": "number"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "jsonTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "payloadPath"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "section"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              }
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "outputCount",
        "resultMode",
        "fields"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "version"
  ]
}

Workflow Version Post Example

{
  "version": "v1.2.3",
  "notes": "Notes about my new workflow version",
  "enabled": false
}

Workflow Versions

Schema for a collection of Workflow Versions

Workflow Versions Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Workflow Version",
        "description": "Schema for a single Workflow Version",
        "oneOf": [
          {
            "description": "Schema for a single Cloud/Edge/Embedded/Custom Node Workflow Version",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowVersionId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "createdById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "createdByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "lastUpdatedById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "lastUpdatedByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "version": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "flowClass": {
                "type": "string",
                "enum": [
                  "cloud",
                  "edge",
                  "embedded",
                  "customNode"
                ]
              },
              "notes": {
                "type": "string",
                "maxLength": 32767
              },
              "enabled": {
                "type": "boolean"
              },
              "triggers": {
                "type": "array",
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdConnect",
                            "deviceTagConnect",
                            "deviceIdDisconnect",
                            "deviceTagDisconnect",
                            "integration",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdsTagsConnect",
                                "deviceIdsTagsDisconnect",
                                "eeaInit",
                                "flowError",
                                "azureEventHub",
                                "googlePubSub",
                                "mqtt",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "particle",
                                "sqs",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete",
                                "websocket"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "bulkInsert": {
                              "type": "boolean"
                            },
                            "delete": {
                              "type": "boolean"
                            },
                            "insert": {
                              "type": "boolean"
                            },
                            "update": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceId",
                            "deviceTag"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "attributeBlacklist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "attributeWhitelist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "maxAge": {
                              "type": "number"
                            },
                            "triggerOn": {
                              "type": "string",
                              "enum": [
                                "batch",
                                "individual",
                                "both"
                              ]
                            },
                            "batchBehavior": {
                              "type": "string",
                              "enum": [
                                "once",
                                "each"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTags",
                                "device",
                                "deviceTag"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timeUnit": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "maxAgeToggle": {
                              "type": "boolean"
                            },
                            "allowedAttributeType": {
                              "type": "string",
                              "enum": [
                                "attributeWhitelist",
                                "any",
                                "attributeBlacklist"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceIdInactivity",
                            "deviceTagInactivity"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTagsInactivity"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {},
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "experienceVersion": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "subject": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "new": {
                              "type": "boolean"
                            },
                            "acknowledged": {
                              "type": "boolean"
                            },
                            "resolved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "scope": {
                              "type": "string",
                              "enum": [
                                "local",
                                "global",
                                "experience",
                                "cloud"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "mqttTopic"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "integrationId": {
                              "type": "string",
                              "enum": [
                                "losant",
                                "local",
                                "external"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "mqtt"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "syncTypes": {
                              "type": "array",
                              "maxItems": 3,
                              "minItems": 1,
                              "items": {
                                "type": "string",
                                "enum": [
                                  "application",
                                  "device",
                                  "peripheral"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "uri": {
                              "type": "string",
                              "format": "uri",
                              "maxLength": 1024
                            },
                            "securityPolicy": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "securityMode": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "username": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "cert": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "privateKey": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "nameSpace": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "identifier": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "samplingInterval": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "eventFilter": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "configName": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "redis"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "host": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "port": {
                              "type": "string",
                              "maxLength": 16
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "topic": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "redisTrigger"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "method": {
                              "type": "string",
                              "enum": [
                                "*",
                                "delete",
                                "get",
                                "options",
                                "patch",
                                "post",
                                "put"
                              ]
                            },
                            "route": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "baudRate": {
                              "type": "number"
                            },
                            "dataBits": {
                              "type": "number"
                            },
                            "stopBits": {
                              "type": "number"
                            },
                            "parity": {
                              "type": "string",
                              "maxLength": 8
                            },
                            "rtscts": {
                              "type": "boolean"
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "writeOnOpen": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "writeOnOpenEncoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiterEncoding": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "parseBy": {
                              "type": "string",
                              "enum": [
                                "byteLength",
                                "delimiter"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "udpPort": {
                              "type": "string",
                              "maxLength": 5
                            },
                            "snmpTrapConfig": {
                              "type": "object",
                              "properties": {
                                "community": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "user": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "securityLevel": {
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "auth",
                                        "authAndEncrypt"
                                      ]
                                    },
                                    "authMethod": {
                                      "type": "string",
                                      "enum": [
                                        "sha",
                                        "md5"
                                      ]
                                    },
                                    "authKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "encryptionMethod": {
                                      "type": "string",
                                      "enum": [
                                        "aes",
                                        "des"
                                      ]
                                    },
                                    "encryptionKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "securityLevel"
                                  ],
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "udpPort",
                            "snmpTrapConfig"
                          ],
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            },
                            "cron": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "tz": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timerTypeSelect": {
                              "type": "string",
                              "enum": [
                                "cronWeekly",
                                "seconds",
                                "cron"
                              ]
                            },
                            "timeAt": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "timezone": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "weekdays": {
                              "type": "array",
                              "maxItems": 7,
                              "items": {
                                "type": "number"
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "groupId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 262144
                            },
                            "deviceId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "pattern": "^[A-Fa-f\\d]{24}$"
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    ""
                                  ]
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "nodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "config": {
                      "type": "object"
                    },
                    "meta": {
                      "type": "object"
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "type"
                  ]
                }
              },
              "globals": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "json": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 32767
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "key",
                    "json"
                  ]
                }
              },
              "minimumAgentVersion": {
                "type": "string",
                "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
              },
              "customNodeConfig": {
                "type": "object",
                "properties": {
                  "outputCount": {
                    "type": "number",
                    "enum": [
                      1,
                      2
                    ]
                  },
                  "resultMode": {
                    "type": "string",
                    "enum": [
                      "optional",
                      "required",
                      "none"
                    ]
                  },
                  "resultDescription": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "fields": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "checkbox"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "select"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "options": {
                              "type": "array",
                              "minItems": 1,
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "label": {
                                    "type": "string",
                                    "maxLength": 1024
                                  },
                                  "value": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 1024
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "value"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label",
                            "defaultValue",
                            "options"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "stringTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "required": {
                              "type": "boolean"
                            },
                            "validRegExp": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "numberTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "number"
                            },
                            "required": {
                              "type": "boolean"
                            },
                            "validMin": {
                              "type": "number"
                            },
                            "validMax": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "jsonTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "required": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "payloadPath"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "required": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "section"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "outputCount",
                  "resultMode",
                  "fields"
                ]
              },
              "stats": {
                "type": "object",
                "properties": {
                  "runCount": {
                    "type": "number"
                  },
                  "errorCount": {
                    "type": "number"
                  },
                  "byVersion": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "object",
                        "properties": {
                          "runCount": {
                            "type": "number"
                          },
                          "errorCount": {
                            "type": "number"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          {
            "description": "Schema for a single Experience Workflow Version",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowVersionId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "flowClass": {
                "type": "string",
                "enum": [
                  "experience"
                ]
              },
              "versions": {
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "enabled": {
                "type": "boolean"
              },
              "triggers": {
                "type": "array",
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdConnect",
                            "deviceTagConnect",
                            "deviceIdDisconnect",
                            "deviceTagDisconnect",
                            "integration",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdsTagsConnect",
                                "deviceIdsTagsDisconnect",
                                "eeaInit",
                                "flowError",
                                "azureEventHub",
                                "googlePubSub",
                                "mqtt",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "particle",
                                "sqs",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete",
                                "websocket"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "bulkInsert": {
                              "type": "boolean"
                            },
                            "delete": {
                              "type": "boolean"
                            },
                            "insert": {
                              "type": "boolean"
                            },
                            "update": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceId",
                            "deviceTag"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "attributeBlacklist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "attributeWhitelist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "maxAge": {
                              "type": "number"
                            },
                            "triggerOn": {
                              "type": "string",
                              "enum": [
                                "batch",
                                "individual",
                                "both"
                              ]
                            },
                            "batchBehavior": {
                              "type": "string",
                              "enum": [
                                "once",
                                "each"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTags",
                                "device",
                                "deviceTag"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timeUnit": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "maxAgeToggle": {
                              "type": "boolean"
                            },
                            "allowedAttributeType": {
                              "type": "string",
                              "enum": [
                                "attributeWhitelist",
                                "any",
                                "attributeBlacklist"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceIdInactivity",
                            "deviceTagInactivity"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTagsInactivity"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {},
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "experienceVersion": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "subject": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "new": {
                              "type": "boolean"
                            },
                            "acknowledged": {
                              "type": "boolean"
                            },
                            "resolved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "scope": {
                              "type": "string",
                              "enum": [
                                "local",
                                "global",
                                "experience",
                                "cloud"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "mqttTopic"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "integrationId": {
                              "type": "string",
                              "enum": [
                                "losant",
                                "local",
                                "external"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "mqtt"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "syncTypes": {
                              "type": "array",
                              "maxItems": 3,
                              "minItems": 1,
                              "items": {
                                "type": "string",
                                "enum": [
                                  "application",
                                  "device",
                                  "peripheral"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "uri": {
                              "type": "string",
                              "format": "uri",
                              "maxLength": 1024
                            },
                            "securityPolicy": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "securityMode": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "username": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "cert": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "privateKey": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "nameSpace": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "identifier": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "samplingInterval": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "eventFilter": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "configName": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "redis"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "host": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "port": {
                              "type": "string",
                              "maxLength": 16
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "topic": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "redisTrigger"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "method": {
                              "type": "string",
                              "enum": [
                                "*",
                                "delete",
                                "get",
                                "options",
                                "patch",
                                "post",
                                "put"
                              ]
                            },
                            "route": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "baudRate": {
                              "type": "number"
                            },
                            "dataBits": {
                              "type": "number"
                            },
                            "stopBits": {
                              "type": "number"
                            },
                            "parity": {
                              "type": "string",
                              "maxLength": 8
                            },
                            "rtscts": {
                              "type": "boolean"
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "writeOnOpen": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "writeOnOpenEncoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiterEncoding": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "parseBy": {
                              "type": "string",
                              "enum": [
                                "byteLength",
                                "delimiter"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "udpPort": {
                              "type": "string",
                              "maxLength": 5
                            },
                            "snmpTrapConfig": {
                              "type": "object",
                              "properties": {
                                "community": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "user": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "securityLevel": {
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "auth",
                                        "authAndEncrypt"
                                      ]
                                    },
                                    "authMethod": {
                                      "type": "string",
                                      "enum": [
                                        "sha",
                                        "md5"
                                      ]
                                    },
                                    "authKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "encryptionMethod": {
                                      "type": "string",
                                      "enum": [
                                        "aes",
                                        "des"
                                      ]
                                    },
                                    "encryptionKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "securityLevel"
                                  ],
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "udpPort",
                            "snmpTrapConfig"
                          ],
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            },
                            "cron": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "tz": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timerTypeSelect": {
                              "type": "string",
                              "enum": [
                                "cronWeekly",
                                "seconds",
                                "cron"
                              ]
                            },
                            "timeAt": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "timezone": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "weekdays": {
                              "type": "array",
                              "maxItems": 7,
                              "items": {
                                "type": "number"
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "groupId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 262144
                            },
                            "deviceId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "pattern": "^[A-Fa-f\\d]{24}$"
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    ""
                                  ]
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "nodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "config": {
                      "type": "object"
                    },
                    "meta": {
                      "type": "object"
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "type"
                  ]
                }
              },
              "globals": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "json": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 32767
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "key",
                    "json"
                  ]
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "runCount": {
                    "type": "number"
                  },
                  "errorCount": {
                    "type": "number"
                  },
                  "byVersion": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "object",
                        "properties": {
                          "runCount": {
                            "type": "number"
                          },
                          "errorCount": {
                            "type": "number"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        ]
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "flowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Workflow Versions Example

{
  "items": [
    {
      "id": "675ed18f7ae143cd83dc4bb7",
      "flowVersionId": "675ed18f7ae143cd83dc4bb7",
      "flowId": "575ed18f7ae143cd83dc4aa6",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "description": "Description of my workflow version",
      "flowClass": "experience",
      "versions": [
        "v1.2.3"
      ],
      "enabled": true,
      "triggers": [],
      "nodes": [],
      "globals": []
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "version",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "flowId": "575ed18f7ae143cd83dc4aa6"
}

Flow Versions Delete Post

Schema for the body of a bulk flow versions delete request

Flow Versions Delete Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "query": {
      "title": "Advanced Workflow Version Query",
      "description": "Schema for advanced workflow queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedFlowVersionQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedFlowVersionQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedFlowVersionQuery"
          },
          "maxItems": 100
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "flowClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "enabled": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "version": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "triggers": {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "config": {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}$": {
                          "type": [
                            "string",
                            "number",
                            "boolean",
                            "null"
                          ],
                          "maxLength": 1024
                        }
                      }
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "config": {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}$": {
                          "type": [
                            "string",
                            "number",
                            "boolean",
                            "null"
                          ],
                          "maxLength": 1024
                        }
                      }
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "nodes": {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "maxLength": 255
                },
                "config": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": [
                        "string",
                        "number",
                        "boolean",
                        "null"
                      ],
                      "maxLength": 1024
                    }
                  }
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "config": {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}$": {
                          "type": [
                            "string",
                            "number",
                            "boolean",
                            "null"
                          ],
                          "maxLength": 1024
                        }
                      }
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "config": {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}$": {
                          "type": [
                            "string",
                            "number",
                            "boolean",
                            "null"
                          ],
                          "maxLength": 1024
                        }
                      }
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "customNodeSupports": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    }
  },
  "additionalProperties": false,
  "required": [
    "query"
  ]
}

Flow Versions Delete Post Example

{
  "query": {
    "version": {
      "$ne": "versionToKeep"
    }
  },
  "email": "email@example.com"
}

Workflows

Schema for a collection of Workflows

Workflows Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Workflow",
        "description": "Schema for a single Workflow",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "flowId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "createdById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "lastUpdatedById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "lastUpdatedByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "shortDescription": {
            "type": "string",
            "maxLength": 1024
          },
          "iconData": {
            "type": "string",
            "maxLength": 32767,
            "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
          },
          "docsUrl": {
            "type": "string",
            "maxLength": 1024
          },
          "category": {
            "type": "string",
            "enum": [
              "data",
              "experience",
              "logic",
              "output",
              "debug"
            ]
          },
          "enabled": {
            "type": "boolean"
          },
          "defaultVersionId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "minimumAgentVersion": {
            "type": "string",
            "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
          },
          "flowClass": {
            "type": "string",
            "enum": [
              "cloud",
              "edge",
              "embedded",
              "experience",
              "customNode"
            ]
          },
          "triggers": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "customNodeStart",
                        "deviceCommand",
                        "deviceIdConnect",
                        "deviceTagConnect",
                        "deviceIdDisconnect",
                        "deviceTagDisconnect",
                        "integration",
                        "notebook",
                        "onBoot",
                        "onConnect",
                        "onDisconnect",
                        "udp",
                        "webhook",
                        "resourceJobIteration",
                        "resourceJobIterationTimeout",
                        "resourceJobComplete"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdsTagsConnect",
                            "deviceIdsTagsDisconnect",
                            "eeaInit",
                            "flowError",
                            "azureEventHub",
                            "googlePubSub",
                            "mqtt",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "particle",
                            "sqs",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete",
                            "websocket"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "dataTable"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "bulkInsert": {
                          "type": "boolean"
                        },
                        "delete": {
                          "type": "boolean"
                        },
                        "insert": {
                          "type": "boolean"
                        },
                        "update": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceId",
                        "deviceTag"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "attributeBlacklist": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          }
                        },
                        "attributeWhitelist": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          }
                        },
                        "maxAge": {
                          "type": "number"
                        },
                        "triggerOn": {
                          "type": "string",
                          "enum": [
                            "batch",
                            "individual",
                            "both"
                          ]
                        },
                        "batchBehavior": {
                          "type": "string",
                          "enum": [
                            "once",
                            "each"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "deviceIdsTags",
                            "device",
                            "deviceTag"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "timeUnit": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "maxAgeToggle": {
                          "type": "boolean"
                        },
                        "allowedAttributeType": {
                          "type": "string",
                          "enum": [
                            "attributeWhitelist",
                            "any",
                            "attributeBlacklist"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceIdInactivity",
                        "deviceTagInactivity"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "seconds": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "deviceIdsTagsInactivity"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "direct"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "endpoint"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "experienceVersion": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "event"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "subject": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "new": {
                          "type": "boolean"
                        },
                        "acknowledged": {
                          "type": "boolean"
                        },
                        "resolved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "fileTail"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "encoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "byteLength": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiter": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "fileWatch"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "fileAdded": {
                          "type": "boolean"
                        },
                        "fileChanged": {
                          "type": "boolean"
                        },
                        "fileRemoved": {
                          "type": "boolean"
                        },
                        "directoryAdded": {
                          "type": "boolean"
                        },
                        "directoryRemoved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "flowError"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "scope": {
                          "type": "string",
                          "enum": [
                            "local",
                            "global",
                            "experience",
                            "cloud"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "mqttTopic"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "integrationId": {
                          "type": "string",
                          "enum": [
                            "losant",
                            "local",
                            "external"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "mqtt"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "onSync"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "syncTypes": {
                          "type": "array",
                          "maxItems": 3,
                          "minItems": 1,
                          "items": {
                            "type": "string",
                            "enum": [
                              "application",
                              "device",
                              "peripheral"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "opcua"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "string",
                          "format": "uri",
                          "maxLength": 1024
                        },
                        "securityPolicy": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "securityMode": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "username": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "password": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "cert": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "privateKey": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "nameSpace": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "identifier": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "samplingInterval": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "eventFilter": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "configName": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "redis"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "host": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "port": {
                          "type": "string",
                          "maxLength": 16
                        },
                        "password": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "topic": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "fileAdded": {
                          "type": "boolean"
                        },
                        "fileChanged": {
                          "type": "boolean"
                        },
                        "fileRemoved": {
                          "type": "boolean"
                        },
                        "directoryAdded": {
                          "type": "boolean"
                        },
                        "directoryRemoved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "redisTrigger"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "request"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "method": {
                          "type": "string",
                          "enum": [
                            "*",
                            "delete",
                            "get",
                            "options",
                            "patch",
                            "post",
                            "put"
                          ]
                        },
                        "route": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "serial"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "baudRate": {
                          "type": "number"
                        },
                        "dataBits": {
                          "type": "number"
                        },
                        "stopBits": {
                          "type": "number"
                        },
                        "parity": {
                          "type": "string",
                          "maxLength": 8
                        },
                        "rtscts": {
                          "type": "boolean"
                        },
                        "encoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "writeOnOpen": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "writeOnOpenEncoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "byteLength": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiter": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiterEncoding": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "parseBy": {
                          "type": "string",
                          "enum": [
                            "byteLength",
                            "delimiter"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "snmpTrap"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "udpPort": {
                          "type": "string",
                          "maxLength": 5
                        },
                        "snmpTrapConfig": {
                          "type": "object",
                          "properties": {
                            "community": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "user": {
                              "type": "object",
                              "properties": {
                                "name": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "securityLevel": {
                                  "type": "string",
                                  "enum": [
                                    "none",
                                    "auth",
                                    "authAndEncrypt"
                                  ]
                                },
                                "authMethod": {
                                  "type": "string",
                                  "enum": [
                                    "sha",
                                    "md5"
                                  ]
                                },
                                "authKey": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "encryptionMethod": {
                                  "type": "string",
                                  "enum": [
                                    "aes",
                                    "des"
                                  ]
                                },
                                "encryptionKey": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "required": [
                                "name",
                                "securityLevel"
                              ],
                              "additionalProperties": false
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "required": [
                        "udpPort",
                        "snmpTrapConfig"
                      ],
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "timer"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "seconds": {
                          "type": "number"
                        },
                        "cron": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "tz": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "timerTypeSelect": {
                          "type": "string",
                          "enum": [
                            "cronWeekly",
                            "seconds",
                            "cron"
                          ]
                        },
                        "timeAt": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "timezone": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "weekdays": {
                          "type": "array",
                          "maxItems": 7,
                          "items": {
                            "type": "number"
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "virtualButton"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "groupId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "payload": {
                          "type": "string",
                          "maxLength": 262144
                        },
                        "deviceId": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                ""
                              ]
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "nodes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "maxLength": 1024
                },
                "type": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "config": {
                  "type": "object"
                },
                "meta": {
                  "type": "object"
                },
                "outputIds": {
                  "type": "array",
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "maxLength": 48,
                      "minLength": 1
                    },
                    "maxItems": 100
                  },
                  "maxItems": 100
                }
              },
              "additionalProperties": false,
              "required": [
                "type"
              ]
            }
          },
          "customNodeConfig": {
            "type": "object",
            "properties": {
              "outputCount": {
                "type": "number",
                "enum": [
                  1,
                  2
                ]
              },
              "resultMode": {
                "type": "string",
                "enum": [
                  "optional",
                  "required",
                  "none"
                ]
              },
              "resultDescription": {
                "type": "string",
                "maxLength": 32767
              },
              "fields": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "checkbox"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "select"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "options": {
                          "type": "array",
                          "minItems": 1,
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "label": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 1024
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "value"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label",
                        "defaultValue",
                        "options"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "stringTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validRegExp": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "numberTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "number"
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validMin": {
                          "type": "number"
                        },
                        "validMax": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "jsonTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "payloadPath"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "section"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    }
                  ]
                }
              }
            },
            "additionalProperties": false,
            "required": [
              "outputCount",
              "resultMode",
              "fields"
            ]
          },
          "customNodeSupports": {
            "type": "array",
            "maxItems": 1,
            "items": {
              "type": "string",
              "enum": [
                "cloud",
                "edge"
              ]
            }
          },
          "customNodeUseCount": {
            "type": "number"
          },
          "globals": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "json": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 32767
                }
              },
              "additionalProperties": false,
              "required": [
                "key",
                "json"
              ]
            }
          },
          "deletedInDevelop": {
            "type": "boolean"
          },
          "stats": {
            "type": "object",
            "properties": {
              "runCount": {
                "type": "number"
              },
              "errorCount": {
                "type": "number"
              },
              "byVersion": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "object",
                    "properties": {
                      "runCount": {
                        "type": "number"
                      },
                      "errorCount": {
                        "type": "number"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "flowClass": {
      "type": "string",
      "enum": [
        "cloud",
        "edge",
        "embedded",
        "experience",
        "customNode"
      ]
    }
  }
}

Workflows Example

{
  "items": [
    {
      "id": "575ed18f7ae143cd83dc4aa6",
      "flowId": "575ed18f7ae143cd83dc4aa6",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Workflow",
      "description": "Description of my empty workflow",
      "enabled": true,
      "triggers": [],
      "nodes": [],
      "globals": [],
      "stats": {
        "runCount": 0,
        "errorCount": 0
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Workflows Import Post

Schema for the body of a workflow import request

Workflows Import Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flows": {
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "shortDescription": {
            "type": "string",
            "maxLength": 1024
          },
          "iconData": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 32767,
                "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
              },
              {
                "type": "null"
              }
            ]
          },
          "docsUrl": {
            "type": "string",
            "maxLength": 1024
          },
          "category": {
            "type": "string",
            "enum": [
              "data",
              "experience",
              "logic",
              "output",
              "debug",
              ""
            ]
          },
          "enabled": {
            "type": "boolean"
          },
          "triggers": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "customNodeStart",
                        "deviceCommand",
                        "deviceIdConnect",
                        "deviceTagConnect",
                        "deviceIdDisconnect",
                        "deviceTagDisconnect",
                        "integration",
                        "notebook",
                        "onBoot",
                        "onConnect",
                        "onDisconnect",
                        "udp",
                        "webhook",
                        "resourceJobIteration",
                        "resourceJobIterationTimeout",
                        "resourceJobComplete"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdsTagsConnect",
                            "deviceIdsTagsDisconnect",
                            "eeaInit",
                            "flowError",
                            "azureEventHub",
                            "googlePubSub",
                            "mqtt",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "particle",
                            "sqs",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete",
                            "websocket"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "dataTable"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "bulkInsert": {
                          "type": "boolean"
                        },
                        "delete": {
                          "type": "boolean"
                        },
                        "insert": {
                          "type": "boolean"
                        },
                        "update": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceId",
                        "deviceTag"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "attributeBlacklist": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          }
                        },
                        "attributeWhitelist": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          }
                        },
                        "maxAge": {
                          "type": "number"
                        },
                        "triggerOn": {
                          "type": "string",
                          "enum": [
                            "batch",
                            "individual",
                            "both"
                          ]
                        },
                        "batchBehavior": {
                          "type": "string",
                          "enum": [
                            "once",
                            "each"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "deviceIdsTags",
                            "device",
                            "deviceTag"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "timeUnit": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "maxAgeToggle": {
                          "type": "boolean"
                        },
                        "allowedAttributeType": {
                          "type": "string",
                          "enum": [
                            "attributeWhitelist",
                            "any",
                            "attributeBlacklist"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceIdInactivity",
                        "deviceTagInactivity"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "seconds": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "deviceIdsTagsInactivity"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "direct"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "endpoint"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "experienceVersion": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "event"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "subject": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "new": {
                          "type": "boolean"
                        },
                        "acknowledged": {
                          "type": "boolean"
                        },
                        "resolved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "fileTail"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "encoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "byteLength": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiter": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "fileWatch"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "fileAdded": {
                          "type": "boolean"
                        },
                        "fileChanged": {
                          "type": "boolean"
                        },
                        "fileRemoved": {
                          "type": "boolean"
                        },
                        "directoryAdded": {
                          "type": "boolean"
                        },
                        "directoryRemoved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "flowError"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "scope": {
                          "type": "string",
                          "enum": [
                            "local",
                            "global",
                            "experience",
                            "cloud"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "mqttTopic"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "integrationId": {
                          "type": "string",
                          "enum": [
                            "losant",
                            "local",
                            "external"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "mqtt"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "onSync"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "syncTypes": {
                          "type": "array",
                          "maxItems": 3,
                          "minItems": 1,
                          "items": {
                            "type": "string",
                            "enum": [
                              "application",
                              "device",
                              "peripheral"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "opcua"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "string",
                          "format": "uri",
                          "maxLength": 1024
                        },
                        "securityPolicy": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "securityMode": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "username": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "password": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "cert": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "privateKey": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "nameSpace": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "identifier": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "samplingInterval": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "eventFilter": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "configName": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "redis"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "host": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "port": {
                          "type": "string",
                          "maxLength": 16
                        },
                        "password": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "topic": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "fileAdded": {
                          "type": "boolean"
                        },
                        "fileChanged": {
                          "type": "boolean"
                        },
                        "fileRemoved": {
                          "type": "boolean"
                        },
                        "directoryAdded": {
                          "type": "boolean"
                        },
                        "directoryRemoved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "redisTrigger"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "request"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "method": {
                          "type": "string",
                          "enum": [
                            "*",
                            "delete",
                            "get",
                            "options",
                            "patch",
                            "post",
                            "put"
                          ]
                        },
                        "route": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "serial"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "baudRate": {
                          "type": "number"
                        },
                        "dataBits": {
                          "type": "number"
                        },
                        "stopBits": {
                          "type": "number"
                        },
                        "parity": {
                          "type": "string",
                          "maxLength": 8
                        },
                        "rtscts": {
                          "type": "boolean"
                        },
                        "encoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "writeOnOpen": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "writeOnOpenEncoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "byteLength": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiter": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiterEncoding": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "parseBy": {
                          "type": "string",
                          "enum": [
                            "byteLength",
                            "delimiter"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "snmpTrap"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "udpPort": {
                          "type": "string",
                          "maxLength": 5
                        },
                        "snmpTrapConfig": {
                          "type": "object",
                          "properties": {
                            "community": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "user": {
                              "type": "object",
                              "properties": {
                                "name": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "securityLevel": {
                                  "type": "string",
                                  "enum": [
                                    "none",
                                    "auth",
                                    "authAndEncrypt"
                                  ]
                                },
                                "authMethod": {
                                  "type": "string",
                                  "enum": [
                                    "sha",
                                    "md5"
                                  ]
                                },
                                "authKey": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "encryptionMethod": {
                                  "type": "string",
                                  "enum": [
                                    "aes",
                                    "des"
                                  ]
                                },
                                "encryptionKey": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "required": [
                                "name",
                                "securityLevel"
                              ],
                              "additionalProperties": false
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "required": [
                        "udpPort",
                        "snmpTrapConfig"
                      ],
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "timer"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "seconds": {
                          "type": "number"
                        },
                        "cron": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "tz": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "timerTypeSelect": {
                          "type": "string",
                          "enum": [
                            "cronWeekly",
                            "seconds",
                            "cron"
                          ]
                        },
                        "timeAt": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "timezone": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "weekdays": {
                          "type": "array",
                          "maxItems": 7,
                          "items": {
                            "type": "number"
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "virtualButton"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "groupId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "payload": {
                          "type": "string",
                          "maxLength": 262144
                        },
                        "deviceId": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                ""
                              ]
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "nodes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "maxLength": 1024
                },
                "type": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "config": {
                  "type": "object"
                },
                "meta": {
                  "type": "object"
                },
                "outputIds": {
                  "type": "array",
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "maxLength": 48,
                      "minLength": 1
                    },
                    "maxItems": 100
                  },
                  "maxItems": 100
                }
              },
              "additionalProperties": false,
              "required": [
                "type"
              ]
            }
          },
          "globals": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "json": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 32767
                }
              },
              "additionalProperties": false,
              "required": [
                "key",
                "json"
              ]
            }
          },
          "flowClass": {
            "type": "string",
            "enum": [
              "cloud",
              "edge",
              "embedded",
              "experience",
              "customNode"
            ]
          },
          "defaultVersionId": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "minimumAgentVersion": {
            "type": "string",
            "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
          },
          "customNodeConfig": {
            "type": "object",
            "properties": {
              "outputCount": {
                "type": "number",
                "enum": [
                  1,
                  2
                ]
              },
              "resultMode": {
                "type": "string",
                "enum": [
                  "optional",
                  "required",
                  "none"
                ]
              },
              "resultDescription": {
                "type": "string",
                "maxLength": 32767
              },
              "fields": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "checkbox"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "select"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "options": {
                          "type": "array",
                          "minItems": 1,
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "label": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 1024
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "value"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label",
                        "defaultValue",
                        "options"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "stringTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validRegExp": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "numberTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "number"
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validMin": {
                          "type": "number"
                        },
                        "validMax": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "jsonTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "payloadPath"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "section"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    }
                  ]
                }
              }
            },
            "additionalProperties": false,
            "required": [
              "outputCount",
              "resultMode",
              "fields"
            ]
          },
          "customNodeSupports": {
            "type": "array",
            "maxItems": 1,
            "items": {
              "type": "string",
              "enum": [
                "cloud",
                "edge"
              ]
            }
          }
        },
        "additionalProperties": {
          "type": "string",
          "maxLength": 1024
        },
        "required": [
          "name"
        ]
      }
    },
    "flowVersions": {
      "maxItems": 1000,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "flowId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "version": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "notes": {
            "type": "string",
            "maxLength": 32767
          },
          "enabled": {
            "type": "boolean"
          },
          "triggers": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "customNodeStart",
                        "deviceCommand",
                        "deviceIdConnect",
                        "deviceTagConnect",
                        "deviceIdDisconnect",
                        "deviceTagDisconnect",
                        "integration",
                        "notebook",
                        "onBoot",
                        "onConnect",
                        "onDisconnect",
                        "udp",
                        "webhook",
                        "resourceJobIteration",
                        "resourceJobIterationTimeout",
                        "resourceJobComplete"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdsTagsConnect",
                            "deviceIdsTagsDisconnect",
                            "eeaInit",
                            "flowError",
                            "azureEventHub",
                            "googlePubSub",
                            "mqtt",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "particle",
                            "sqs",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete",
                            "websocket"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "dataTable"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "bulkInsert": {
                          "type": "boolean"
                        },
                        "delete": {
                          "type": "boolean"
                        },
                        "insert": {
                          "type": "boolean"
                        },
                        "update": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceId",
                        "deviceTag"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "attributeBlacklist": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          }
                        },
                        "attributeWhitelist": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          }
                        },
                        "maxAge": {
                          "type": "number"
                        },
                        "triggerOn": {
                          "type": "string",
                          "enum": [
                            "batch",
                            "individual",
                            "both"
                          ]
                        },
                        "batchBehavior": {
                          "type": "string",
                          "enum": [
                            "once",
                            "each"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "deviceIdsTags",
                            "device",
                            "deviceTag"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "timeUnit": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "maxAgeToggle": {
                          "type": "boolean"
                        },
                        "allowedAttributeType": {
                          "type": "string",
                          "enum": [
                            "attributeWhitelist",
                            "any",
                            "attributeBlacklist"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceIdInactivity",
                        "deviceTagInactivity"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "seconds": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "deviceIdsTagsInactivity"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "direct"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "endpoint"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "experienceVersion": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "event"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "subject": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "new": {
                          "type": "boolean"
                        },
                        "acknowledged": {
                          "type": "boolean"
                        },
                        "resolved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "fileTail"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "encoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "byteLength": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiter": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "fileWatch"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "fileAdded": {
                          "type": "boolean"
                        },
                        "fileChanged": {
                          "type": "boolean"
                        },
                        "fileRemoved": {
                          "type": "boolean"
                        },
                        "directoryAdded": {
                          "type": "boolean"
                        },
                        "directoryRemoved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "flowError"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "scope": {
                          "type": "string",
                          "enum": [
                            "local",
                            "global",
                            "experience",
                            "cloud"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "mqttTopic"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "integrationId": {
                          "type": "string",
                          "enum": [
                            "losant",
                            "local",
                            "external"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "mqtt"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "onSync"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "syncTypes": {
                          "type": "array",
                          "maxItems": 3,
                          "minItems": 1,
                          "items": {
                            "type": "string",
                            "enum": [
                              "application",
                              "device",
                              "peripheral"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "opcua"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "string",
                          "format": "uri",
                          "maxLength": 1024
                        },
                        "securityPolicy": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "securityMode": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "username": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "password": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "cert": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "privateKey": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "nameSpace": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "identifier": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "samplingInterval": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "eventFilter": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "configName": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "redis"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "host": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "port": {
                          "type": "string",
                          "maxLength": 16
                        },
                        "password": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "topic": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "fileAdded": {
                          "type": "boolean"
                        },
                        "fileChanged": {
                          "type": "boolean"
                        },
                        "fileRemoved": {
                          "type": "boolean"
                        },
                        "directoryAdded": {
                          "type": "boolean"
                        },
                        "directoryRemoved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "redisTrigger"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "request"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "method": {
                          "type": "string",
                          "enum": [
                            "*",
                            "delete",
                            "get",
                            "options",
                            "patch",
                            "post",
                            "put"
                          ]
                        },
                        "route": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "serial"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "baudRate": {
                          "type": "number"
                        },
                        "dataBits": {
                          "type": "number"
                        },
                        "stopBits": {
                          "type": "number"
                        },
                        "parity": {
                          "type": "string",
                          "maxLength": 8
                        },
                        "rtscts": {
                          "type": "boolean"
                        },
                        "encoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "writeOnOpen": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "writeOnOpenEncoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "byteLength": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiter": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiterEncoding": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "parseBy": {
                          "type": "string",
                          "enum": [
                            "byteLength",
                            "delimiter"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "snmpTrap"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "udpPort": {
                          "type": "string",
                          "maxLength": 5
                        },
                        "snmpTrapConfig": {
                          "type": "object",
                          "properties": {
                            "community": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "user": {
                              "type": "object",
                              "properties": {
                                "name": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "securityLevel": {
                                  "type": "string",
                                  "enum": [
                                    "none",
                                    "auth",
                                    "authAndEncrypt"
                                  ]
                                },
                                "authMethod": {
                                  "type": "string",
                                  "enum": [
                                    "sha",
                                    "md5"
                                  ]
                                },
                                "authKey": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "encryptionMethod": {
                                  "type": "string",
                                  "enum": [
                                    "aes",
                                    "des"
                                  ]
                                },
                                "encryptionKey": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "required": [
                                "name",
                                "securityLevel"
                              ],
                              "additionalProperties": false
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "required": [
                        "udpPort",
                        "snmpTrapConfig"
                      ],
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "timer"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "seconds": {
                          "type": "number"
                        },
                        "cron": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "tz": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "timerTypeSelect": {
                          "type": "string",
                          "enum": [
                            "cronWeekly",
                            "seconds",
                            "cron"
                          ]
                        },
                        "timeAt": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "timezone": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "weekdays": {
                          "type": "array",
                          "maxItems": 7,
                          "items": {
                            "type": "number"
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "virtualButton"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "groupId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "payload": {
                          "type": "string",
                          "maxLength": 262144
                        },
                        "deviceId": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                ""
                              ]
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "nodes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "maxLength": 1024
                },
                "type": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "config": {
                  "type": "object"
                },
                "meta": {
                  "type": "object"
                },
                "outputIds": {
                  "type": "array",
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "maxLength": 48,
                      "minLength": 1
                    },
                    "maxItems": 100
                  },
                  "maxItems": 100
                }
              },
              "additionalProperties": false,
              "required": [
                "type"
              ]
            }
          },
          "globals": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "json": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 32767
                }
              },
              "additionalProperties": false,
              "required": [
                "key",
                "json"
              ]
            }
          },
          "minimumAgentVersion": {
            "type": "string",
            "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
          },
          "customNodeConfig": {
            "type": "object",
            "properties": {
              "outputCount": {
                "type": "number",
                "enum": [
                  1,
                  2
                ]
              },
              "resultMode": {
                "type": "string",
                "enum": [
                  "optional",
                  "required",
                  "none"
                ]
              },
              "resultDescription": {
                "type": "string",
                "maxLength": 32767
              },
              "fields": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "checkbox"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "select"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "options": {
                          "type": "array",
                          "minItems": 1,
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "label": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 1024
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "value"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label",
                        "defaultValue",
                        "options"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "stringTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validRegExp": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "numberTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "number"
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validMin": {
                          "type": "number"
                        },
                        "validMax": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "jsonTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "payloadPath"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "section"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    }
                  ]
                }
              }
            },
            "additionalProperties": false,
            "required": [
              "outputCount",
              "resultMode",
              "fields"
            ]
          }
        },
        "additionalProperties": {
          "type": "string",
          "maxLength": 1024
        },
        "required": [
          "version"
        ]
      }
    }
  },
  "additionalProperties": false
}

Workflows Import Post Example

{
  "flows": [
    {
      "name": "My New Workflow",
      "description": "Description of my new workflow"
    }
  ],
  "flowVersions": []
}

Workflow Import Result

Schema for the result of a workflow import request

Workflow Import Result Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "flows": {
      "maxItems": 1000,
      "type": "array",
      "items": {
        "title": "Workflow",
        "description": "Schema for a single Workflow",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "flowId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "createdById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "lastUpdatedById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "lastUpdatedByType": {
            "type": "string",
            "enum": [
              "flow",
              "user",
              "apiToken"
            ]
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "shortDescription": {
            "type": "string",
            "maxLength": 1024
          },
          "iconData": {
            "type": "string",
            "maxLength": 32767,
            "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
          },
          "docsUrl": {
            "type": "string",
            "maxLength": 1024
          },
          "category": {
            "type": "string",
            "enum": [
              "data",
              "experience",
              "logic",
              "output",
              "debug"
            ]
          },
          "enabled": {
            "type": "boolean"
          },
          "defaultVersionId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "minimumAgentVersion": {
            "type": "string",
            "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
          },
          "flowClass": {
            "type": "string",
            "enum": [
              "cloud",
              "edge",
              "embedded",
              "experience",
              "customNode"
            ]
          },
          "triggers": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "customNodeStart",
                        "deviceCommand",
                        "deviceIdConnect",
                        "deviceTagConnect",
                        "deviceIdDisconnect",
                        "deviceTagDisconnect",
                        "integration",
                        "notebook",
                        "onBoot",
                        "onConnect",
                        "onDisconnect",
                        "udp",
                        "webhook",
                        "resourceJobIteration",
                        "resourceJobIterationTimeout",
                        "resourceJobComplete"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdsTagsConnect",
                            "deviceIdsTagsDisconnect",
                            "eeaInit",
                            "flowError",
                            "azureEventHub",
                            "googlePubSub",
                            "mqtt",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "particle",
                            "sqs",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete",
                            "websocket"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "dataTable"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "bulkInsert": {
                          "type": "boolean"
                        },
                        "delete": {
                          "type": "boolean"
                        },
                        "insert": {
                          "type": "boolean"
                        },
                        "update": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceId",
                        "deviceTag"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "attributeBlacklist": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          }
                        },
                        "attributeWhitelist": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                          }
                        },
                        "maxAge": {
                          "type": "number"
                        },
                        "triggerOn": {
                          "type": "string",
                          "enum": [
                            "batch",
                            "individual",
                            "both"
                          ]
                        },
                        "batchBehavior": {
                          "type": "string",
                          "enum": [
                            "once",
                            "each"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "deviceIdsTags",
                            "device",
                            "deviceTag"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "timeUnit": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "maxAgeToggle": {
                          "type": "boolean"
                        },
                        "allowedAttributeType": {
                          "type": "string",
                          "enum": [
                            "attributeWhitelist",
                            "any",
                            "attributeBlacklist"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "deviceIdInactivity",
                        "deviceTagInactivity"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "seconds": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "deviceIdsTagsInactivity"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "direct"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "endpoint"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "experienceVersion": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "event"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "subject": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "new": {
                          "type": "boolean"
                        },
                        "acknowledged": {
                          "type": "boolean"
                        },
                        "resolved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "fileTail"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "encoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "byteLength": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiter": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "fileWatch"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "fileAdded": {
                          "type": "boolean"
                        },
                        "fileChanged": {
                          "type": "boolean"
                        },
                        "fileRemoved": {
                          "type": "boolean"
                        },
                        "directoryAdded": {
                          "type": "boolean"
                        },
                        "directoryRemoved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "flowError"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "scope": {
                          "type": "string",
                          "enum": [
                            "local",
                            "global",
                            "experience",
                            "cloud"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "mqttTopic"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "integrationId": {
                          "type": "string",
                          "enum": [
                            "losant",
                            "local",
                            "external"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "mqtt"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "onSync"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "syncTypes": {
                          "type": "array",
                          "maxItems": 3,
                          "minItems": 1,
                          "items": {
                            "type": "string",
                            "enum": [
                              "application",
                              "device",
                              "peripheral"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "opcua"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "uri": {
                          "type": "string",
                          "format": "uri",
                          "maxLength": 1024
                        },
                        "securityPolicy": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "securityMode": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "username": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "password": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "cert": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "privateKey": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "nameSpace": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "identifier": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "samplingInterval": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "eventFilter": {
                          "type": "array",
                          "maxItems": 100,
                          "items": {
                            "type": "string",
                            "maxLength": 255
                          }
                        },
                        "configName": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "redis"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "host": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "port": {
                          "type": "string",
                          "maxLength": 16
                        },
                        "password": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "topic": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "fileAdded": {
                          "type": "boolean"
                        },
                        "fileChanged": {
                          "type": "boolean"
                        },
                        "fileRemoved": {
                          "type": "boolean"
                        },
                        "directoryAdded": {
                          "type": "boolean"
                        },
                        "directoryRemoved": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "redisTrigger"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "request"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "method": {
                          "type": "string",
                          "enum": [
                            "*",
                            "delete",
                            "get",
                            "options",
                            "patch",
                            "post",
                            "put"
                          ]
                        },
                        "route": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "triggerId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "serial"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "path": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "baudRate": {
                          "type": "number"
                        },
                        "dataBits": {
                          "type": "number"
                        },
                        "stopBits": {
                          "type": "number"
                        },
                        "parity": {
                          "type": "string",
                          "maxLength": 8
                        },
                        "rtscts": {
                          "type": "boolean"
                        },
                        "encoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "writeOnOpen": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "writeOnOpenEncoding": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "byteLength": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiter": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "delimiterEncoding": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "parseBy": {
                          "type": "string",
                          "enum": [
                            "byteLength",
                            "delimiter"
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "snmpTrap"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "udpPort": {
                          "type": "string",
                          "maxLength": 5
                        },
                        "snmpTrapConfig": {
                          "type": "object",
                          "properties": {
                            "community": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "user": {
                              "type": "object",
                              "properties": {
                                "name": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "securityLevel": {
                                  "type": "string",
                                  "enum": [
                                    "none",
                                    "auth",
                                    "authAndEncrypt"
                                  ]
                                },
                                "authMethod": {
                                  "type": "string",
                                  "enum": [
                                    "sha",
                                    "md5"
                                  ]
                                },
                                "authKey": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "encryptionMethod": {
                                  "type": "string",
                                  "enum": [
                                    "aes",
                                    "des"
                                  ]
                                },
                                "encryptionKey": {
                                  "type": "string",
                                  "maxLength": 1024
                                }
                              },
                              "required": [
                                "name",
                                "securityLevel"
                              ],
                              "additionalProperties": false
                            }
                          },
                          "additionalProperties": false
                        }
                      },
                      "required": [
                        "udpPort",
                        "snmpTrapConfig"
                      ],
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "timer"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "properties": {
                        "seconds": {
                          "type": "number"
                        },
                        "cron": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "tz": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "timerTypeSelect": {
                          "type": "string",
                          "enum": [
                            "cronWeekly",
                            "seconds",
                            "cron"
                          ]
                        },
                        "timeAt": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "timezone": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "weekdays": {
                          "type": "array",
                          "maxItems": 7,
                          "items": {
                            "type": "number"
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "virtualButton"
                      ]
                    },
                    "config": {
                      "type": "object",
                      "additionalProperties": false
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "category": {
                          "type": "string",
                          "enum": [
                            "trigger"
                          ]
                        },
                        "name": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "x": {
                          "type": "number"
                        },
                        "y": {
                          "type": "number"
                        },
                        "uiId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "groupId": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "icon": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "color": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "inputCount": {
                          "type": "number"
                        },
                        "outputCount": {
                          "type": "number"
                        },
                        "id": {
                          "type": "string",
                          "maxLength": 48
                        },
                        "payload": {
                          "type": "string",
                          "maxLength": 262144
                        },
                        "deviceId": {
                          "oneOf": [
                            {
                              "type": "string",
                              "pattern": "^[A-Fa-f\\d]{24}$"
                            },
                            {
                              "type": "string",
                              "enum": [
                                ""
                              ]
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "additionalProperties": false
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "nodes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "maxLength": 1024
                },
                "type": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "config": {
                  "type": "object"
                },
                "meta": {
                  "type": "object"
                },
                "outputIds": {
                  "type": "array",
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "maxLength": 48,
                      "minLength": 1
                    },
                    "maxItems": 100
                  },
                  "maxItems": 100
                }
              },
              "additionalProperties": false,
              "required": [
                "type"
              ]
            }
          },
          "customNodeConfig": {
            "type": "object",
            "properties": {
              "outputCount": {
                "type": "number",
                "enum": [
                  1,
                  2
                ]
              },
              "resultMode": {
                "type": "string",
                "enum": [
                  "optional",
                  "required",
                  "none"
                ]
              },
              "resultDescription": {
                "type": "string",
                "maxLength": 32767
              },
              "fields": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "checkbox"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "select"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "options": {
                          "type": "array",
                          "minItems": 1,
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "label": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 1024
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "value"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label",
                        "defaultValue",
                        "options"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "stringTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validRegExp": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "numberTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "number"
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validMin": {
                          "type": "number"
                        },
                        "validMax": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "jsonTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "payloadPath"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "section"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    }
                  ]
                }
              }
            },
            "additionalProperties": false,
            "required": [
              "outputCount",
              "resultMode",
              "fields"
            ]
          },
          "customNodeSupports": {
            "type": "array",
            "maxItems": 1,
            "items": {
              "type": "string",
              "enum": [
                "cloud",
                "edge"
              ]
            }
          },
          "customNodeUseCount": {
            "type": "number"
          },
          "globals": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "json": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 32767
                }
              },
              "additionalProperties": false,
              "required": [
                "key",
                "json"
              ]
            }
          },
          "deletedInDevelop": {
            "type": "boolean"
          },
          "stats": {
            "type": "object",
            "properties": {
              "runCount": {
                "type": "number"
              },
              "errorCount": {
                "type": "number"
              },
              "byVersion": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "object",
                    "properties": {
                      "runCount": {
                        "type": "number"
                      },
                      "errorCount": {
                        "type": "number"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "flowVersions": {
      "maxItems": 1000,
      "type": "array",
      "items": {
        "title": "Workflow Version",
        "description": "Schema for a single Workflow Version",
        "oneOf": [
          {
            "description": "Schema for a single Cloud/Edge/Embedded/Custom Node Workflow Version",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowVersionId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "createdById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "createdByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "lastUpdatedById": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "lastUpdatedByType": {
                "type": "string",
                "enum": [
                  "flow",
                  "user",
                  "apiToken"
                ]
              },
              "version": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "flowClass": {
                "type": "string",
                "enum": [
                  "cloud",
                  "edge",
                  "embedded",
                  "customNode"
                ]
              },
              "notes": {
                "type": "string",
                "maxLength": 32767
              },
              "enabled": {
                "type": "boolean"
              },
              "triggers": {
                "type": "array",
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdConnect",
                            "deviceTagConnect",
                            "deviceIdDisconnect",
                            "deviceTagDisconnect",
                            "integration",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdsTagsConnect",
                                "deviceIdsTagsDisconnect",
                                "eeaInit",
                                "flowError",
                                "azureEventHub",
                                "googlePubSub",
                                "mqtt",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "particle",
                                "sqs",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete",
                                "websocket"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "bulkInsert": {
                              "type": "boolean"
                            },
                            "delete": {
                              "type": "boolean"
                            },
                            "insert": {
                              "type": "boolean"
                            },
                            "update": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceId",
                            "deviceTag"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "attributeBlacklist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "attributeWhitelist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "maxAge": {
                              "type": "number"
                            },
                            "triggerOn": {
                              "type": "string",
                              "enum": [
                                "batch",
                                "individual",
                                "both"
                              ]
                            },
                            "batchBehavior": {
                              "type": "string",
                              "enum": [
                                "once",
                                "each"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTags",
                                "device",
                                "deviceTag"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timeUnit": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "maxAgeToggle": {
                              "type": "boolean"
                            },
                            "allowedAttributeType": {
                              "type": "string",
                              "enum": [
                                "attributeWhitelist",
                                "any",
                                "attributeBlacklist"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceIdInactivity",
                            "deviceTagInactivity"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTagsInactivity"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {},
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "experienceVersion": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "subject": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "new": {
                              "type": "boolean"
                            },
                            "acknowledged": {
                              "type": "boolean"
                            },
                            "resolved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "scope": {
                              "type": "string",
                              "enum": [
                                "local",
                                "global",
                                "experience",
                                "cloud"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "mqttTopic"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "integrationId": {
                              "type": "string",
                              "enum": [
                                "losant",
                                "local",
                                "external"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "mqtt"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "syncTypes": {
                              "type": "array",
                              "maxItems": 3,
                              "minItems": 1,
                              "items": {
                                "type": "string",
                                "enum": [
                                  "application",
                                  "device",
                                  "peripheral"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "uri": {
                              "type": "string",
                              "format": "uri",
                              "maxLength": 1024
                            },
                            "securityPolicy": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "securityMode": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "username": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "cert": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "privateKey": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "nameSpace": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "identifier": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "samplingInterval": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "eventFilter": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "configName": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "redis"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "host": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "port": {
                              "type": "string",
                              "maxLength": 16
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "topic": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "redisTrigger"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "method": {
                              "type": "string",
                              "enum": [
                                "*",
                                "delete",
                                "get",
                                "options",
                                "patch",
                                "post",
                                "put"
                              ]
                            },
                            "route": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "baudRate": {
                              "type": "number"
                            },
                            "dataBits": {
                              "type": "number"
                            },
                            "stopBits": {
                              "type": "number"
                            },
                            "parity": {
                              "type": "string",
                              "maxLength": 8
                            },
                            "rtscts": {
                              "type": "boolean"
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "writeOnOpen": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "writeOnOpenEncoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiterEncoding": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "parseBy": {
                              "type": "string",
                              "enum": [
                                "byteLength",
                                "delimiter"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "udpPort": {
                              "type": "string",
                              "maxLength": 5
                            },
                            "snmpTrapConfig": {
                              "type": "object",
                              "properties": {
                                "community": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "user": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "securityLevel": {
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "auth",
                                        "authAndEncrypt"
                                      ]
                                    },
                                    "authMethod": {
                                      "type": "string",
                                      "enum": [
                                        "sha",
                                        "md5"
                                      ]
                                    },
                                    "authKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "encryptionMethod": {
                                      "type": "string",
                                      "enum": [
                                        "aes",
                                        "des"
                                      ]
                                    },
                                    "encryptionKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "securityLevel"
                                  ],
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "udpPort",
                            "snmpTrapConfig"
                          ],
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            },
                            "cron": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "tz": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timerTypeSelect": {
                              "type": "string",
                              "enum": [
                                "cronWeekly",
                                "seconds",
                                "cron"
                              ]
                            },
                            "timeAt": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "timezone": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "weekdays": {
                              "type": "array",
                              "maxItems": 7,
                              "items": {
                                "type": "number"
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "groupId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 262144
                            },
                            "deviceId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "pattern": "^[A-Fa-f\\d]{24}$"
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    ""
                                  ]
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "nodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "config": {
                      "type": "object"
                    },
                    "meta": {
                      "type": "object"
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "type"
                  ]
                }
              },
              "globals": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "json": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 32767
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "key",
                    "json"
                  ]
                }
              },
              "minimumAgentVersion": {
                "type": "string",
                "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
              },
              "customNodeConfig": {
                "type": "object",
                "properties": {
                  "outputCount": {
                    "type": "number",
                    "enum": [
                      1,
                      2
                    ]
                  },
                  "resultMode": {
                    "type": "string",
                    "enum": [
                      "optional",
                      "required",
                      "none"
                    ]
                  },
                  "resultDescription": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "fields": {
                    "type": "array",
                    "maxItems": 100,
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "checkbox"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "select"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "options": {
                              "type": "array",
                              "minItems": 1,
                              "maxItems": 100,
                              "items": {
                                "type": "object",
                                "properties": {
                                  "label": {
                                    "type": "string",
                                    "maxLength": 1024
                                  },
                                  "value": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 1024
                                  }
                                },
                                "additionalProperties": false,
                                "required": [
                                  "value"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label",
                            "defaultValue",
                            "options"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "stringTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "required": {
                              "type": "boolean"
                            },
                            "validRegExp": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "numberTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "number"
                            },
                            "required": {
                              "type": "boolean"
                            },
                            "validMin": {
                              "type": "number"
                            },
                            "validMax": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "jsonTemplate"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "defaultValue": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "required": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "payloadPath"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "required": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "section"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "id": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 1024
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false,
                          "required": [
                            "type",
                            "label"
                          ]
                        }
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "outputCount",
                  "resultMode",
                  "fields"
                ]
              },
              "stats": {
                "type": "object",
                "properties": {
                  "runCount": {
                    "type": "number"
                  },
                  "errorCount": {
                    "type": "number"
                  },
                  "byVersion": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "object",
                        "properties": {
                          "runCount": {
                            "type": "number"
                          },
                          "errorCount": {
                            "type": "number"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          {
            "description": "Schema for a single Experience Workflow Version",
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowVersionId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "flowId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "applicationId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "creationDate": {
                "type": "string",
                "format": "date-time"
              },
              "lastUpdated": {
                "type": "string",
                "format": "date-time"
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              },
              "flowClass": {
                "type": "string",
                "enum": [
                  "experience"
                ]
              },
              "versions": {
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "enabled": {
                "type": "boolean"
              },
              "triggers": {
                "type": "array",
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "customNodeStart",
                            "deviceCommand",
                            "deviceIdConnect",
                            "deviceTagConnect",
                            "deviceIdDisconnect",
                            "deviceTagDisconnect",
                            "integration",
                            "notebook",
                            "onBoot",
                            "onConnect",
                            "onDisconnect",
                            "udp",
                            "webhook",
                            "resourceJobIteration",
                            "resourceJobIterationTimeout",
                            "resourceJobComplete"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "customNodeStart",
                                "deviceCommand",
                                "deviceIdsTagsConnect",
                                "deviceIdsTagsDisconnect",
                                "eeaInit",
                                "flowError",
                                "azureEventHub",
                                "googlePubSub",
                                "mqtt",
                                "notebook",
                                "onBoot",
                                "onConnect",
                                "onDisconnect",
                                "particle",
                                "sqs",
                                "udp",
                                "webhook",
                                "resourceJobIteration",
                                "resourceJobIterationTimeout",
                                "resourceJobComplete",
                                "websocket"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "dataTable"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "bulkInsert": {
                              "type": "boolean"
                            },
                            "delete": {
                              "type": "boolean"
                            },
                            "insert": {
                              "type": "boolean"
                            },
                            "update": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "dataTable"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceId",
                            "deviceTag"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "attributeBlacklist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "attributeWhitelist": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              }
                            },
                            "maxAge": {
                              "type": "number"
                            },
                            "triggerOn": {
                              "type": "string",
                              "enum": [
                                "batch",
                                "individual",
                                "both"
                              ]
                            },
                            "batchBehavior": {
                              "type": "string",
                              "enum": [
                                "once",
                                "each"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTags",
                                "device",
                                "deviceTag"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timeUnit": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "maxAgeToggle": {
                              "type": "boolean"
                            },
                            "allowedAttributeType": {
                              "type": "string",
                              "enum": [
                                "attributeWhitelist",
                                "any",
                                "attributeBlacklist"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "deviceIdInactivity",
                            "deviceTagInactivity"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "deviceIdsTagsInactivity"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "direct"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {},
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "direct"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "endpoint"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "experienceVersion": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "endpoint"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "event"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "subject": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "new": {
                              "type": "boolean"
                            },
                            "acknowledged": {
                              "type": "boolean"
                            },
                            "resolved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "event"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileTail"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileTail"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "fileWatch"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "fileWatch"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "flowError"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "scope": {
                              "type": "string",
                              "enum": [
                                "local",
                                "global",
                                "experience",
                                "cloud"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "flowError"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "mqttTopic"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "integrationId": {
                              "type": "string",
                              "enum": [
                                "losant",
                                "local",
                                "external"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "mqtt"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "onSync"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "syncTypes": {
                              "type": "array",
                              "maxItems": 3,
                              "minItems": 1,
                              "items": {
                                "type": "string",
                                "enum": [
                                  "application",
                                  "device",
                                  "peripheral"
                                ]
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "onSync"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "opcua"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "uri": {
                              "type": "string",
                              "format": "uri",
                              "maxLength": 1024
                            },
                            "securityPolicy": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "securityMode": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "username": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "cert": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "privateKey": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "nameSpace": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "identifier": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "samplingInterval": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "eventFilter": {
                              "type": "array",
                              "maxItems": 100,
                              "items": {
                                "type": "string",
                                "maxLength": 255
                              }
                            },
                            "configName": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "opcua"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "redis"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "host": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "port": {
                              "type": "string",
                              "maxLength": 16
                            },
                            "password": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "topic": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "fileAdded": {
                              "type": "boolean"
                            },
                            "fileChanged": {
                              "type": "boolean"
                            },
                            "fileRemoved": {
                              "type": "boolean"
                            },
                            "directoryAdded": {
                              "type": "boolean"
                            },
                            "directoryRemoved": {
                              "type": "boolean"
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "redisTrigger"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "request"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "method": {
                              "type": "string",
                              "enum": [
                                "*",
                                "delete",
                                "get",
                                "options",
                                "patch",
                                "post",
                                "put"
                              ]
                            },
                            "route": {
                              "type": "string",
                              "maxLength": 1024
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "request"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "triggerId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "serial"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "path": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "baudRate": {
                              "type": "number"
                            },
                            "dataBits": {
                              "type": "number"
                            },
                            "stopBits": {
                              "type": "number"
                            },
                            "parity": {
                              "type": "string",
                              "maxLength": 8
                            },
                            "rtscts": {
                              "type": "boolean"
                            },
                            "encoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "writeOnOpen": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "writeOnOpenEncoding": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "byteLength": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiter": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "delimiterEncoding": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "serial"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "parseBy": {
                              "type": "string",
                              "enum": [
                                "byteLength",
                                "delimiter"
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "snmpTrap"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "udpPort": {
                              "type": "string",
                              "maxLength": 5
                            },
                            "snmpTrapConfig": {
                              "type": "object",
                              "properties": {
                                "community": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "user": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "securityLevel": {
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "auth",
                                        "authAndEncrypt"
                                      ]
                                    },
                                    "authMethod": {
                                      "type": "string",
                                      "enum": [
                                        "sha",
                                        "md5"
                                      ]
                                    },
                                    "authKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    },
                                    "encryptionMethod": {
                                      "type": "string",
                                      "enum": [
                                        "aes",
                                        "des"
                                      ]
                                    },
                                    "encryptionKey": {
                                      "type": "string",
                                      "maxLength": 1024
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "securityLevel"
                                  ],
                                  "additionalProperties": false
                                }
                              },
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "udpPort",
                            "snmpTrapConfig"
                          ],
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "snmpTrap"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "timer"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "properties": {
                            "seconds": {
                              "type": "number"
                            },
                            "cron": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "tz": {
                              "type": "string",
                              "maxLength": 255
                            }
                          },
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "timer"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "timerTypeSelect": {
                              "type": "string",
                              "enum": [
                                "cronWeekly",
                                "seconds",
                                "cron"
                              ]
                            },
                            "timeAt": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "timezone": {
                              "type": "string",
                              "maxLength": 255
                            },
                            "weekdays": {
                              "type": "array",
                              "maxItems": 7,
                              "items": {
                                "type": "number"
                              }
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "key": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "virtualButton"
                          ]
                        },
                        "config": {
                          "type": "object",
                          "additionalProperties": false
                        },
                        "meta": {
                          "type": "object",
                          "properties": {
                            "category": {
                              "type": "string",
                              "enum": [
                                "trigger"
                              ]
                            },
                            "name": {
                              "type": "string",
                              "enum": [
                                "virtualButton"
                              ]
                            },
                            "label": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            },
                            "x": {
                              "type": "number"
                            },
                            "y": {
                              "type": "number"
                            },
                            "uiId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "groupId": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "description": {
                              "type": "string",
                              "maxLength": 32767
                            },
                            "icon": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "color": {
                              "type": "string",
                              "maxLength": 1024
                            },
                            "inputCount": {
                              "type": "number"
                            },
                            "outputCount": {
                              "type": "number"
                            },
                            "id": {
                              "type": "string",
                              "maxLength": 48
                            },
                            "payload": {
                              "type": "string",
                              "maxLength": 262144
                            },
                            "deviceId": {
                              "oneOf": [
                                {
                                  "type": "string",
                                  "pattern": "^[A-Fa-f\\d]{24}$"
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    ""
                                  ]
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "additionalProperties": false
                        },
                        "outputIds": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 48,
                              "minLength": 1
                            },
                            "maxItems": 100
                          },
                          "maxItems": 100
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "nodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "maxLength": 1024
                    },
                    "type": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "config": {
                      "type": "object"
                    },
                    "meta": {
                      "type": "object"
                    },
                    "outputIds": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 48,
                          "minLength": 1
                        },
                        "maxItems": 100
                      },
                      "maxItems": 100
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "type"
                  ]
                }
              },
              "globals": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                    },
                    "json": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 32767
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "key",
                    "json"
                  ]
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "runCount": {
                    "type": "number"
                  },
                  "errorCount": {
                    "type": "number"
                  },
                  "byVersion": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "object",
                        "properties": {
                          "runCount": {
                            "type": "number"
                          },
                          "errorCount": {
                            "type": "number"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        ]
      }
    },
    "importedFlowIdMap": {
      "type": "object",
      "patternProperties": {
        "^[A-Fa-f\\d]{24}$": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        }
      }
    },
    "importedVersionIdMap": {
      "type": "object",
      "patternProperties": {
        "^[A-Fa-f\\d]{24}$": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        }
      }
    }
  }
}

Workflow Import Result Example

{
  "flows": [
    {
      "id": "575ed18f7ae143cd83dc4aa6",
      "flowId": "575ed18f7ae143cd83dc4aa6",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Workflow",
      "description": "Description of my empty workflow",
      "enabled": true,
      "triggers": [],
      "nodes": [],
      "globals": [],
      "stats": {
        "runCount": 0,
        "errorCount": 0
      }
    }
  ],
  "flowVersions": [],
  "importedFlowIdMap": {
    "575ed18f7ae143cd83dc4aa6": "575efbcc7ae143cd83dc4aae"
  },
  "importedVersionIdMap": {}
}

Github Login

Schema for the body of a Github login request

Github Login Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "accessToken": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "requestedScopes": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "oneOf": [
          {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "all.Application",
                  "all.Application.read",
                  "all.Application.cli",
                  "all.Device",
                  "all.Device.read",
                  "application.*",
                  "applicationApiToken.*",
                  "applicationApiTokens.*",
                  "applicationCertificate.*",
                  "applicationCertificates.*",
                  "applicationCertificateAuthority.*",
                  "applicationCertificateAuthorities.*",
                  "applicationDashboards.*",
                  "applicationDashboard.*",
                  "applicationKey.*",
                  "applicationKeys.*",
                  "credential.*",
                  "credentials.*",
                  "data.*",
                  "dataTable.*",
                  "dataTables.*",
                  "dataTableRow.*",
                  "dataTableRows.*",
                  "device.*",
                  "deviceRecipe.*",
                  "deviceRecipes.*",
                  "devices.*",
                  "edgeDeployment.*",
                  "edgeDeployments.*",
                  "embeddedDeployment.*",
                  "embeddedDeployments.*",
                  "event.*",
                  "events.*",
                  "experience.*",
                  "experienceDomain.*",
                  "experienceDomains.*",
                  "experienceEndpoint.*",
                  "experienceEndpoints.*",
                  "experienceGroup.*",
                  "experienceGroups.*",
                  "experienceSlug.*",
                  "experienceSlugs.*",
                  "experienceUser.*",
                  "experienceUsers.*",
                  "experienceVersion.*",
                  "experienceVersions.*",
                  "experienceView.*",
                  "experienceViews.*",
                  "integration.*",
                  "integrations.*",
                  "file.*",
                  "files.*",
                  "flow.*",
                  "flows.*",
                  "flowVersion.*",
                  "flowVersions.*",
                  "resourceJobs.*",
                  "resourceJob.*",
                  "notebook.*",
                  "notebooks.*",
                  "webhook.*",
                  "webhooks.*",
                  "application.applyTemplate",
                  "application.archiveData",
                  "application.backfillArchiveData",
                  "application.clone",
                  "application.export",
                  "application.import",
                  "application.fullEventsArchive",
                  "application.fullDataTablesArchive",
                  "application.debug",
                  "application.delete",
                  "application.get",
                  "application.mqttPublishMessage",
                  "application.mqttSubscriptionStream",
                  "application.patch",
                  "application.payloadCounts",
                  "application.payloadCountsBreakdown",
                  "application.deviceCounts",
                  "application.notebookMinuteCounts",
                  "application.search",
                  "application.importLogs",
                  "applicationApiToken.delete",
                  "applicationApiToken.get",
                  "applicationApiToken.patch",
                  "applicationApiTokens.get",
                  "applicationApiTokens.post",
                  "applicationCertificate.delete",
                  "applicationCertificate.get",
                  "applicationCertificate.patch",
                  "applicationCertificates.get",
                  "applicationCertificates.post",
                  "applicationCertificateAuthority.delete",
                  "applicationCertificateAuthority.get",
                  "applicationCertificateAuthority.patch",
                  "applicationCertificateAuthorities.get",
                  "applicationCertificateAuthorities.post",
                  "applicationDashboard.get",
                  "applicationDashboard.patch",
                  "applicationDashboard.sendReport",
                  "applicationDashboard.delete",
                  "applicationDashboards.get",
                  "applicationDashboards.post",
                  "applicationKey.delete",
                  "applicationKey.get",
                  "applicationKey.patch",
                  "applicationKeys.get",
                  "applicationKeys.post",
                  "credential.get",
                  "credential.linkedResources",
                  "credential.patch",
                  "credential.delete",
                  "credentials.get",
                  "credentials.post",
                  "data.export",
                  "data.lastValueQuery",
                  "data.timeSeriesQuery",
                  "dataTable.addColumn",
                  "dataTable.delete",
                  "dataTable.get",
                  "dataTable.patch",
                  "dataTable.removeColumn",
                  "dataTableRow.delete",
                  "dataTableRow.get",
                  "dataTableRow.patch",
                  "dataTableRows.get",
                  "dataTableRows.post",
                  "dataTableRows.query",
                  "dataTableRows.export",
                  "dataTableRows.delete",
                  "dataTableRows.truncate",
                  "dataTables.get",
                  "dataTables.post",
                  "device.agentLogs",
                  "device.commandStream",
                  "device.debug",
                  "device.delete",
                  "device.export",
                  "device.get",
                  "device.getCommand",
                  "device.getCompositeState",
                  "device.getLogEntries",
                  "device.getState",
                  "device.patch",
                  "device.payloadCounts",
                  "device.payloadCountsBreakdown",
                  "device.removeData",
                  "device.sendCommand",
                  "device.sendState",
                  "device.setConnectionStatus",
                  "device.stateStream",
                  "deviceRecipe.bulkCreate",
                  "deviceRecipe.delete",
                  "deviceRecipe.get",
                  "deviceRecipe.patch",
                  "deviceRecipes.get",
                  "deviceRecipes.post",
                  "devices.attributeNames",
                  "devices.patch",
                  "devices.delete",
                  "devices.removeData",
                  "devices.detailedSummary",
                  "devices.deviceNames",
                  "devices.export",
                  "devices.get",
                  "devices.getCompositeState",
                  "devices.historicalImport",
                  "devices.payloadCounts",
                  "devices.post",
                  "devices.sendCommand",
                  "devices.tagKeys",
                  "devices.tagValues",
                  "edgeDeployment.get",
                  "edgeDeployments.get",
                  "edgeDeployments.release",
                  "edgeDeployments.remove",
                  "edgeDeployments.replace",
                  "embeddedDeployment.get",
                  "embeddedDeployments.get",
                  "embeddedDeployments.release",
                  "embeddedDeployments.remove",
                  "embeddedDeployments.replace",
                  "embeddedDeployments.export",
                  "event.delete",
                  "event.get",
                  "event.patch",
                  "events.delete",
                  "events.detailedSummary",
                  "events.get",
                  "events.mostRecentBySeverity",
                  "events.patch",
                  "events.post",
                  "events.export",
                  "experience.delete",
                  "experience.bootstrap",
                  "experienceDomain.delete",
                  "experienceDomain.get",
                  "experienceDomain.patch",
                  "experienceDomains.get",
                  "experienceDomains.post",
                  "experienceEndpoint.delete",
                  "experienceEndpoint.get",
                  "experienceEndpoint.linkedResources",
                  "experienceEndpoint.patch",
                  "experienceEndpoints.get",
                  "experienceEndpoints.post",
                  "experienceEndpoints.stats",
                  "experienceGroup.delete",
                  "experienceGroup.get",
                  "experienceGroup.patch",
                  "experienceGroups.detailedSummary",
                  "experienceGroups.get",
                  "experienceGroups.post",
                  "experienceSlug.delete",
                  "experienceSlug.get",
                  "experienceSlug.patch",
                  "experienceSlugs.get",
                  "experienceSlugs.post",
                  "experienceUser.delete",
                  "experienceUser.get",
                  "experienceUser.patch",
                  "experienceUsers.detailedSummary",
                  "experienceUsers.get",
                  "experienceUsers.post",
                  "experienceVersion.delete",
                  "experienceVersion.get",
                  "experienceVersion.patch",
                  "experienceVersions.get",
                  "experienceVersions.post",
                  "experienceView.debug",
                  "experienceView.delete",
                  "experienceView.get",
                  "experienceView.linkedResources",
                  "experienceView.patch",
                  "experienceViews.debug",
                  "experienceViews.detailedSummary",
                  "experienceViews.get",
                  "experienceViews.post",
                  "file.get",
                  "file.patch",
                  "file.move",
                  "file.delete",
                  "file.upload",
                  "files.get",
                  "files.post",
                  "flow.clearStorageEntries",
                  "flow.debug",
                  "flow.delete",
                  "flow.errors",
                  "flow.get",
                  "flow.getStorageEntries",
                  "flow.log",
                  "flow.patch",
                  "flow.pressVirtualButton",
                  "flow.setStorageEntry",
                  "flow.getStorageEntriesMetadata",
                  "flow.stats",
                  "flows.get",
                  "flows.getByVersion",
                  "flows.import",
                  "flows.palette",
                  "flows.post",
                  "flowVersion.delete",
                  "flowVersion.debug",
                  "flowVersion.errors",
                  "flowVersion.get",
                  "flowVersion.log",
                  "flowVersion.patch",
                  "flowVersion.stats",
                  "flowVersions.delete",
                  "flowVersions.get",
                  "flowVersions.post",
                  "integration.delete",
                  "integration.get",
                  "integration.patch",
                  "integrations.get",
                  "integrations.post",
                  "notebook.delete",
                  "notebook.execute",
                  "notebook.get",
                  "notebook.logs",
                  "notebook.notebookMinuteCounts",
                  "notebook.patch",
                  "notebook.requestInputDataExport",
                  "notebook.upload",
                  "notebooks.get",
                  "notebooks.post",
                  "resourceJob.get",
                  "resourceJob.logs",
                  "resourceJob.patch",
                  "resourceJob.delete",
                  "resourceJob.execute",
                  "resourceJob.cancelExecution",
                  "resourceJobs.get",
                  "resourceJobs.post",
                  "webhook.delete",
                  "webhook.get",
                  "webhook.patch",
                  "webhooks.get",
                  "webhooks.post"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "all.Organization",
                  "all.Organization.read",
                  "applications.*",
                  "auditLog.*",
                  "auditLogs.*",
                  "dashboard.*",
                  "dashboards.*",
                  "org.*",
                  "applications.get",
                  "applications.post",
                  "applications.import",
                  "applications.detailedSummary",
                  "applications.periodSummaries",
                  "auditLog.get",
                  "auditLogs.get",
                  "dashboard.patch",
                  "dashboard.delete",
                  "dashboard.sendReport",
                  "dashboards.get",
                  "dashboards.post",
                  "org.get",
                  "org.patch",
                  "org.delete",
                  "org.pendingInvites",
                  "org.inviteMember",
                  "org.revokeInvite",
                  "org.modifyMember",
                  "org.removeMember",
                  "org.payloadCounts",
                  "org.payloadCountsBreakdown",
                  "org.deviceCounts",
                  "org.notebookMinuteCounts",
                  "org.invoices",
                  "org.currentCard",
                  "org.chargeDetails",
                  "org.transferResources"
                ]
              }
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.Instance",
              "all.Instance.read",
              "instance.*",
              "instance.get",
              "instance.patch",
              "instance.historicalSummaries",
              "instance.generateReport",
              "instance.payloadCountsBreakdown",
              "instance.deviceCounts",
              "instance.notebookMinuteCounts",
              "instanceOrg.*",
              "instanceOrg.get",
              "instanceOrg.patch",
              "instanceOrg.delete",
              "instanceOrg.payloadCountsBreakdown",
              "instanceOrg.deviceCounts",
              "instanceOrg.notebookMinuteCounts",
              "instanceOrgs.*",
              "instanceOrgs.get",
              "instanceOrgs.post",
              "instanceMember.*",
              "instanceMember.get",
              "instanceMember.patch",
              "instanceMember.delete",
              "instanceMembers.*",
              "instanceMembers.get",
              "instanceMembers.post",
              "instanceOrgMember.*",
              "instanceOrgMember.get",
              "instanceOrgMember.patch",
              "instanceOrgMember.delete",
              "instanceOrgMembers.*",
              "instanceOrgMembers.get",
              "instanceOrgMembers.post",
              "instanceOrgInvite.*",
              "instanceOrgInvite.get",
              "instanceOrgInvite.delete",
              "instanceOrgInvite.resendInvite",
              "instanceOrgInvites.*",
              "instanceOrgInvites.get",
              "instanceOrgInvites.post",
              "instanceApiTokens.*",
              "instanceApiTokens.get",
              "instanceApiTokens.post",
              "instanceApiToken.*",
              "instanceApiToken.get",
              "instanceApiToken.patch",
              "instanceApiToken.delete",
              "instanceCustomNodes.*",
              "instanceCustomNodes.get",
              "instanceCustomNodes.post",
              "instanceCustomNode.*",
              "instanceCustomNode.get",
              "instanceCustomNode.patch",
              "instanceCustomNode.delete",
              "instanceCustomNode.errors",
              "instanceCustomNode.stats",
              "instanceSandbox.*",
              "instanceSandbox.get",
              "instanceSandbox.delete",
              "instanceSandbox.undelete",
              "instanceSandboxes.*",
              "instanceSandboxes.get",
              "instanceAuditLog.*",
              "instanceAuditLog.get",
              "instanceAuditLogs.*",
              "instanceAuditLogs.get"
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.User",
              "all.User.read",
              "all.User.cli",
              "userApiToken.*",
              "userApiToken.get",
              "userApiToken.patch",
              "userApiToken.delete",
              "userApiTokens.*",
              "userApiTokens.get",
              "userApiTokens.post",
              "applicationTemplate.*",
              "applicationTemplate.get",
              "applicationTemplates.*",
              "applicationTemplates.get",
              "applicationTemplates.getCategories",
              "applicationTemplates.getUniqueKeywords",
              "instances.*",
              "instances.get",
              "me.*",
              "me.get",
              "me.patch",
              "me.delete",
              "me.verifyEmail",
              "me.changePassword",
              "me.generateTwoFactorAuth",
              "me.enableTwoFactorAuth",
              "me.disableTwoFactorAuth",
              "me.disconnectGithub",
              "me.connectGithub",
              "me.addRecentItem",
              "me.fetchRecentItems",
              "me.payloadCounts",
              "me.payloadCountsBreakdown",
              "me.deviceCounts",
              "me.notebookMinuteCounts",
              "me.transferResources",
              "me.invite",
              "me.invites",
              "me.respondToInvite",
              "orgs.*",
              "orgs.get",
              "orgs.post"
            ]
          }
        ]
      }
    },
    "tokenTTL": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "accessToken"
  ],
  "additionalProperties": false
}

Github Login Example

{
  "accessToken": "the github access token"
}

Historical Summaries

Schema for a collection of Historical Summaries

Historical Summaries Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Historical Summary",
        "description": "Schema for a historical summary report",
        "type": "object",
        "properties": {
          "resourceType": {
            "type": "string",
            "enum": [
              "application",
              "organization",
              "whitelabel"
            ]
          },
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "resourceName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "resourceProration": {
            "type": "number"
          },
          "ownerType": {
            "type": "string",
            "enum": [
              "organization",
              "user"
            ]
          },
          "ownerId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "ownerName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "limits": {
            "type": "object",
            "properties": {
              "apitoken": {
                "type": "integer",
                "minimum": 0
              },
              "application": {
                "type": "integer",
                "minimum": 0
              },
              "applicationcertificate": {
                "type": "integer",
                "minimum": 0
              },
              "applicationcertificateauthority": {
                "type": "integer",
                "minimum": 0
              },
              "applicationkey": {
                "type": "integer",
                "minimum": 0
              },
              "credential": {
                "type": "integer",
                "minimum": 0
              },
              "dashboard": {
                "type": "integer",
                "minimum": 0
              },
              "datatable": {
                "type": "integer",
                "minimum": 0
              },
              "device": {
                "type": "integer",
                "minimum": 0
              },
              "devicerecipe": {
                "type": "integer",
                "minimum": 0
              },
              "experiencedomain": {
                "type": "integer",
                "minimum": 0
              },
              "experienceendpoint": {
                "type": "integer",
                "minimum": 0
              },
              "experiencegroup": {
                "type": "integer",
                "minimum": 0
              },
              "experienceslug": {
                "type": "integer",
                "minimum": 0
              },
              "experienceuser": {
                "type": "integer",
                "minimum": 0
              },
              "experienceversion": {
                "type": "integer",
                "minimum": 0
              },
              "experienceview": {
                "type": "integer",
                "minimum": 0
              },
              "file": {
                "type": "integer",
                "minimum": 0
              },
              "flow": {
                "type": "integer",
                "minimum": 0
              },
              "integration": {
                "type": "integer",
                "minimum": 0
              },
              "notebook": {
                "type": "integer",
                "minimum": 0
              },
              "resourcejob": {
                "type": "integer",
                "minimum": 0
              },
              "webhook": {
                "type": "integer",
                "minimum": 0
              },
              "dataTTL": {
                "type": "integer",
                "minimum": 86400
              },
              "member": {
                "type": "integer",
                "minimum": 0
              },
              "payload": {
                "type": "integer",
                "minimum": 0
              },
              "storage": {
                "type": "integer",
                "minimum": 0
              },
              "notebookMinutesPerRun": {
                "type": "integer",
                "minimum": 0
              },
              "notebookMinutesPerMonth": {
                "type": "integer",
                "minimum": 0
              },
              "notebookInParallel": {
                "type": "integer",
                "minimum": 0
              },
              "experienceFlowSlots": {
                "type": "integer",
                "minimum": 0
              },
              "applicationFlowSlots": {
                "type": "integer",
                "minimum": 0
              },
              "systemInterval": {
                "type": "integer",
                "minimum": 5,
                "maximum": 3600
              }
            },
            "additionalProperties": false
          },
          "currentPeriodStart": {
            "type": "string",
            "format": "date-time"
          },
          "currentPeriodEnd": {
            "type": "string",
            "format": "date-time"
          },
          "applicationCount": {
            "type": "number"
          },
          "applicationCountProrated": {
            "type": "number"
          },
          "userCount": {
            "type": "number"
          },
          "userCountProrated": {
            "type": "number"
          },
          "apiTokenCount": {
            "type": "number"
          },
          "applicationKeyCount": {
            "type": "number"
          },
          "certificateAuthorityCount": {
            "type": "number"
          },
          "certificateCount": {
            "type": "number"
          },
          "credentialCount": {
            "type": "integer"
          },
          "dashboardCount": {
            "type": "number"
          },
          "dashboardCountProrated": {
            "type": "number"
          },
          "dataTableCount": {
            "type": "number"
          },
          "dataTableRowCount": {
            "type": "number"
          },
          "dataTableTotalSizeMb": {
            "type": "number"
          },
          "deviceCount": {
            "type": "number"
          },
          "deviceCountProrated": {
            "type": "number"
          },
          "deviceRecipeCount": {
            "type": "number"
          },
          "eventCount": {
            "type": "number"
          },
          "experienceDomainCount": {
            "type": "number"
          },
          "experienceEndpointCount": {
            "type": "number"
          },
          "experienceGroupCount": {
            "type": "number"
          },
          "experienceSlugCount": {
            "type": "number"
          },
          "experienceUserCount": {
            "type": "number"
          },
          "experienceVersionCount": {
            "type": "number"
          },
          "experienceViewCount": {
            "type": "number"
          },
          "fileCount": {
            "type": "number"
          },
          "fileTotalSizeMb": {
            "type": "number"
          },
          "integrationCount": {
            "type": "number"
          },
          "notebookCount": {
            "type": "number"
          },
          "resourceJobCount": {
            "type": "integer"
          },
          "notebookRunCount": {
            "type": "number"
          },
          "notebookMinutesCount": {
            "type": "number"
          },
          "webhookCount": {
            "type": "number"
          },
          "workflowCount": {
            "type": "number"
          },
          "payloadBillableCount": {
            "type": "number"
          },
          "payloadNonbillableCount": {
            "type": "number"
          },
          "payloadBillableSizeMb": {
            "type": "number"
          },
          "payloadNonbillableSizeMb": {
            "type": "number"
          },
          "payloadCountDetails": {
            "title": "Payload Stats",
            "description": "Schema for the result of a payload stats request",
            "type": "object",
            "properties": {
              "dataTable": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "deviceCommand": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "deviceConnect": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "deviceDisconnect": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "deviceState": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "endpoint": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "event": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "flowError": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "integration": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "mqttIn": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "mqttOut": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "notebook": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "timer": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "virtualButton": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "webhook": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "resourceJob": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              }
            }
          },
          "payloadSizeDetails": {
            "title": "Payload Stats",
            "description": "Schema for the result of a payload stats request",
            "type": "object",
            "properties": {
              "dataTable": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "deviceCommand": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "deviceConnect": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "deviceDisconnect": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "deviceState": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "endpoint": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "event": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "flowError": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "integration": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "mqttIn": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "mqttOut": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "notebook": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "timer": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "virtualButton": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "webhook": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              },
              "resourceJob": {
                "type": "object",
                "patternProperties": {
                  ".*": {
                    "type": "number"
                  }
                }
              }
            }
          }
        },
        "additionalProperties": false
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Historical Summaries Example

{
  "items": [
    {
      "resourceType": "application",
      "resourceId": "575ed18f7ae143cd83dc4aa6",
      "resourceName": "My Application",
      "resourceProration": 0.9,
      "ownerType": "organization",
      "ownerId": "575ed18f7ae143cd83dc4aa7",
      "ownerName": "My Organization",
      "currentPeriodStart": "2021-04-01T00:00:00.000Z",
      "currentPeriodEnd": "2021-04-30T23:59:59.999Z",
      "apiTokenCount": 2,
      "applicationKeyCount": 0,
      "certificateAuthorityCount": 0,
      "certificateCount": 0,
      "dashboardCount": 3,
      "dataTableCount": 1,
      "dataTableRowCount": 10,
      "dataTableTotalSizeMb": 0.12,
      "deviceCount": 7,
      "deviceCountProrated": 6.57,
      "deviceRecipeCount": 0,
      "eventCount": 0,
      "experienceDomainCount": 0,
      "experienceEndpointCount": 0,
      "experienceGroupCount": 0,
      "experienceSlugCount": 0,
      "experienceUserCount": 0,
      "experienceVersionCount": 0,
      "experienceViewCount": 0,
      "fileCount": 0,
      "fileTotalSizeMb": 0,
      "integrationCount": 0,
      "notebookCount": 0,
      "resourceJobCount": 0,
      "notebookRunCount": 0,
      "notebookMinutesCount": 0,
      "webhookCount": 2,
      "workflowCount": 3,
      "payloadBillableCount": 437,
      "payloadNonbillableCount": 12,
      "payloadBillableSizeMb": 2.5,
      "payloadNonbillableSizeMb": 0.2,
      "payloadCountDetails": {
        "mqtt": {
          "device.mqttIn": 437
        },
        "dataTable": {
          "flow.flow": 12
        }
      },
      "payloadSizeDetails": {
        "mqtt": {
          "device.mqttIn": 2.5
        },
        "dataTable": {
          "flow.flow": 0.2
        }
      }
    }
  ],
  "count": 8,
  "totalCount": 2,
  "perPage": 100,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc"
}

Historical Summary

Schema for a historical summary report

Historical Summary Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "resourceType": {
      "type": "string",
      "enum": [
        "application",
        "organization",
        "whitelabel"
      ]
    },
    "resourceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "resourceName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "resourceProration": {
      "type": "number"
    },
    "ownerType": {
      "type": "string",
      "enum": [
        "organization",
        "user"
      ]
    },
    "ownerId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "ownerName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "limits": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer",
          "minimum": 0
        },
        "application": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificate": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificateauthority": {
          "type": "integer",
          "minimum": 0
        },
        "applicationkey": {
          "type": "integer",
          "minimum": 0
        },
        "credential": {
          "type": "integer",
          "minimum": 0
        },
        "dashboard": {
          "type": "integer",
          "minimum": 0
        },
        "datatable": {
          "type": "integer",
          "minimum": 0
        },
        "device": {
          "type": "integer",
          "minimum": 0
        },
        "devicerecipe": {
          "type": "integer",
          "minimum": 0
        },
        "experiencedomain": {
          "type": "integer",
          "minimum": 0
        },
        "experienceendpoint": {
          "type": "integer",
          "minimum": 0
        },
        "experiencegroup": {
          "type": "integer",
          "minimum": 0
        },
        "experienceslug": {
          "type": "integer",
          "minimum": 0
        },
        "experienceuser": {
          "type": "integer",
          "minimum": 0
        },
        "experienceversion": {
          "type": "integer",
          "minimum": 0
        },
        "experienceview": {
          "type": "integer",
          "minimum": 0
        },
        "file": {
          "type": "integer",
          "minimum": 0
        },
        "flow": {
          "type": "integer",
          "minimum": 0
        },
        "integration": {
          "type": "integer",
          "minimum": 0
        },
        "notebook": {
          "type": "integer",
          "minimum": 0
        },
        "resourcejob": {
          "type": "integer",
          "minimum": 0
        },
        "webhook": {
          "type": "integer",
          "minimum": 0
        },
        "dataTTL": {
          "type": "integer",
          "minimum": 86400
        },
        "member": {
          "type": "integer",
          "minimum": 0
        },
        "payload": {
          "type": "integer",
          "minimum": 0
        },
        "storage": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerRun": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerMonth": {
          "type": "integer",
          "minimum": 0
        },
        "notebookInParallel": {
          "type": "integer",
          "minimum": 0
        },
        "experienceFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "applicationFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "systemInterval": {
          "type": "integer",
          "minimum": 5,
          "maximum": 3600
        }
      },
      "additionalProperties": false
    },
    "currentPeriodStart": {
      "type": "string",
      "format": "date-time"
    },
    "currentPeriodEnd": {
      "type": "string",
      "format": "date-time"
    },
    "applicationCount": {
      "type": "number"
    },
    "applicationCountProrated": {
      "type": "number"
    },
    "userCount": {
      "type": "number"
    },
    "userCountProrated": {
      "type": "number"
    },
    "apiTokenCount": {
      "type": "number"
    },
    "applicationKeyCount": {
      "type": "number"
    },
    "certificateAuthorityCount": {
      "type": "number"
    },
    "certificateCount": {
      "type": "number"
    },
    "credentialCount": {
      "type": "integer"
    },
    "dashboardCount": {
      "type": "number"
    },
    "dashboardCountProrated": {
      "type": "number"
    },
    "dataTableCount": {
      "type": "number"
    },
    "dataTableRowCount": {
      "type": "number"
    },
    "dataTableTotalSizeMb": {
      "type": "number"
    },
    "deviceCount": {
      "type": "number"
    },
    "deviceCountProrated": {
      "type": "number"
    },
    "deviceRecipeCount": {
      "type": "number"
    },
    "eventCount": {
      "type": "number"
    },
    "experienceDomainCount": {
      "type": "number"
    },
    "experienceEndpointCount": {
      "type": "number"
    },
    "experienceGroupCount": {
      "type": "number"
    },
    "experienceSlugCount": {
      "type": "number"
    },
    "experienceUserCount": {
      "type": "number"
    },
    "experienceVersionCount": {
      "type": "number"
    },
    "experienceViewCount": {
      "type": "number"
    },
    "fileCount": {
      "type": "number"
    },
    "fileTotalSizeMb": {
      "type": "number"
    },
    "integrationCount": {
      "type": "number"
    },
    "notebookCount": {
      "type": "number"
    },
    "resourceJobCount": {
      "type": "integer"
    },
    "notebookRunCount": {
      "type": "number"
    },
    "notebookMinutesCount": {
      "type": "number"
    },
    "webhookCount": {
      "type": "number"
    },
    "workflowCount": {
      "type": "number"
    },
    "payloadBillableCount": {
      "type": "number"
    },
    "payloadNonbillableCount": {
      "type": "number"
    },
    "payloadBillableSizeMb": {
      "type": "number"
    },
    "payloadNonbillableSizeMb": {
      "type": "number"
    },
    "payloadCountDetails": {
      "title": "Payload Stats",
      "description": "Schema for the result of a payload stats request",
      "type": "object",
      "properties": {
        "dataTable": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "deviceCommand": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "deviceConnect": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "deviceDisconnect": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "deviceState": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "endpoint": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "event": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "flowError": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "integration": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "mqttIn": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "mqttOut": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "notebook": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "timer": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "virtualButton": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "webhook": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "resourceJob": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        }
      }
    },
    "payloadSizeDetails": {
      "title": "Payload Stats",
      "description": "Schema for the result of a payload stats request",
      "type": "object",
      "properties": {
        "dataTable": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "deviceCommand": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "deviceConnect": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "deviceDisconnect": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "deviceState": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "endpoint": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "event": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "flowError": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "integration": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "mqttIn": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "mqttOut": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "notebook": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "timer": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "virtualButton": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "webhook": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        },
        "resourceJob": {
          "type": "object",
          "patternProperties": {
            ".*": {
              "type": "number"
            }
          }
        }
      }
    }
  },
  "additionalProperties": false
}

Historical Summary Example

{
  "resourceType": "application",
  "resourceId": "575ed18f7ae143cd83dc4aa6",
  "resourceName": "My Application",
  "resourceProration": 0.9,
  "ownerType": "organization",
  "ownerId": "575ed18f7ae143cd83dc4aa7",
  "ownerName": "My Organization",
  "currentPeriodStart": "2021-04-01T00:00:00.000Z",
  "currentPeriodEnd": "2021-04-30T23:59:59.999Z",
  "apiTokenCount": 2,
  "applicationKeyCount": 0,
  "certificateAuthorityCount": 0,
  "certificateCount": 0,
  "dashboardCount": 3,
  "dataTableCount": 1,
  "dataTableRowCount": 10,
  "dataTableTotalSizeMb": 0.12,
  "deviceCount": 7,
  "deviceCountProrated": 6.57,
  "deviceRecipeCount": 0,
  "eventCount": 0,
  "experienceDomainCount": 0,
  "experienceEndpointCount": 0,
  "experienceGroupCount": 0,
  "experienceSlugCount": 0,
  "experienceUserCount": 0,
  "experienceVersionCount": 0,
  "experienceViewCount": 0,
  "fileCount": 0,
  "fileTotalSizeMb": 0,
  "integrationCount": 0,
  "notebookCount": 0,
  "resourceJobCount": 0,
  "notebookRunCount": 0,
  "notebookMinutesCount": 0,
  "webhookCount": 2,
  "workflowCount": 3,
  "payloadBillableCount": 437,
  "payloadNonbillableCount": 12,
  "payloadBillableSizeMb": 2.5,
  "payloadNonbillableSizeMb": 0.2,
  "payloadCountDetails": {
    "mqtt": {
      "device.mqttIn": 437
    },
    "dataTable": {
      "flow.flow": 12
    }
  },
  "payloadSizeDetails": {
    "mqtt": {
      "device.mqttIn": 2.5
    },
    "dataTable": {
      "flow.flow": 0.2
    }
  }
}

Application Import Options

Schema for additional application import options

Application Import Options Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "fromApplicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "importUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "conflictBehavior": {
      "type": "string",
      "enum": [
        "create",
        "error",
        "retain",
        "replace"
      ],
      "default": "create"
    },
    "dryRun": {
      "type": "boolean",
      "default": false
    },
    "forceJob": {
      "type": "boolean",
      "default": false
    },
    "include": {
      "type": "array",
      "items": {
        "enum": [
          "ApplicationCertificateAuthority",
          "Dashboard",
          "DataTableRow",
          "DataTable",
          "DeviceRecipe",
          "Device",
          "ExperienceDevelopConfig",
          "ExperienceEndpoint",
          "ExperienceFlowVersion",
          "ExperienceGroup",
          "ExperienceUser",
          "ExperienceVersion",
          "ExperienceView",
          "File",
          "FlowVersion",
          "Flow",
          "Global",
          "Integration",
          "Notebook",
          "Webhook",
          "ResourceJob"
        ]
      },
      "uniqueItems": true
    }
  },
  "additionalProperties": false
}

Application Import Options Example

{
  "importUrl": "https://storage.mySite.com/myZipFile.zip",
  "include": [
    "Flow",
    "Device"
  ]
}

Applications Import Options

Schema for additional application import options (new application)

Applications Import Options Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "importUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "include": {
      "type": "array",
      "items": {
        "enum": [
          "ApplicationCertificateAuthority",
          "Dashboard",
          "DataTableRow",
          "DataTable",
          "DeviceRecipe",
          "Device",
          "ExperienceDevelopConfig",
          "ExperienceEndpoint",
          "ExperienceFlowVersion",
          "ExperienceGroup",
          "ExperienceUser",
          "ExperienceVersion",
          "ExperienceView",
          "File",
          "FlowVersion",
          "Flow",
          "Global",
          "Integration",
          "Notebook",
          "Webhook",
          "ResourceJob"
        ]
      },
      "uniqueItems": true
    },
    "forceJob": {
      "type": "boolean",
      "default": false
    }
  },
  "additionalProperties": false
}

Applications Import Options Example

{
  "importUrl": "https://storage.mySite.com/myZipFile.zip",
  "include": [
    "Flow",
    "Device"
  ]
}

Instance

Schema for a single Instance

Instance Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "allowAuditLogging": {
      "type": "boolean"
    },
    "reportConfigs": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 48
          },
          "cron": {
            "type": "string",
            "maxLength": 255
          },
          "timezone": {
            "type": "string",
            "maxLength": 255
          },
          "emails": {
            "type": "array",
            "maxItems": 10,
            "items": {
              "type": "string",
              "format": "email",
              "maxLength": 1024
            }
          },
          "callbackUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "resourceGroupBy": {
            "type": "string",
            "enum": [
              "application",
              "organization"
            ]
          },
          "dateGroupBy": {
            "type": "string",
            "enum": [
              "day",
              "month"
            ]
          },
          "periods": {
            "type": "integer",
            "minimum": 1,
            "maximum": 90
          },
          "includeSandbox": {
            "type": "boolean"
          }
        },
        "required": [
          "cron"
        ],
        "additionalProperties": false
      }
    },
    "limits": {
      "type": "object",
      "properties": {
        "organization": {
          "type": "integer"
        },
        "apitoken": {
          "type": "integer"
        },
        "application": {
          "type": "integer"
        },
        "applicationcertificate": {
          "type": "integer"
        },
        "applicationcertificateauthority": {
          "type": "integer"
        },
        "applicationkey": {
          "type": "integer"
        },
        "credential": {
          "type": "integer"
        },
        "dashboard": {
          "type": "integer"
        },
        "datatable": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "devicerecipe": {
          "type": "integer"
        },
        "experiencedomain": {
          "type": "integer"
        },
        "experienceendpoint": {
          "type": "integer"
        },
        "experiencegroup": {
          "type": "integer"
        },
        "experienceslug": {
          "type": "integer"
        },
        "experienceuser": {
          "type": "integer"
        },
        "experienceversion": {
          "type": "integer"
        },
        "experienceview": {
          "type": "integer"
        },
        "file": {
          "type": "integer"
        },
        "flow": {
          "type": "integer"
        },
        "integration": {
          "type": "integer"
        },
        "notebook": {
          "type": "integer"
        },
        "resourcejob": {
          "type": "integer"
        },
        "webhook": {
          "type": "integer"
        },
        "dataTTL": {
          "type": "integer"
        },
        "member": {
          "type": "integer"
        },
        "payload": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "notebookMinutesPerRun": {
          "type": "integer"
        },
        "notebookMinutesPerMonth": {
          "type": "integer"
        },
        "notebookInParallel": {
          "type": "integer"
        },
        "experienceFlowSlots": {
          "type": "integer"
        },
        "applicationFlowSlots": {
          "type": "integer"
        },
        "systemInterval": {
          "type": "integer"
        }
      },
      "additionalProperties": false
    },
    "orgDefaultLimitConfig": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer",
          "minimum": 0
        },
        "application": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificate": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificateauthority": {
          "type": "integer",
          "minimum": 0
        },
        "applicationkey": {
          "type": "integer",
          "minimum": 0
        },
        "credential": {
          "type": "integer",
          "minimum": 0
        },
        "dashboard": {
          "type": "integer",
          "minimum": 0
        },
        "datatable": {
          "type": "integer",
          "minimum": 0
        },
        "device": {
          "type": "integer",
          "minimum": 0
        },
        "devicerecipe": {
          "type": "integer",
          "minimum": 0
        },
        "experiencedomain": {
          "type": "integer",
          "minimum": 0
        },
        "experienceendpoint": {
          "type": "integer",
          "minimum": 0
        },
        "experiencegroup": {
          "type": "integer",
          "minimum": 0
        },
        "experienceslug": {
          "type": "integer",
          "minimum": 0
        },
        "experienceuser": {
          "type": "integer",
          "minimum": 0
        },
        "experienceversion": {
          "type": "integer",
          "minimum": 0
        },
        "experienceview": {
          "type": "integer",
          "minimum": 0
        },
        "file": {
          "type": "integer",
          "minimum": 0
        },
        "flow": {
          "type": "integer",
          "minimum": 0
        },
        "integration": {
          "type": "integer",
          "minimum": 0
        },
        "notebook": {
          "type": "integer",
          "minimum": 0
        },
        "resourcejob": {
          "type": "integer",
          "minimum": 0
        },
        "webhook": {
          "type": "integer",
          "minimum": 0
        },
        "dataTTL": {
          "type": "integer",
          "minimum": 86400
        },
        "member": {
          "type": "integer",
          "minimum": 0
        },
        "payload": {
          "type": "integer",
          "minimum": 0
        },
        "storage": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerRun": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerMonth": {
          "type": "integer",
          "minimum": 0
        },
        "notebookInParallel": {
          "type": "integer",
          "minimum": 0
        },
        "experienceFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "applicationFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "systemInterval": {
          "type": "integer",
          "minimum": 5,
          "maximum": 3600
        }
      },
      "additionalProperties": false
    },
    "members": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "admin",
              "view"
            ]
          }
        }
      }
    },
    "mfaMode": {
      "type": "string",
      "enum": [
        "notRequired",
        "adminRequired",
        "required"
      ]
    }
  }
}

Instance Example

{
  "name": "B",
  "limits": {
    "organization": 2000,
    "apitoken": 1000,
    "application": 100,
    "applicationcertificate": 1000,
    "applicationcertificateauthority": 1000,
    "applicationkey": 1000,
    "dashboard": 100,
    "datatable": 100,
    "device": 1000,
    "devicerecipe": 1000,
    "experiencedomain": 100,
    "experienceendpoint": 500,
    "experienceslug": 100,
    "experienceversion": 1000,
    "experienceview": 500,
    "experiencegroup": 100,
    "experienceuser": 1000,
    "file": 1000,
    "flow": 1000,
    "integration": 50,
    "notebook": 100,
    "resourcejob": 10,
    "webhook": 1000,
    "dataTTL": 15552000,
    "member": 100,
    "payload": 75000000,
    "storage": 1073741824,
    "notebookMinutesPerRun": 60,
    "notebookMinutesPerMonth": 930,
    "notebookInParallel": 5,
    "systemInterval": 5
  },
  "members": [
    {
      "userId": "5ff89ff825013dc6c2856184",
      "role": "admin"
    },
    {
      "userId": "5ff89ff825013dc6c2856185",
      "role": "view"
    },
    {
      "userId": "5ff89ff825013dc6c2856186",
      "role": "view"
    }
  ],
  "creationDate": "2021-01-08T18:10:00.054Z",
  "lastUpdated": "2021-01-08T18:10:00.054Z",
  "allowAuditLogging": false,
  "instanceId": "5ff89ff825013dc6c2856188",
  "id": "5ff89ff825013dc6c2856188"
}

Instance Audit Log

Schema for a single Instance Audit Log entry

Instance Audit Log Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "instanceAuditLogId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "primaryTargetId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "primaryTargetType": {
      "type": "string",
      "enum": [
        "Organization",
        "ApiToken",
        "User",
        "InstanceCustomNode"
      ]
    },
    "primaryTargetName": {
      "type": "string",
      "maxLength": 1024
    },
    "secondaryTargetId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "secondaryTargetType": {
      "type": "string",
      "enum": [
        "OrgInvite",
        "ApiToken"
      ]
    },
    "secondaryTargetName": {
      "type": "string",
      "maxLength": 1024
    },
    "actorId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "actorType": {
      "type": "string",
      "enum": [
        "User",
        "ApiToken"
      ]
    },
    "actorName": {
      "type": "string",
      "maxLength": 1024
    },
    "requestResource": {
      "type": "string",
      "maxLength": 1024
    },
    "requestAction": {
      "type": "string",
      "maxLength": 1024
    },
    "requestQueryParams": {
      "type": "object"
    },
    "requestBody": {
      "type": "object"
    },
    "requestPathParams": {
      "type": "object"
    },
    "responseBody": {
      "type": "object"
    },
    "responseStatus": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    }
  }
}

Instance Audit Log Example

{
  "id": "586e9d5151265cb9d72f6ec6",
  "instanceAuditLogId": "586e9d5151265cb9d72f6ec6",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "instanceId": "575ed6e87ae143cd83dc4aa8",
  "primaryTargetId": "575ec8687ae143cd83dc4a97",
  "primaryTargetType": "Organization",
  "primaryTargetName": "My Org",
  "actorId": "575ed70c7ae143cd83dc4aa9",
  "actorType": "User",
  "actorName": "actor@example.com",
  "requestResource": "organization",
  "requestAction": "delete",
  "requestQueryParams": {},
  "requestBody": {},
  "requestPathParams": {
    "organizationId": "575ec8687ae143cd83dc4a97"
  },
  "responseBody": {
    "success": true
  },
  "responseStatus": 200
}

Instance Audit Log Filter

Schema for the filter of an instance audit log query

Instance Audit Log Filter Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "primaryTarget": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "type": {
            "type": "string",
            "enum": [
              "Organization",
              "ApiToken",
              "User",
              "InstanceCustomNode"
            ]
          },
          "name": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false
      }
    },
    "secondaryTarget": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "type": {
            "type": "string",
            "enum": [
              "OrgInvite",
              "ApiToken"
            ]
          },
          "name": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false
      }
    },
    "actor": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "type": {
            "type": "string",
            "enum": [
              "User",
              "ApiToken"
            ]
          },
          "name": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false
      }
    },
    "request": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resource": {
            "type": "string",
            "maxLength": 1024
          },
          "action": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "additionalProperties": false
      }
    },
    "responseCode": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 100,
        "maximum": 599
      }
    }
  },
  "additionalProperties": false
}

Instance Audit Log Filter Example

{
  "primaryTarget": [
    {
      "type": "Organization"
    },
    {
      "type": "ApiToken",
      "id": "575ec8687ae143cd83dc4a97"
    }
  ],
  "actor": [
    {
      "type": "User",
      "id": "575ed70c7ae143cd83dc4aa9"
    }
  ]
}

Instance Audit Logs

Schema for a collection of Instance Audit Logs

Instance Audit Logs Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/instanceAuditLogs"
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Instance Audit Logs Example

{
  "items": [
    {
      "id": "586e9d5151265cb9d72f6ec6",
      "instanceAuditLogId": "586e9d5151265cb9d72f6ec6",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "instanceId": "575ed6e87ae143cd83dc4aa8",
      "primaryTargetId": "575ec8687ae143cd83dc4a97",
      "primaryTargetType": "Organization",
      "primaryTargetName": "My Org",
      "actorId": "575ed70c7ae143cd83dc4aa9",
      "actorType": "User",
      "actorName": "actor@example.com",
      "requestResource": "organization",
      "requestAction": "delete",
      "requestQueryParams": {},
      "requestBody": {},
      "requestPathParams": {
        "organizationId": "575ec8687ae143cd83dc4a97"
      },
      "responseBody": {
        "success": true
      },
      "responseStatus": 200
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "creationDate",
  "sortDirection": "desc",
  "instanceId": "575ed6e87ae143cd83dc4aa8"
}

Instance Custom Node

Schema for a single Instance Custom Node

Instance Custom Node Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "instanceCustomNodeId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "createdById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "createdByType": {
      "type": "string",
      "enum": [
        "apiToken",
        "user"
      ]
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdatedById": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "lastUpdatedByType": {
      "type": "string",
      "enum": [
        "apiToken",
        "user"
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "shortDescription": {
      "type": "string",
      "maxLength": 1024
    },
    "iconData": {
      "type": "string",
      "maxLength": 32767,
      "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
    },
    "docsUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "category": {
      "type": "string",
      "enum": [
        "data",
        "experience",
        "logic",
        "output",
        "debug"
      ]
    },
    "minimumAgentVersion": {
      "type": "string",
      "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
    },
    "triggers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "enum": [
              "customNodeStart"
            ]
          },
          "config": {
            "type": "object",
            "additionalProperties": false
          },
          "meta": {
            "type": "object",
            "properties": {
              "category": {
                "type": "string",
                "enum": [
                  "trigger"
                ]
              },
              "name": {
                "type": "string",
                "enum": [
                  "customNodeStart"
                ]
              },
              "label": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              },
              "x": {
                "type": "number"
              },
              "y": {
                "type": "number"
              },
              "uiId": {
                "type": "string",
                "maxLength": 48
              },
              "description": {
                "type": "string",
                "maxLength": 32767
              }
            },
            "additionalProperties": false
          },
          "outputIds": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 48,
                "minLength": 1
              },
              "maxItems": 100
            },
            "maxItems": 100
          }
        },
        "required": [
          "type"
        ],
        "additionalProperties": false
      },
      "maxItems": 1
    },
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "config": {
            "type": "object"
          },
          "meta": {
            "type": "object"
          },
          "outputIds": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 48,
                "minLength": 1
              },
              "maxItems": 100
            },
            "maxItems": 100
          }
        },
        "additionalProperties": false,
        "required": [
          "type"
        ]
      }
    },
    "customNodeConfig": {
      "type": "object",
      "properties": {
        "outputCount": {
          "type": "number",
          "enum": [
            1,
            2
          ]
        },
        "resultMode": {
          "type": "string",
          "enum": [
            "optional",
            "required",
            "none"
          ]
        },
        "resultDescription": {
          "type": "string",
          "maxLength": 32767
        },
        "fields": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "checkbox"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "select"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "options": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "value"
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label",
                  "defaultValue",
                  "options"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "stringTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validRegExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "numberTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "number"
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validMin": {
                    "type": "number"
                  },
                  "validMax": {
                    "type": "number"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "jsonTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "payloadPath"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "section"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              }
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "outputCount",
        "resultMode",
        "fields"
      ]
    },
    "customNodeSupports": {
      "type": "array",
      "maxItems": 1,
      "items": {
        "type": "string",
        "enum": [
          "cloud"
        ]
      }
    },
    "sourceApplicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "sourceFlowId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "sourceFlowVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "stats": {
      "type": "object",
      "properties": {
        "errorCount": {
          "type": "integer"
        },
        "runCount": {
          "type": "integer"
        }
      },
      "additionalProperties": false
    },
    "usage": {
      "type": "object",
      "properties": {
        "sandbox": {
          "type": "object",
          "properties": {
            "appCount": {
              "type": "integer"
            },
            "flowCount": {
              "type": "integer"
            }
          },
          "additionalProperties": false
        }
      },
      "patternProperties": {
        "^[A-Fa-f\\d]{24}$": {
          "type": "object",
          "properties": {
            "appCount": {
              "type": "integer"
            },
            "flowCount": {
              "type": "integer"
            },
            "orgName": {
              "type": "string",
              "minLength": 1,
              "maxLength": 255
            },
            "orgIconColor": {
              "type": "string",
              "maxLength": 64
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    }
  }
}

Instance Custom Node Example

{
  "id": "575ed18f7ae143cd83dc4aa6",
  "instanceCustomNodeId": "575ed18f7ae143cd83dc4aa6",
  "instanceId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "My Instance Custom Node",
  "description": "Description of my instance custom node",
  "triggers": [
    {
      "type": "customNodeStart"
    }
  ],
  "nodes": [
    {
      "type": "CustomNodeCapNode"
    }
  ],
  "usage": {
    "575ed6e87ae143cd83dc4aa8": {
      "appCount": 1,
      "flowCount": 2
    }
  },
  "stats": {
    "runCount": 123,
    "errorCount": 12
  }
}

Instance Custom Node Patch

Schema for the body of a Instance Custom Node modification request

Instance Custom Node Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "shortDescription": {
      "type": "string",
      "maxLength": 1024
    },
    "iconData": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 32767,
          "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
        },
        {
          "type": "null"
        }
      ]
    },
    "docsUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "category": {
      "type": "string",
      "enum": [
        "data",
        "experience",
        "logic",
        "output",
        "debug",
        ""
      ]
    },
    "minimumAgentVersion": {
      "type": "string",
      "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
    },
    "triggers": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "customNodeStart",
                  "deviceCommand",
                  "deviceIdConnect",
                  "deviceTagConnect",
                  "deviceIdDisconnect",
                  "deviceTagDisconnect",
                  "integration",
                  "notebook",
                  "onBoot",
                  "onConnect",
                  "onDisconnect",
                  "udp",
                  "webhook",
                  "resourceJobIteration",
                  "resourceJobIterationTimeout",
                  "resourceJobComplete"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "customNodeStart",
                      "deviceCommand",
                      "deviceIdsTagsConnect",
                      "deviceIdsTagsDisconnect",
                      "eeaInit",
                      "flowError",
                      "azureEventHub",
                      "googlePubSub",
                      "mqtt",
                      "notebook",
                      "onBoot",
                      "onConnect",
                      "onDisconnect",
                      "particle",
                      "sqs",
                      "udp",
                      "webhook",
                      "resourceJobIteration",
                      "resourceJobIterationTimeout",
                      "resourceJobComplete",
                      "websocket"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "virtualButton"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "virtualButton"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "groupId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "payload": {
                    "type": "string",
                    "maxLength": 262144
                  },
                  "deviceId": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      {
                        "type": "string",
                        "enum": [
                          ""
                        ]
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "config": {
            "type": "object"
          },
          "meta": {
            "type": "object"
          },
          "outputIds": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 48,
                "minLength": 1
              },
              "maxItems": 100
            },
            "maxItems": 100
          }
        },
        "additionalProperties": false,
        "required": [
          "type"
        ]
      }
    },
    "customNodeConfig": {
      "type": "object",
      "properties": {
        "outputCount": {
          "type": "number",
          "enum": [
            1,
            2
          ]
        },
        "resultMode": {
          "type": "string",
          "enum": [
            "optional",
            "required",
            "none"
          ]
        },
        "resultDescription": {
          "type": "string",
          "maxLength": 32767
        },
        "fields": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "checkbox"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "select"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "options": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "value"
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label",
                  "defaultValue",
                  "options"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "stringTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validRegExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "numberTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "number"
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validMin": {
                    "type": "number"
                  },
                  "validMax": {
                    "type": "number"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "jsonTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "payloadPath"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "section"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              }
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "outputCount",
        "resultMode",
        "fields"
      ]
    },
    "customNodeSupports": {
      "type": "array",
      "maxItems": 1,
      "items": {
        "type": "string",
        "enum": [
          "cloud"
        ]
      }
    }
  },
  "additionalProperties": {
    "oneOf": [
      {
        "type": "array",
        "maxItems": 0
      },
      {
        "type": "string",
        "maxLength": 1024
      },
      {
        "type": "boolean"
      }
    ]
  },
  "maxProperties": 25
}

Instance Custom Node Patch Example

{
  "name": "My Updated Instance Custom Node",
  "category": "logic"
}

Instance Custom Node Post

Schema for the body of a Instance Custom Node creation request

Instance Custom Node Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "shortDescription": {
      "type": "string",
      "maxLength": 1024
    },
    "iconData": {
      "oneOf": [
        {
          "type": "string",
          "maxLength": 32767,
          "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
        },
        {
          "type": "null"
        }
      ]
    },
    "docsUrl": {
      "type": "string",
      "maxLength": 1024
    },
    "category": {
      "type": "string",
      "enum": [
        "data",
        "experience",
        "logic",
        "output",
        "debug",
        ""
      ]
    },
    "minimumAgentVersion": {
      "type": "string",
      "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
    },
    "triggers": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "customNodeStart",
                  "deviceCommand",
                  "deviceIdConnect",
                  "deviceTagConnect",
                  "deviceIdDisconnect",
                  "deviceTagDisconnect",
                  "integration",
                  "notebook",
                  "onBoot",
                  "onConnect",
                  "onDisconnect",
                  "udp",
                  "webhook",
                  "resourceJobIteration",
                  "resourceJobIterationTimeout",
                  "resourceJobComplete"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "customNodeStart",
                      "deviceCommand",
                      "deviceIdsTagsConnect",
                      "deviceIdsTagsDisconnect",
                      "eeaInit",
                      "flowError",
                      "azureEventHub",
                      "googlePubSub",
                      "mqtt",
                      "notebook",
                      "onBoot",
                      "onConnect",
                      "onDisconnect",
                      "particle",
                      "sqs",
                      "udp",
                      "webhook",
                      "resourceJobIteration",
                      "resourceJobIterationTimeout",
                      "resourceJobComplete",
                      "websocket"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "triggerId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "maxLength": 1024
              },
              "type": {
                "type": "string",
                "enum": [
                  "virtualButton"
                ]
              },
              "config": {
                "type": "object",
                "additionalProperties": false
              },
              "meta": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "trigger"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "enum": [
                      "virtualButton"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "x": {
                    "type": "number"
                  },
                  "y": {
                    "type": "number"
                  },
                  "uiId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "groupId": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "icon": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "color": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "inputCount": {
                    "type": "number"
                  },
                  "outputCount": {
                    "type": "number"
                  },
                  "id": {
                    "type": "string",
                    "maxLength": 48
                  },
                  "payload": {
                    "type": "string",
                    "maxLength": 262144
                  },
                  "deviceId": {
                    "oneOf": [
                      {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      {
                        "type": "string",
                        "enum": [
                          ""
                        ]
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false
              },
              "outputIds": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 48,
                    "minLength": 1
                  },
                  "maxItems": 100
                },
                "maxItems": 100
              }
            },
            "required": [
              "type"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 1024
          },
          "type": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "config": {
            "type": "object"
          },
          "meta": {
            "type": "object"
          },
          "outputIds": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "type": "string",
                "maxLength": 48,
                "minLength": 1
              },
              "maxItems": 100
            },
            "maxItems": 100
          }
        },
        "additionalProperties": false,
        "required": [
          "type"
        ]
      }
    },
    "customNodeConfig": {
      "type": "object",
      "properties": {
        "outputCount": {
          "type": "number",
          "enum": [
            1,
            2
          ]
        },
        "resultMode": {
          "type": "string",
          "enum": [
            "optional",
            "required",
            "none"
          ]
        },
        "resultDescription": {
          "type": "string",
          "maxLength": 32767
        },
        "fields": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "checkbox"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "select"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "options": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "value": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "value"
                      ]
                    }
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label",
                  "defaultValue",
                  "options"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "stringTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 1024
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validRegExp": {
                    "type": "string",
                    "maxLength": 1024
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "numberTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "number"
                  },
                  "required": {
                    "type": "boolean"
                  },
                  "validMin": {
                    "type": "number"
                  },
                  "validMax": {
                    "type": "number"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "jsonTemplate"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "defaultValue": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "payloadPath"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  },
                  "required": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "section"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 32767
                  }
                },
                "additionalProperties": false,
                "required": [
                  "type",
                  "label"
                ]
              }
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "outputCount",
        "resultMode",
        "fields"
      ]
    },
    "customNodeSupports": {
      "type": "array",
      "maxItems": 1,
      "items": {
        "type": "string",
        "enum": [
          "cloud"
        ]
      }
    }
  },
  "additionalProperties": {
    "oneOf": [
      {
        "type": "array",
        "maxItems": 0
      },
      {
        "type": "string",
        "maxLength": 1024
      },
      {
        "type": "boolean"
      }
    ]
  },
  "maxProperties": 25,
  "required": [
    "name",
    "triggers",
    "nodes"
  ]
}

Instance Custom Node Post Example

{
  "name": "My New Instance Custom Node",
  "description": "Description of my new instance custom node",
  "triggers": [
    {
      "type": "customNodeStart"
    }
  ],
  "nodes": [
    {
      "type": "CustomNodeCapNode"
    }
  ]
}

Instance Custom Nodes

Schema for a collection of Custom Nodes within an instance

Instance Custom Nodes Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Instance Custom Node",
        "description": "Schema for a single Instance Custom Node",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "instanceCustomNodeId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "instanceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "createdById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "createdByType": {
            "type": "string",
            "enum": [
              "apiToken",
              "user"
            ]
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdatedById": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "lastUpdatedByType": {
            "type": "string",
            "enum": [
              "apiToken",
              "user"
            ]
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "shortDescription": {
            "type": "string",
            "maxLength": 1024
          },
          "iconData": {
            "type": "string",
            "maxLength": 32767,
            "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
          },
          "docsUrl": {
            "type": "string",
            "maxLength": 1024
          },
          "category": {
            "type": "string",
            "enum": [
              "data",
              "experience",
              "logic",
              "output",
              "debug"
            ]
          },
          "minimumAgentVersion": {
            "type": "string",
            "pattern": "^(0|([1-9]\\d*))\\.(0|([1-9]\\d*))\\.(0|([1-9]\\d*))$"
          },
          "triggers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "maxLength": 1024
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "customNodeStart"
                  ]
                },
                "config": {
                  "type": "object",
                  "additionalProperties": false
                },
                "meta": {
                  "type": "object",
                  "properties": {
                    "category": {
                      "type": "string",
                      "enum": [
                        "trigger"
                      ]
                    },
                    "name": {
                      "type": "string",
                      "enum": [
                        "customNodeStart"
                      ]
                    },
                    "label": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    },
                    "x": {
                      "type": "number"
                    },
                    "y": {
                      "type": "number"
                    },
                    "uiId": {
                      "type": "string",
                      "maxLength": 48
                    },
                    "description": {
                      "type": "string",
                      "maxLength": 32767
                    }
                  },
                  "additionalProperties": false
                },
                "outputIds": {
                  "type": "array",
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "maxLength": 48,
                      "minLength": 1
                    },
                    "maxItems": 100
                  },
                  "maxItems": 100
                }
              },
              "required": [
                "type"
              ],
              "additionalProperties": false
            },
            "maxItems": 1
          },
          "nodes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "maxLength": 1024
                },
                "type": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "config": {
                  "type": "object"
                },
                "meta": {
                  "type": "object"
                },
                "outputIds": {
                  "type": "array",
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "maxLength": 48,
                      "minLength": 1
                    },
                    "maxItems": 100
                  },
                  "maxItems": 100
                }
              },
              "additionalProperties": false,
              "required": [
                "type"
              ]
            }
          },
          "customNodeConfig": {
            "type": "object",
            "properties": {
              "outputCount": {
                "type": "number",
                "enum": [
                  1,
                  2
                ]
              },
              "resultMode": {
                "type": "string",
                "enum": [
                  "optional",
                  "required",
                  "none"
                ]
              },
              "resultDescription": {
                "type": "string",
                "maxLength": 32767
              },
              "fields": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "checkbox"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "select"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "options": {
                          "type": "array",
                          "minItems": 1,
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "label": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 1024
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "value"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label",
                        "defaultValue",
                        "options"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "stringTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validRegExp": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "numberTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "number"
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validMin": {
                          "type": "number"
                        },
                        "validMax": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "jsonTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "payloadPath"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "section"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    }
                  ]
                }
              }
            },
            "additionalProperties": false,
            "required": [
              "outputCount",
              "resultMode",
              "fields"
            ]
          },
          "customNodeSupports": {
            "type": "array",
            "maxItems": 1,
            "items": {
              "type": "string",
              "enum": [
                "cloud"
              ]
            }
          },
          "sourceApplicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "sourceFlowId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "sourceFlowVersion": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "stats": {
            "type": "object",
            "properties": {
              "errorCount": {
                "type": "integer"
              },
              "runCount": {
                "type": "integer"
              }
            },
            "additionalProperties": false
          },
          "usage": {
            "type": "object",
            "properties": {
              "sandbox": {
                "type": "object",
                "properties": {
                  "appCount": {
                    "type": "integer"
                  },
                  "flowCount": {
                    "type": "integer"
                  }
                },
                "additionalProperties": false
              }
            },
            "patternProperties": {
              "^[A-Fa-f\\d]{24}$": {
                "type": "object",
                "properties": {
                  "appCount": {
                    "type": "integer"
                  },
                  "flowCount": {
                    "type": "integer"
                  },
                  "orgName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  },
                  "orgIconColor": {
                    "type": "string",
                    "maxLength": 64
                  }
                },
                "additionalProperties": false
              }
            },
            "additionalProperties": false
          }
        }
      }
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Instance Custom Nodes Example

{
  "items": [
    {
      "id": "575ed18f7ae143cd83dc4aa6",
      "instanceCustomNodeId": "575ed18f7ae143cd83dc4aa6",
      "instanceId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Instance Custom Node",
      "description": "Description of my instance custom node",
      "triggers": [
        {
          "type": "customNodeStart"
        }
      ],
      "nodes": [
        {
          "type": "CustomNodeCapNode"
        }
      ],
      "usage": {
        "575ed6e87ae143cd83dc4aa8": {
          "appCount": 1,
          "flowCount": 2
        }
      },
      "stats": {
        "runCount": 123,
        "errorCount": 12
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "instanceId": "575ec8687ae143cd83dc4a97"
}

Instance Member

Schema for an Instance member

Instance Member Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "userId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "view"
      ]
    },
    "avatarUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "twoFactorAuthEnabled": {
      "type": "boolean"
    },
    "ssoLinked": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

Instance Member Example

{
  "userId": "575ef90f7ae143cd83dc4aad",
  "role": "view"
}

Instance Member Patch

Schema for an Instance member modification request

Instance Member Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "view"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "role"
  ]
}

Instance Member Patch Example

{
  "role": "view"
}

Instance Member Post

Schema for an Instance member creation request

Instance Member Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "userId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "view"
      ]
    }
  },
  "additionalProperties": false,
  "anyOf": [
    {
      "required": [
        "email",
        "role"
      ]
    },
    {
      "required": [
        "userId",
        "role"
      ]
    }
  ]
}

Instance Member Post Example

{
  "userId": "675ed18f7ae143cd83dc4bb7",
  "role": "view"
}

Instance Members

Schema for a collection of Instance members

Instance Members Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Instance Member",
        "description": "Schema for an Instance member",
        "type": "object",
        "properties": {
          "instanceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "userId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "email": {
            "type": "string",
            "format": "email",
            "maxLength": 1024
          },
          "firstName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "lastName": {
            "type": "string",
            "maxLength": 1024
          },
          "role": {
            "type": "string",
            "enum": [
              "admin",
              "view"
            ]
          },
          "avatarUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "twoFactorAuthEnabled": {
            "type": "boolean"
          },
          "ssoLinked": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      }
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "count": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Instance Members Example

{
  "items": [
    {
      "userId": "575ef90f7ae143cd83dc4aad",
      "role": "view"
    }
  ],
  "count": 4,
  "sortField": "email",
  "sortDirection": "asc"
}

Instance Organization

Schema for the body of an Organization owned by an instance

Instance Organization Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "iconColor": {
      "type": "string",
      "maxLength": 64
    },
    "limits": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer",
          "minimum": 0
        },
        "application": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificate": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificateauthority": {
          "type": "integer",
          "minimum": 0
        },
        "applicationkey": {
          "type": "integer",
          "minimum": 0
        },
        "credential": {
          "type": "integer",
          "minimum": 0
        },
        "dashboard": {
          "type": "integer",
          "minimum": 0
        },
        "datatable": {
          "type": "integer",
          "minimum": 0
        },
        "device": {
          "type": "integer",
          "minimum": 0
        },
        "devicerecipe": {
          "type": "integer",
          "minimum": 0
        },
        "experiencedomain": {
          "type": "integer",
          "minimum": 0
        },
        "experienceendpoint": {
          "type": "integer",
          "minimum": 0
        },
        "experiencegroup": {
          "type": "integer",
          "minimum": 0
        },
        "experienceslug": {
          "type": "integer",
          "minimum": 0
        },
        "experienceuser": {
          "type": "integer",
          "minimum": 0
        },
        "experienceversion": {
          "type": "integer",
          "minimum": 0
        },
        "experienceview": {
          "type": "integer",
          "minimum": 0
        },
        "file": {
          "type": "integer",
          "minimum": 0
        },
        "flow": {
          "type": "integer",
          "minimum": 0
        },
        "integration": {
          "type": "integer",
          "minimum": 0
        },
        "notebook": {
          "type": "integer",
          "minimum": 0
        },
        "resourcejob": {
          "type": "integer",
          "minimum": 0
        },
        "webhook": {
          "type": "integer",
          "minimum": 0
        },
        "dataTTL": {
          "type": "integer",
          "minimum": 86400
        },
        "member": {
          "type": "integer",
          "minimum": 0
        },
        "payload": {
          "type": "integer",
          "minimum": 0
        },
        "storage": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerRun": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerMonth": {
          "type": "integer",
          "minimum": 0
        },
        "notebookInParallel": {
          "type": "integer",
          "minimum": 0
        },
        "experienceFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "applicationFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "systemInterval": {
          "type": "integer",
          "minimum": 5,
          "maximum": 3600
        }
      },
      "additionalProperties": false
    },
    "summary": {
      "type": "object",
      "properties": {
        "apiTokenCount": {
          "type": "integer"
        },
        "appCount": {
          "type": "integer"
        },
        "certificateCount": {
          "type": "integer"
        },
        "certificateAuthorityCount": {
          "type": "integer"
        },
        "credentialCount": {
          "type": "integer"
        },
        "dashCount": {
          "type": "integer"
        },
        "dataTableCount": {
          "type": "integer"
        },
        "deviceCount": {
          "type": "integer"
        },
        "deviceRecipeCount": {
          "type": "integer"
        },
        "eventCount": {
          "type": "integer"
        },
        "experienceDomainCount": {
          "type": "integer"
        },
        "experienceEndpointCount": {
          "type": "integer"
        },
        "experienceGroupCount": {
          "type": "integer"
        },
        "experienceSlugCount": {
          "type": "integer"
        },
        "experienceUserCount": {
          "type": "integer"
        },
        "experienceVersionCount": {
          "type": "integer"
        },
        "experienceViewCount": {
          "type": "integer"
        },
        "fileCount": {
          "type": "integer"
        },
        "flowCount": {
          "type": "integer"
        },
        "integrationCount": {
          "type": "integer"
        },
        "keyCount": {
          "type": "integer"
        },
        "notebookCount": {
          "type": "integer"
        },
        "resourceJobCount": {
          "type": "integer"
        },
        "webhookCount": {
          "type": "integer"
        },
        "memberCount": {
          "type": "integer"
        },
        "pendingInviteCount": {
          "type": "integer"
        },
        "payloadCount": {
          "title": "Payload Stats",
          "description": "Schema for the result of a payload stats request",
          "type": "object",
          "properties": {
            "dataTable": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceCommand": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceConnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceDisconnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceState": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "endpoint": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "event": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "flowError": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "integration": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttIn": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttOut": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "notebook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "timer": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "virtualButton": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "webhook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "resourceJob": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            }
          }
        },
        "storageStats": {
          "type": "object",
          "properties": {
            "count": {
              "type": "integer"
            },
            "size": {
              "type": "integer"
            }
          }
        },
        "notebookStats": {
          "type": "object",
          "properties": {
            "awaitingCompletion": {
              "type": "integer"
            },
            "minutesThisPeriod": {
              "type": "integer"
            },
            "runsThisPeriod": {
              "type": "integer"
            }
          }
        }
      }
    },
    "whitelistedEmailDomains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 45,
        "minLength": 3
      }
    },
    "auditLogEnabled": {
      "type": "boolean"
    },
    "disabledAt": {
      "oneOf": [
        {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        {
          "type": "string",
          "format": "date-time"
        }
      ]
    },
    "isReadOnly": {
      "type": "boolean"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "referralId": {
      "type": "string",
      "maxLength": 1024
    },
    "mfaMode": {
      "type": "string",
      "enum": [
        "notRequired",
        "adminRequired",
        "required"
      ]
    },
    "banner": {
      "type": "object",
      "properties": {
        "message": {
          "type": "string",
          "maxLength": 2048
        },
        "level": {
          "type": "string",
          "enum": [
            "info",
            "warning",
            "critical"
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Instance Organization Example

{
  "name": "My Org",
  "id": "60106426dc03c6aad06540bb",
  "instanceId": "60106426dc03c6aad06560ba",
  "limits": {
    "member": 500
  },
  "auditLogEnabled": true
}

Instance Org Member

Schema for an Instance Organization member

Instance Org Member Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "userId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "edit",
        "collaborate",
        "view",
        "none"
      ]
    },
    "avatarUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "twoFactorAuthEnabled": {
      "type": "boolean"
    },
    "ssoLinked": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

Instance Org Member Example

{
  "userId": "575ef90f7ae143cd83dc4aad",
  "role": "view"
}

Instance Org Member Patch

Schema for an Instance Organization member modification request

Instance Org Member Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "edit",
        "collaborate",
        "view",
        "none"
      ]
    },
    "applicationRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    },
    "dashboardRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    }
  },
  "additionalProperties": false
}

Instance Org Member Patch Example

{
  "role": "view"
}

Instance Org Member Post

Schema for an Instance Organization member creation request

Instance Org Member Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "userId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "role": {
          "type": "string",
          "enum": [
            "admin",
            "edit",
            "collaborate",
            "view",
            "none"
          ]
        },
        "applicationRoles": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resourceId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "role": {
                "type": "string",
                "enum": [
                  "collaborate",
                  "view",
                  "none"
                ]
              }
            },
            "required": [
              "resourceId",
              "role"
            ],
            "additionalProperties": false
          },
          "maxItems": 1000
        },
        "dashboardRoles": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resourceId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "role": {
                "type": "string",
                "enum": [
                  "collaborate",
                  "view",
                  "none"
                ]
              }
            },
            "required": [
              "resourceId",
              "role"
            ],
            "additionalProperties": false
          },
          "maxItems": 1000
        }
      },
      "additionalProperties": false,
      "required": [
        "userId",
        "role"
      ]
    },
    {
      "type": "object",
      "properties": {
        "email": {
          "type": "string",
          "format": "email",
          "maxLength": 1024
        },
        "role": {
          "type": "string",
          "enum": [
            "admin",
            "edit",
            "collaborate",
            "view",
            "none"
          ]
        },
        "applicationRoles": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resourceId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "role": {
                "type": "string",
                "enum": [
                  "collaborate",
                  "view",
                  "none"
                ]
              }
            },
            "required": [
              "resourceId",
              "role"
            ],
            "additionalProperties": false
          },
          "maxItems": 1000
        },
        "dashboardRoles": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resourceId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "role": {
                "type": "string",
                "enum": [
                  "collaborate",
                  "view",
                  "none"
                ]
              }
            },
            "required": [
              "resourceId",
              "role"
            ],
            "additionalProperties": false
          },
          "maxItems": 1000
        },
        "disallowTransfer": {
          "type": "boolean"
        }
      },
      "additionalProperties": false,
      "required": [
        "email",
        "role"
      ]
    }
  ]
}

Instance Org Member Post Example

{
  "role": "view",
  "applicationRoles": [
    {
      "resourceId": "575ef90f7ae143cd83dc4a4f",
      "role": "none"
    }
  ],
  "userId": "675ed18f7ae143cd83dc4bb7"
}

Instance Organization Members

Schema for a collection of Organization members within an instance

Instance Organization Members Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/instanceOrgMembers"
      }
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "count": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Instance Organization Members Example

{
  "items": [
    {
      "userId": "575ef90f7ae143cd83dc4aad",
      "role": "view"
    }
  ],
  "count": 8,
  "sortField": "role",
  "sortDirection": "asc"
}

Instance Owned Organization Patch

Schema for the body of an Organization modification request within an instance

Instance Owned Organization Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "iconColor": {
      "type": "string",
      "maxLength": 64
    },
    "limits": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer",
          "minimum": 0
        },
        "application": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificate": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificateauthority": {
          "type": "integer",
          "minimum": 0
        },
        "applicationkey": {
          "type": "integer",
          "minimum": 0
        },
        "credential": {
          "type": "integer",
          "minimum": 0
        },
        "dashboard": {
          "type": "integer",
          "minimum": 0
        },
        "datatable": {
          "type": "integer",
          "minimum": 0
        },
        "device": {
          "type": "integer",
          "minimum": 0
        },
        "devicerecipe": {
          "type": "integer",
          "minimum": 0
        },
        "experiencedomain": {
          "type": "integer",
          "minimum": 0
        },
        "experienceendpoint": {
          "type": "integer",
          "minimum": 0
        },
        "experiencegroup": {
          "type": "integer",
          "minimum": 0
        },
        "experienceslug": {
          "type": "integer",
          "minimum": 0
        },
        "experienceuser": {
          "type": "integer",
          "minimum": 0
        },
        "experienceversion": {
          "type": "integer",
          "minimum": 0
        },
        "experienceview": {
          "type": "integer",
          "minimum": 0
        },
        "file": {
          "type": "integer",
          "minimum": 0
        },
        "flow": {
          "type": "integer",
          "minimum": 0
        },
        "integration": {
          "type": "integer",
          "minimum": 0
        },
        "notebook": {
          "type": "integer",
          "minimum": 0
        },
        "resourcejob": {
          "type": "integer",
          "minimum": 0
        },
        "webhook": {
          "type": "integer",
          "minimum": 0
        },
        "dataTTL": {
          "type": "integer",
          "minimum": 86400
        },
        "member": {
          "type": "integer",
          "minimum": 0
        },
        "payload": {
          "type": "integer",
          "minimum": 0
        },
        "storage": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerRun": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerMonth": {
          "type": "integer",
          "minimum": 0
        },
        "notebookInParallel": {
          "type": "integer",
          "minimum": 0
        },
        "experienceFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "applicationFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "systemInterval": {
          "type": "integer",
          "minimum": 5,
          "maximum": 3600
        }
      },
      "additionalProperties": false
    },
    "whitelistedEmailDomains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 45,
        "minLength": 3
      }
    },
    "auditLogEnabled": {
      "type": "boolean"
    },
    "disabledAt": {
      "oneOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "boolean"
        }
      ]
    },
    "isReadOnly": {
      "type": "boolean"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "referralId": {
      "type": "string",
      "maxLength": 1024
    },
    "mfaMode": {
      "type": "string",
      "enum": [
        "notRequired",
        "adminRequired",
        "required"
      ]
    },
    "banner": {
      "type": "object",
      "properties": {
        "message": {
          "type": "string",
          "maxLength": 2048
        },
        "level": {
          "type": "string",
          "enum": [
            "info",
            "warning",
            "critical"
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

Instance Owned Organization Patch Example

{
  "name": "My Org",
  "limits": {
    "member": 500
  },
  "auditLogEnabled": true
}

Instance Owned Organization Post

Schema for the body of an Organization creation request within an instance

Instance Owned Organization Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "iconColor": {
      "type": "string",
      "maxLength": 64
    },
    "limits": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer",
          "minimum": 0
        },
        "application": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificate": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificateauthority": {
          "type": "integer",
          "minimum": 0
        },
        "applicationkey": {
          "type": "integer",
          "minimum": 0
        },
        "credential": {
          "type": "integer",
          "minimum": 0
        },
        "dashboard": {
          "type": "integer",
          "minimum": 0
        },
        "datatable": {
          "type": "integer",
          "minimum": 0
        },
        "device": {
          "type": "integer",
          "minimum": 0
        },
        "devicerecipe": {
          "type": "integer",
          "minimum": 0
        },
        "experiencedomain": {
          "type": "integer",
          "minimum": 0
        },
        "experienceendpoint": {
          "type": "integer",
          "minimum": 0
        },
        "experiencegroup": {
          "type": "integer",
          "minimum": 0
        },
        "experienceslug": {
          "type": "integer",
          "minimum": 0
        },
        "experienceuser": {
          "type": "integer",
          "minimum": 0
        },
        "experienceversion": {
          "type": "integer",
          "minimum": 0
        },
        "experienceview": {
          "type": "integer",
          "minimum": 0
        },
        "file": {
          "type": "integer",
          "minimum": 0
        },
        "flow": {
          "type": "integer",
          "minimum": 0
        },
        "integration": {
          "type": "integer",
          "minimum": 0
        },
        "notebook": {
          "type": "integer",
          "minimum": 0
        },
        "resourcejob": {
          "type": "integer",
          "minimum": 0
        },
        "webhook": {
          "type": "integer",
          "minimum": 0
        },
        "dataTTL": {
          "type": "integer",
          "minimum": 86400
        },
        "member": {
          "type": "integer",
          "minimum": 0
        },
        "payload": {
          "type": "integer",
          "minimum": 0
        },
        "storage": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerRun": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerMonth": {
          "type": "integer",
          "minimum": 0
        },
        "notebookInParallel": {
          "type": "integer",
          "minimum": 0
        },
        "experienceFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "applicationFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "systemInterval": {
          "type": "integer",
          "minimum": 5,
          "maximum": 3600
        }
      },
      "additionalProperties": false
    },
    "members": {
      "type": "array",
      "maxItems": "10",
      "items": {
        "title": "Instance Org Member Post",
        "description": "Schema for an Instance Organization member creation request",
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "userId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "role": {
                "type": "string",
                "enum": [
                  "admin",
                  "edit",
                  "collaborate",
                  "view",
                  "none"
                ]
              },
              "applicationRoles": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "resourceId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "role": {
                      "type": "string",
                      "enum": [
                        "collaborate",
                        "view",
                        "none"
                      ]
                    }
                  },
                  "required": [
                    "resourceId",
                    "role"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 1000
              },
              "dashboardRoles": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "resourceId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "role": {
                      "type": "string",
                      "enum": [
                        "collaborate",
                        "view",
                        "none"
                      ]
                    }
                  },
                  "required": [
                    "resourceId",
                    "role"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 1000
              }
            },
            "additionalProperties": false,
            "required": [
              "userId",
              "role"
            ]
          },
          {
            "type": "object",
            "properties": {
              "email": {
                "type": "string",
                "format": "email",
                "maxLength": 1024
              },
              "role": {
                "type": "string",
                "enum": [
                  "admin",
                  "edit",
                  "collaborate",
                  "view",
                  "none"
                ]
              },
              "applicationRoles": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "resourceId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "role": {
                      "type": "string",
                      "enum": [
                        "collaborate",
                        "view",
                        "none"
                      ]
                    }
                  },
                  "required": [
                    "resourceId",
                    "role"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 1000
              },
              "dashboardRoles": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "resourceId": {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    "role": {
                      "type": "string",
                      "enum": [
                        "collaborate",
                        "view",
                        "none"
                      ]
                    }
                  },
                  "required": [
                    "resourceId",
                    "role"
                  ],
                  "additionalProperties": false
                },
                "maxItems": 1000
              },
              "disallowTransfer": {
                "type": "boolean"
              }
            },
            "additionalProperties": false,
            "required": [
              "email",
              "role"
            ]
          }
        ]
      }
    },
    "whitelistedEmailDomains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 45,
        "minLength": 3
      }
    },
    "auditLogEnabled": {
      "type": "boolean"
    },
    "disabledAt": {
      "oneOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "boolean"
        }
      ]
    },
    "isReadOnly": {
      "type": "boolean"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "required": [
          "key",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "referralId": {
      "type": "string",
      "maxLength": 1024
    },
    "mfaMode": {
      "type": "string",
      "enum": [
        "notRequired",
        "adminRequired",
        "required"
      ]
    },
    "banner": {
      "type": "object",
      "properties": {
        "message": {
          "type": "string",
          "maxLength": 2048
        },
        "level": {
          "type": "string",
          "enum": [
            "info",
            "warning",
            "critical"
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Instance Owned Organization Post Example

{
  "name": "My Org",
  "limits": {
    "member": 500
  },
  "auditLogEnabled": true
}

Instance Organizations

Schema for a collection of Organizations within an instance

Instance Organizations Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Instance Organization",
        "description": "Schema for the body of an Organization owned by an instance",
        "type": "object",
        "properties": {
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "instanceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "iconColor": {
            "type": "string",
            "maxLength": 64
          },
          "limits": {
            "type": "object",
            "properties": {
              "apitoken": {
                "type": "integer",
                "minimum": 0
              },
              "application": {
                "type": "integer",
                "minimum": 0
              },
              "applicationcertificate": {
                "type": "integer",
                "minimum": 0
              },
              "applicationcertificateauthority": {
                "type": "integer",
                "minimum": 0
              },
              "applicationkey": {
                "type": "integer",
                "minimum": 0
              },
              "credential": {
                "type": "integer",
                "minimum": 0
              },
              "dashboard": {
                "type": "integer",
                "minimum": 0
              },
              "datatable": {
                "type": "integer",
                "minimum": 0
              },
              "device": {
                "type": "integer",
                "minimum": 0
              },
              "devicerecipe": {
                "type": "integer",
                "minimum": 0
              },
              "experiencedomain": {
                "type": "integer",
                "minimum": 0
              },
              "experienceendpoint": {
                "type": "integer",
                "minimum": 0
              },
              "experiencegroup": {
                "type": "integer",
                "minimum": 0
              },
              "experienceslug": {
                "type": "integer",
                "minimum": 0
              },
              "experienceuser": {
                "type": "integer",
                "minimum": 0
              },
              "experienceversion": {
                "type": "integer",
                "minimum": 0
              },
              "experienceview": {
                "type": "integer",
                "minimum": 0
              },
              "file": {
                "type": "integer",
                "minimum": 0
              },
              "flow": {
                "type": "integer",
                "minimum": 0
              },
              "integration": {
                "type": "integer",
                "minimum": 0
              },
              "notebook": {
                "type": "integer",
                "minimum": 0
              },
              "resourcejob": {
                "type": "integer",
                "minimum": 0
              },
              "webhook": {
                "type": "integer",
                "minimum": 0
              },
              "dataTTL": {
                "type": "integer",
                "minimum": 86400
              },
              "member": {
                "type": "integer",
                "minimum": 0
              },
              "payload": {
                "type": "integer",
                "minimum": 0
              },
              "storage": {
                "type": "integer",
                "minimum": 0
              },
              "notebookMinutesPerRun": {
                "type": "integer",
                "minimum": 0
              },
              "notebookMinutesPerMonth": {
                "type": "integer",
                "minimum": 0
              },
              "notebookInParallel": {
                "type": "integer",
                "minimum": 0
              },
              "experienceFlowSlots": {
                "type": "integer",
                "minimum": 0
              },
              "applicationFlowSlots": {
                "type": "integer",
                "minimum": 0
              },
              "systemInterval": {
                "type": "integer",
                "minimum": 5,
                "maximum": 3600
              }
            },
            "additionalProperties": false
          },
          "summary": {
            "type": "object",
            "properties": {
              "apiTokenCount": {
                "type": "integer"
              },
              "appCount": {
                "type": "integer"
              },
              "certificateCount": {
                "type": "integer"
              },
              "certificateAuthorityCount": {
                "type": "integer"
              },
              "credentialCount": {
                "type": "integer"
              },
              "dashCount": {
                "type": "integer"
              },
              "dataTableCount": {
                "type": "integer"
              },
              "deviceCount": {
                "type": "integer"
              },
              "deviceRecipeCount": {
                "type": "integer"
              },
              "eventCount": {
                "type": "integer"
              },
              "experienceDomainCount": {
                "type": "integer"
              },
              "experienceEndpointCount": {
                "type": "integer"
              },
              "experienceGroupCount": {
                "type": "integer"
              },
              "experienceSlugCount": {
                "type": "integer"
              },
              "experienceUserCount": {
                "type": "integer"
              },
              "experienceVersionCount": {
                "type": "integer"
              },
              "experienceViewCount": {
                "type": "integer"
              },
              "fileCount": {
                "type": "integer"
              },
              "flowCount": {
                "type": "integer"
              },
              "integrationCount": {
                "type": "integer"
              },
              "keyCount": {
                "type": "integer"
              },
              "notebookCount": {
                "type": "integer"
              },
              "resourceJobCount": {
                "type": "integer"
              },
              "webhookCount": {
                "type": "integer"
              },
              "memberCount": {
                "type": "integer"
              },
              "pendingInviteCount": {
                "type": "integer"
              },
              "payloadCount": {
                "title": "Payload Stats",
                "description": "Schema for the result of a payload stats request",
                "type": "object",
                "properties": {
                  "dataTable": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceCommand": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceConnect": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceDisconnect": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceState": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "endpoint": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "event": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "flowError": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "integration": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "mqttIn": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "mqttOut": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "notebook": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "timer": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "virtualButton": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "webhook": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "resourceJob": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  }
                }
              },
              "storageStats": {
                "type": "object",
                "properties": {
                  "count": {
                    "type": "integer"
                  },
                  "size": {
                    "type": "integer"
                  }
                }
              },
              "notebookStats": {
                "type": "object",
                "properties": {
                  "awaitingCompletion": {
                    "type": "integer"
                  },
                  "minutesThisPeriod": {
                    "type": "integer"
                  },
                  "runsThisPeriod": {
                    "type": "integer"
                  }
                }
              }
            }
          },
          "whitelistedEmailDomains": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 45,
              "minLength": 3
            }
          },
          "auditLogEnabled": {
            "type": "boolean"
          },
          "disabledAt": {
            "oneOf": [
              {
                "type": "boolean",
                "enum": [
                  false
                ]
              },
              {
                "type": "string",
                "format": "date-time"
              }
            ]
          },
          "isReadOnly": {
            "type": "boolean"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                },
                "value": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              },
              "required": [
                "key",
                "value"
              ],
              "additionalProperties": false
            },
            "maxItems": 100
          },
          "referralId": {
            "type": "string",
            "maxLength": 1024
          },
          "mfaMode": {
            "type": "string",
            "enum": [
              "notRequired",
              "adminRequired",
              "required"
            ]
          },
          "banner": {
            "type": "object",
            "properties": {
              "message": {
                "type": "string",
                "maxLength": 2048
              },
              "level": {
                "type": "string",
                "enum": [
                  "info",
                  "warning",
                  "critical"
                ]
              }
            },
            "additionalProperties": false
          }
        },
        "additionalProperties": false,
        "required": [
          "name"
        ]
      }
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Instance Organizations Example

{
  "items": [
    {
      "name": "My Org",
      "id": "60106426dc03c6aad06540bb",
      "instanceId": "60106426dc03c6aad06560ba",
      "limits": {
        "member": 500
      },
      "auditLogEnabled": true
    }
  ],
  "count": 1,
  "totalCount": 2,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc"
}

Instance Patch

Schema for instance patch request

Instance Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "reportConfigs": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 48
          },
          "cron": {
            "type": "string",
            "maxLength": 255
          },
          "timezone": {
            "type": "string",
            "maxLength": 255
          },
          "emails": {
            "type": "array",
            "maxItems": 10,
            "items": {
              "type": "string",
              "format": "email",
              "maxLength": 1024
            }
          },
          "callbackUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "resourceGroupBy": {
            "type": "string",
            "enum": [
              "application",
              "organization"
            ]
          },
          "dateGroupBy": {
            "type": "string",
            "enum": [
              "day",
              "month"
            ]
          },
          "periods": {
            "type": "integer",
            "minimum": 1,
            "maximum": 90
          },
          "includeSandbox": {
            "type": "boolean"
          }
        },
        "required": [
          "cron"
        ],
        "additionalProperties": false
      }
    },
    "orgDefaultLimitConfig": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer",
          "minimum": 0
        },
        "application": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificate": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificateauthority": {
          "type": "integer",
          "minimum": 0
        },
        "applicationkey": {
          "type": "integer",
          "minimum": 0
        },
        "credential": {
          "type": "integer",
          "minimum": 0
        },
        "dashboard": {
          "type": "integer",
          "minimum": 0
        },
        "datatable": {
          "type": "integer",
          "minimum": 0
        },
        "device": {
          "type": "integer",
          "minimum": 0
        },
        "devicerecipe": {
          "type": "integer",
          "minimum": 0
        },
        "experiencedomain": {
          "type": "integer",
          "minimum": 0
        },
        "experienceendpoint": {
          "type": "integer",
          "minimum": 0
        },
        "experiencegroup": {
          "type": "integer",
          "minimum": 0
        },
        "experienceslug": {
          "type": "integer",
          "minimum": 0
        },
        "experienceuser": {
          "type": "integer",
          "minimum": 0
        },
        "experienceversion": {
          "type": "integer",
          "minimum": 0
        },
        "experienceview": {
          "type": "integer",
          "minimum": 0
        },
        "file": {
          "type": "integer",
          "minimum": 0
        },
        "flow": {
          "type": "integer",
          "minimum": 0
        },
        "integration": {
          "type": "integer",
          "minimum": 0
        },
        "notebook": {
          "type": "integer",
          "minimum": 0
        },
        "resourcejob": {
          "type": "integer",
          "minimum": 0
        },
        "webhook": {
          "type": "integer",
          "minimum": 0
        },
        "dataTTL": {
          "type": "integer",
          "minimum": 86400
        },
        "member": {
          "type": "integer",
          "minimum": 0
        },
        "payload": {
          "type": "integer",
          "minimum": 0
        },
        "storage": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerRun": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerMonth": {
          "type": "integer",
          "minimum": 0
        },
        "notebookInParallel": {
          "type": "integer",
          "minimum": 0
        },
        "experienceFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "applicationFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "systemInterval": {
          "type": "integer",
          "minimum": 5,
          "maximum": 3600
        }
      },
      "additionalProperties": false
    },
    "mfaMode": {
      "type": "string",
      "enum": [
        "notRequired",
        "adminRequired",
        "required"
      ]
    }
  },
  "additionalProperties": false
}

Instance Patch Example

{
  "reportConfigs": [
    {
      "emails": [
        "email@example.com"
      ],
      "callbackUrl": "https://example.com/callback",
      "resourceGroupBy": "organization",
      "dateGroupBy": "month",
      "includeSandbox": false,
      "periods": 3,
      "cron": "0 4 1 * *"
    },
    {
      "emails": [
        "email@example.com",
        "anotheremail@example.com"
      ],
      "resourceGroupBy": "application",
      "dateGroupBy": "month",
      "includeSandbox": true,
      "cron": "0 4 1 * *"
    }
  ]
}

Instance Report Options Post

Schema for the body of a instance report request

Instance Report Options Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "resourceGroupBy": {
      "type": "string",
      "enum": [
        "application",
        "organization"
      ]
    },
    "dateGroupBy": {
      "type": "string",
      "enum": [
        "day",
        "month"
      ]
    },
    "includeSandbox": {
      "type": "boolean"
    },
    "start": {
      "type": "string",
      "format": "date-time"
    },
    "end": {
      "type": "string",
      "format": "date-time"
    }
  },
  "additionalProperties": false
}

Instance Report Options Post Example

{
  "email": "email@example.com",
  "callbackUrl": "https://example.com/callback",
  "resourceGroupBy": "organization",
  "dateGroupBy": "month",
  "includeSandbox": false,
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-31T11:59:59.999Z"
}

Instance Sandbox User

Schema for information about a sandbox user within an instance domain

Instance Sandbox User Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "instanceSandboxId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "permanentDeletion": {
      "type": "string",
      "format": "date-time"
    },
    "dataDeletion": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "lastSuccessfulLogin": {
      "type": "string",
      "format": "date-time"
    },
    "lastFailedLogin": {
      "type": "string",
      "format": "date-time"
    },
    "failedLoginCount": {
      "type": "number"
    },
    "passwordLastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "companyName": {
      "type": "string",
      "maxLength": 1024
    },
    "title": {
      "type": "string",
      "maxLength": 1024
    },
    "phoneNumber": {
      "type": "string",
      "maxLength": 1024
    },
    "location": {
      "type": "string",
      "maxLength": 1024
    },
    "url": {
      "type": "string",
      "maxLength": 1024
    },
    "tokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "emailVerified": {
      "type": "boolean"
    },
    "needsToVerifyEmail": {
      "type": "boolean"
    },
    "twoFactorAuthEnabled": {
      "type": "boolean"
    },
    "fullName": {
      "type": "string"
    },
    "githubName": {
      "type": "string"
    },
    "avatarUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "limits": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer"
        },
        "application": {
          "type": "integer"
        },
        "applicationcertificate": {
          "type": "integer"
        },
        "applicationcertificateauthority": {
          "type": "integer"
        },
        "applicationkey": {
          "type": "integer"
        },
        "credential": {
          "type": "integer"
        },
        "dashboard": {
          "type": "integer"
        },
        "datatable": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "devicerecipe": {
          "type": "integer"
        },
        "experiencedomain": {
          "type": "integer"
        },
        "experienceendpoint": {
          "type": "integer"
        },
        "experiencegroup": {
          "type": "integer"
        },
        "experienceslug": {
          "type": "integer"
        },
        "experienceuser": {
          "type": "integer"
        },
        "experienceversion": {
          "type": "integer"
        },
        "experienceview": {
          "type": "integer"
        },
        "file": {
          "type": "integer"
        },
        "flow": {
          "type": "integer"
        },
        "integration": {
          "type": "integer"
        },
        "notebook": {
          "type": "integer"
        },
        "resourcejob": {
          "type": "integer"
        },
        "webhook": {
          "type": "integer"
        },
        "dataTTL": {
          "type": "integer"
        },
        "payload": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "notebookMinutesPerRun": {
          "type": "integer"
        },
        "notebookMinutesPerMonth": {
          "type": "integer"
        },
        "notebookInParallel": {
          "type": "integer"
        },
        "experienceFlowSlots": {
          "type": "integer"
        },
        "applicationFlowSlots": {
          "type": "integer"
        },
        "systemInterval": {
          "type": "integer"
        }
      },
      "additionalProperties": false
    },
    "summary": {
      "type": "object",
      "properties": {
        "apiTokenCount": {
          "type": "integer"
        },
        "appCount": {
          "type": "integer"
        },
        "certificateCount": {
          "type": "integer"
        },
        "certificateAuthorityCount": {
          "type": "integer"
        },
        "credentialCount": {
          "type": "integer"
        },
        "dashCount": {
          "type": "integer"
        },
        "dataTableCount": {
          "type": "integer"
        },
        "deviceCount": {
          "type": "integer"
        },
        "deviceRecipeCount": {
          "type": "integer"
        },
        "eventCount": {
          "type": "integer"
        },
        "experienceDomainCount": {
          "type": "integer"
        },
        "experienceEndpointCount": {
          "type": "integer"
        },
        "experienceGroupCount": {
          "type": "integer"
        },
        "experienceSlugCount": {
          "type": "integer"
        },
        "experienceUserCount": {
          "type": "integer"
        },
        "experienceVersionCount": {
          "type": "integer"
        },
        "experienceViewCount": {
          "type": "integer"
        },
        "fileCount": {
          "type": "integer"
        },
        "flowCount": {
          "type": "integer"
        },
        "integrationCount": {
          "type": "integer"
        },
        "keyCount": {
          "type": "integer"
        },
        "notebookCount": {
          "type": "integer"
        },
        "resourceJobCount": {
          "type": "integer"
        },
        "webhookCount": {
          "type": "integer"
        },
        "orgCount": {
          "type": "integer"
        },
        "instanceCount": {
          "type": "integer"
        },
        "payloadCount": {
          "title": "Payload Stats",
          "description": "Schema for the result of a payload stats request",
          "type": "object",
          "properties": {
            "dataTable": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceCommand": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceConnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceDisconnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceState": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "endpoint": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "event": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "flowError": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "integration": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttIn": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttOut": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "notebook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "timer": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "virtualButton": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "webhook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "resourceJob": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            }
          }
        },
        "storageStats": {
          "type": "object",
          "properties": {
            "count": {
              "type": "integer"
            },
            "size": {
              "type": "integer"
            }
          }
        },
        "notebookStats": {
          "type": "object",
          "properties": {
            "awaitingCompletion": {
              "type": "integer"
            },
            "minutesThisPeriod": {
              "type": "integer"
            },
            "runsThisPeriod": {
              "type": "integer"
            }
          }
        }
      }
    },
    "currentPeriodStart": {
      "type": "string",
      "format": "date-time"
    },
    "currentPeriodEnd": {
      "type": "string",
      "format": "date-time"
    },
    "ssoLinked": {
      "type": "boolean"
    },
    "orgs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "iconColor": {
            "type": "string",
            "maxLength": 64
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        }
      }
    }
  }
}

Instance Sandbox User Example

{
  "id": "575ed70c7ae143cd83dc4aa9",
  "instanceId": "575ed70c7ae143cd83dc4aa9",
  "instanceSandboxId": "575ed70c7ae143cd83dc4aa9",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "passwordLastUpdated": "2016-06-13T04:00:00.000Z",
  "email": "email@example.com",
  "firstName": "Example",
  "lastName": "Name",
  "companyName": "Example, Inc.",
  "url": "https://example.com",
  "emailVerified": true,
  "needsToVerifyEmail": false,
  "twoFactorAuthEnabled": false,
  "fullName": "Example Name",
  "summary": {
    "appCount": 8,
    "dashCount": 5,
    "orgCount": 2,
    "deviceCount": 12,
    "flowCount": 3,
    "webhookCount": 0,
    "keyCount": 2,
    "deviceRecipeCount": 0
  },
  "orgs": [
    {
      "id": "575ed70c7ae143cd83dc4aa9",
      "iconColor": "red",
      "name": "Example"
    }
  ],
  "ssoLinked": false
}

Instance Sandboxes

Schema for a collection of instance associated sandboxes

Instance Sandboxes Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Instance Sandbox User",
        "description": "Schema for information about a sandbox user within an instance domain",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "instanceSandboxId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "instanceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "permanentDeletion": {
            "type": "string",
            "format": "date-time"
          },
          "dataDeletion": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "lastSuccessfulLogin": {
            "type": "string",
            "format": "date-time"
          },
          "lastFailedLogin": {
            "type": "string",
            "format": "date-time"
          },
          "failedLoginCount": {
            "type": "number"
          },
          "passwordLastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "email": {
            "type": "string",
            "format": "email",
            "maxLength": 1024
          },
          "firstName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "lastName": {
            "type": "string",
            "maxLength": 1024
          },
          "companyName": {
            "type": "string",
            "maxLength": 1024
          },
          "title": {
            "type": "string",
            "maxLength": 1024
          },
          "phoneNumber": {
            "type": "string",
            "maxLength": 1024
          },
          "location": {
            "type": "string",
            "maxLength": 1024
          },
          "url": {
            "type": "string",
            "maxLength": 1024
          },
          "tokenCutoff": {
            "type": "string",
            "format": "date-time"
          },
          "emailVerified": {
            "type": "boolean"
          },
          "needsToVerifyEmail": {
            "type": "boolean"
          },
          "twoFactorAuthEnabled": {
            "type": "boolean"
          },
          "fullName": {
            "type": "string"
          },
          "githubName": {
            "type": "string"
          },
          "avatarUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "limits": {
            "type": "object",
            "properties": {
              "apitoken": {
                "type": "integer"
              },
              "application": {
                "type": "integer"
              },
              "applicationcertificate": {
                "type": "integer"
              },
              "applicationcertificateauthority": {
                "type": "integer"
              },
              "applicationkey": {
                "type": "integer"
              },
              "credential": {
                "type": "integer"
              },
              "dashboard": {
                "type": "integer"
              },
              "datatable": {
                "type": "integer"
              },
              "device": {
                "type": "integer"
              },
              "devicerecipe": {
                "type": "integer"
              },
              "experiencedomain": {
                "type": "integer"
              },
              "experienceendpoint": {
                "type": "integer"
              },
              "experiencegroup": {
                "type": "integer"
              },
              "experienceslug": {
                "type": "integer"
              },
              "experienceuser": {
                "type": "integer"
              },
              "experienceversion": {
                "type": "integer"
              },
              "experienceview": {
                "type": "integer"
              },
              "file": {
                "type": "integer"
              },
              "flow": {
                "type": "integer"
              },
              "integration": {
                "type": "integer"
              },
              "notebook": {
                "type": "integer"
              },
              "resourcejob": {
                "type": "integer"
              },
              "webhook": {
                "type": "integer"
              },
              "dataTTL": {
                "type": "integer"
              },
              "payload": {
                "type": "integer"
              },
              "storage": {
                "type": "integer"
              },
              "notebookMinutesPerRun": {
                "type": "integer"
              },
              "notebookMinutesPerMonth": {
                "type": "integer"
              },
              "notebookInParallel": {
                "type": "integer"
              },
              "experienceFlowSlots": {
                "type": "integer"
              },
              "applicationFlowSlots": {
                "type": "integer"
              },
              "systemInterval": {
                "type": "integer"
              }
            },
            "additionalProperties": false
          },
          "summary": {
            "type": "object",
            "properties": {
              "apiTokenCount": {
                "type": "integer"
              },
              "appCount": {
                "type": "integer"
              },
              "certificateCount": {
                "type": "integer"
              },
              "certificateAuthorityCount": {
                "type": "integer"
              },
              "credentialCount": {
                "type": "integer"
              },
              "dashCount": {
                "type": "integer"
              },
              "dataTableCount": {
                "type": "integer"
              },
              "deviceCount": {
                "type": "integer"
              },
              "deviceRecipeCount": {
                "type": "integer"
              },
              "eventCount": {
                "type": "integer"
              },
              "experienceDomainCount": {
                "type": "integer"
              },
              "experienceEndpointCount": {
                "type": "integer"
              },
              "experienceGroupCount": {
                "type": "integer"
              },
              "experienceSlugCount": {
                "type": "integer"
              },
              "experienceUserCount": {
                "type": "integer"
              },
              "experienceVersionCount": {
                "type": "integer"
              },
              "experienceViewCount": {
                "type": "integer"
              },
              "fileCount": {
                "type": "integer"
              },
              "flowCount": {
                "type": "integer"
              },
              "integrationCount": {
                "type": "integer"
              },
              "keyCount": {
                "type": "integer"
              },
              "notebookCount": {
                "type": "integer"
              },
              "resourceJobCount": {
                "type": "integer"
              },
              "webhookCount": {
                "type": "integer"
              },
              "orgCount": {
                "type": "integer"
              },
              "instanceCount": {
                "type": "integer"
              },
              "payloadCount": {
                "title": "Payload Stats",
                "description": "Schema for the result of a payload stats request",
                "type": "object",
                "properties": {
                  "dataTable": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceCommand": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceConnect": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceDisconnect": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceState": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "endpoint": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "event": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "flowError": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "integration": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "mqttIn": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "mqttOut": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "notebook": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "timer": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "virtualButton": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "webhook": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "resourceJob": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  }
                }
              },
              "storageStats": {
                "type": "object",
                "properties": {
                  "count": {
                    "type": "integer"
                  },
                  "size": {
                    "type": "integer"
                  }
                }
              },
              "notebookStats": {
                "type": "object",
                "properties": {
                  "awaitingCompletion": {
                    "type": "integer"
                  },
                  "minutesThisPeriod": {
                    "type": "integer"
                  },
                  "runsThisPeriod": {
                    "type": "integer"
                  }
                }
              }
            }
          },
          "currentPeriodStart": {
            "type": "string",
            "format": "date-time"
          },
          "currentPeriodEnd": {
            "type": "string",
            "format": "date-time"
          },
          "ssoLinked": {
            "type": "boolean"
          },
          "orgs": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "iconColor": {
                  "type": "string",
                  "maxLength": 64
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "limit": {
      "type": "integer"
    },
    "startingAfterId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "endingBeforeId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "hasMore": {
      "type": "boolean"
    }
  }
}

Instance Sandboxes Example

{
  "count": 2,
  "items": [
    {
      "id": "575ed70c7ae143cd83dc4aa9",
      "instanceId": "575ed70c7ae143cd83dc4aa9",
      "instanceSandboxId": "575ed70c7ae143cd83dc4aa9",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "passwordLastUpdated": "2016-06-13T04:00:00.000Z",
      "email": "email@example.com",
      "firstName": "Example",
      "lastName": "Name",
      "companyName": "Example, Inc.",
      "url": "https://example.com",
      "emailVerified": true,
      "needsToVerifyEmail": false,
      "twoFactorAuthEnabled": false,
      "fullName": "Example Name",
      "summary": {
        "appCount": 8,
        "dashCount": 5,
        "orgCount": 2,
        "deviceCount": 12,
        "flowCount": 3,
        "webhookCount": 0,
        "keyCount": 2,
        "deviceRecipeCount": 0
      },
      "orgs": [
        {
          "id": "575ed70c7ae143cd83dc4aa9",
          "iconColor": "red",
          "name": "Example"
        }
      ],
      "ssoLinked": false
    },
    {
      "id": "575ed70c7ae143cd83dc4aa9",
      "instanceId": "575ed70c7ae143cd83dc4aa9",
      "instanceSandboxId": "575ed70c7ae143cd83dc4aa9",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "passwordLastUpdated": "2016-06-13T04:00:00.000Z",
      "email": "email@example.com",
      "firstName": "Example",
      "lastName": "Name",
      "companyName": "Example, Inc.",
      "url": "https://example.com",
      "emailVerified": true,
      "needsToVerifyEmail": false,
      "twoFactorAuthEnabled": false,
      "fullName": "Example Name",
      "summary": {
        "appCount": 8,
        "dashCount": 5,
        "orgCount": 2,
        "deviceCount": 12,
        "flowCount": 3,
        "webhookCount": 0,
        "keyCount": 2,
        "deviceRecipeCount": 0
      },
      "orgs": [
        {
          "id": "575ed70c7ae143cd83dc4aa9",
          "iconColor": "red",
          "name": "Example"
        }
      ],
      "ssoLinked": false
    }
  ],
  "limit": 100,
  "startingAfterId": "575ed70c7ae143cd83dc4aa9",
  "sortField": "firstName",
  "sortDirection": "asc",
  "hasMore": false
}

Instances

Schema for a collection of Instances

Instances Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Instance",
        "description": "Schema for a single Instance",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "instanceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "allowAuditLogging": {
            "type": "boolean"
          },
          "reportConfigs": {
            "type": "array",
            "maxItems": 10,
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "maxLength": 48
                },
                "cron": {
                  "type": "string",
                  "maxLength": 255
                },
                "timezone": {
                  "type": "string",
                  "maxLength": 255
                },
                "emails": {
                  "type": "array",
                  "maxItems": 10,
                  "items": {
                    "type": "string",
                    "format": "email",
                    "maxLength": 1024
                  }
                },
                "callbackUrl": {
                  "type": "string",
                  "format": "uri",
                  "maxLength": 1024
                },
                "resourceGroupBy": {
                  "type": "string",
                  "enum": [
                    "application",
                    "organization"
                  ]
                },
                "dateGroupBy": {
                  "type": "string",
                  "enum": [
                    "day",
                    "month"
                  ]
                },
                "periods": {
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 90
                },
                "includeSandbox": {
                  "type": "boolean"
                }
              },
              "required": [
                "cron"
              ],
              "additionalProperties": false
            }
          },
          "limits": {
            "type": "object",
            "properties": {
              "organization": {
                "type": "integer"
              },
              "apitoken": {
                "type": "integer"
              },
              "application": {
                "type": "integer"
              },
              "applicationcertificate": {
                "type": "integer"
              },
              "applicationcertificateauthority": {
                "type": "integer"
              },
              "applicationkey": {
                "type": "integer"
              },
              "credential": {
                "type": "integer"
              },
              "dashboard": {
                "type": "integer"
              },
              "datatable": {
                "type": "integer"
              },
              "device": {
                "type": "integer"
              },
              "devicerecipe": {
                "type": "integer"
              },
              "experiencedomain": {
                "type": "integer"
              },
              "experienceendpoint": {
                "type": "integer"
              },
              "experiencegroup": {
                "type": "integer"
              },
              "experienceslug": {
                "type": "integer"
              },
              "experienceuser": {
                "type": "integer"
              },
              "experienceversion": {
                "type": "integer"
              },
              "experienceview": {
                "type": "integer"
              },
              "file": {
                "type": "integer"
              },
              "flow": {
                "type": "integer"
              },
              "integration": {
                "type": "integer"
              },
              "notebook": {
                "type": "integer"
              },
              "resourcejob": {
                "type": "integer"
              },
              "webhook": {
                "type": "integer"
              },
              "dataTTL": {
                "type": "integer"
              },
              "member": {
                "type": "integer"
              },
              "payload": {
                "type": "integer"
              },
              "storage": {
                "type": "integer"
              },
              "notebookMinutesPerRun": {
                "type": "integer"
              },
              "notebookMinutesPerMonth": {
                "type": "integer"
              },
              "notebookInParallel": {
                "type": "integer"
              },
              "experienceFlowSlots": {
                "type": "integer"
              },
              "applicationFlowSlots": {
                "type": "integer"
              },
              "systemInterval": {
                "type": "integer"
              }
            },
            "additionalProperties": false
          },
          "orgDefaultLimitConfig": {
            "type": "object",
            "properties": {
              "apitoken": {
                "type": "integer",
                "minimum": 0
              },
              "application": {
                "type": "integer",
                "minimum": 0
              },
              "applicationcertificate": {
                "type": "integer",
                "minimum": 0
              },
              "applicationcertificateauthority": {
                "type": "integer",
                "minimum": 0
              },
              "applicationkey": {
                "type": "integer",
                "minimum": 0
              },
              "credential": {
                "type": "integer",
                "minimum": 0
              },
              "dashboard": {
                "type": "integer",
                "minimum": 0
              },
              "datatable": {
                "type": "integer",
                "minimum": 0
              },
              "device": {
                "type": "integer",
                "minimum": 0
              },
              "devicerecipe": {
                "type": "integer",
                "minimum": 0
              },
              "experiencedomain": {
                "type": "integer",
                "minimum": 0
              },
              "experienceendpoint": {
                "type": "integer",
                "minimum": 0
              },
              "experiencegroup": {
                "type": "integer",
                "minimum": 0
              },
              "experienceslug": {
                "type": "integer",
                "minimum": 0
              },
              "experienceuser": {
                "type": "integer",
                "minimum": 0
              },
              "experienceversion": {
                "type": "integer",
                "minimum": 0
              },
              "experienceview": {
                "type": "integer",
                "minimum": 0
              },
              "file": {
                "type": "integer",
                "minimum": 0
              },
              "flow": {
                "type": "integer",
                "minimum": 0
              },
              "integration": {
                "type": "integer",
                "minimum": 0
              },
              "notebook": {
                "type": "integer",
                "minimum": 0
              },
              "resourcejob": {
                "type": "integer",
                "minimum": 0
              },
              "webhook": {
                "type": "integer",
                "minimum": 0
              },
              "dataTTL": {
                "type": "integer",
                "minimum": 86400
              },
              "member": {
                "type": "integer",
                "minimum": 0
              },
              "payload": {
                "type": "integer",
                "minimum": 0
              },
              "storage": {
                "type": "integer",
                "minimum": 0
              },
              "notebookMinutesPerRun": {
                "type": "integer",
                "minimum": 0
              },
              "notebookMinutesPerMonth": {
                "type": "integer",
                "minimum": 0
              },
              "notebookInParallel": {
                "type": "integer",
                "minimum": 0
              },
              "experienceFlowSlots": {
                "type": "integer",
                "minimum": 0
              },
              "applicationFlowSlots": {
                "type": "integer",
                "minimum": 0
              },
              "systemInterval": {
                "type": "integer",
                "minimum": 5,
                "maximum": 3600
              }
            },
            "additionalProperties": false
          },
          "members": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "userId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "role": {
                  "type": "string",
                  "enum": [
                    "admin",
                    "view"
                  ]
                }
              }
            }
          },
          "mfaMode": {
            "type": "string",
            "enum": [
              "notRequired",
              "adminRequired",
              "required"
            ]
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Instances Example

{
  "count": 2,
  "items": [
    {
      "name": "B",
      "limits": {
        "organization": 2000,
        "apitoken": 1000,
        "application": 100,
        "applicationcertificate": 1000,
        "applicationcertificateauthority": 1000,
        "applicationkey": 1000,
        "dashboard": 100,
        "datatable": 100,
        "device": 1000,
        "devicerecipe": 1000,
        "experiencedomain": 100,
        "experienceendpoint": 500,
        "experienceslug": 100,
        "experienceversion": 1000,
        "experienceview": 500,
        "experiencegroup": 100,
        "experienceuser": 1000,
        "file": 1000,
        "flow": 1000,
        "integration": 50,
        "notebook": 100,
        "resourcejob": 10,
        "webhook": 1000,
        "dataTTL": 15552000,
        "member": 100,
        "payload": 75000000,
        "storage": 1073741824,
        "notebookMinutesPerRun": 60,
        "notebookMinutesPerMonth": 930,
        "notebookInParallel": 5,
        "systemInterval": 5
      },
      "members": [
        {
          "userId": "5ff89ff825013dc6c2856184",
          "role": "admin"
        },
        {
          "userId": "5ff89ff825013dc6c2856185",
          "role": "view"
        },
        {
          "userId": "5ff89ff825013dc6c2856186",
          "role": "view"
        }
      ],
      "creationDate": "2021-01-08T18:10:00.054Z",
      "lastUpdated": "2021-01-08T18:10:00.054Z",
      "allowAuditLogging": false,
      "instanceId": "5ff89ff825013dc6c2856188",
      "id": "5ff89ff825013dc6c2856188"
    }
  ],
  "perPage": 100,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "totalCount": 2
}

Integration

Schema for a single Integration

Integration Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "integrationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "credentialName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "integrationType": {
      "type": "string",
      "enum": [
        "azureEventHub",
        "googlePubSub",
        "mqtt",
        "particle",
        "sqs",
        "websocket"
      ]
    },
    "enabled": {
      "type": "boolean"
    },
    "topics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      },
      "uniqueItems": true
    },
    "azureEventHubConfig": {
      "type": "object",
      "properties": {
        "hubName": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "hostName": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "consumerGroup": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "connectionString": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        }
      },
      "additionalProperties": false,
      "oneOf": [
        {
          "required": [
            "hubName",
            "consumerGroup",
            "connectionString"
          ]
        },
        {
          "required": [
            "hubName",
            "consumerGroup",
            "hostName"
          ]
        }
      ]
    },
    "googlePubSubConfig": {
      "type": "object",
      "properties": {
        "projectId": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1
        },
        "keyJson": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        }
      },
      "additionalProperties": false
    },
    "mqttConfig": {
      "type": "object",
      "properties": {
        "clientId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "username": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "password": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "clean": {
          "type": "boolean"
        },
        "port": {
          "type": "number",
          "minimum": 1,
          "maximum": 65535
        },
        "protocol": {
          "type": "string",
          "enum": [
            "mqtt",
            "mqtts",
            "ws",
            "wss"
          ]
        },
        "host": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "privateKey": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "certificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "caCertificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "disableSSLVerification": {
          "type": "boolean"
        },
        "protocolVersion": {
          "type": "string",
          "enum": [
            "3.1.1",
            "5"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "port",
        "protocol",
        "host"
      ]
    },
    "particleConfig": {
      "type": "object",
      "properties": {
        "accessToken": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "productSlugOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "orgSlugOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "deviceNameOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        }
      },
      "additionalProperties": false,
      "required": [
        "accessToken"
      ]
    },
    "sqsConfig": {
      "type": "object",
      "properties": {
        "accessKeyId": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "secretAccessKey": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "region": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "queueUrl": {
          "type": "string",
          "min": 1,
          "max": 256
        }
      },
      "additionalProperties": false,
      "required": [
        "queueUrl"
      ]
    },
    "websocketConfig": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "disableSSLVerification": {
          "type": "boolean"
        },
        "username": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "password": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "privateKey": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "certificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "caCertificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "headers": {
          "type": "array",
          "maxItems": 50,
          "items": {
            "type": "object",
            "properties": {
              "headerKey": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "headerValue": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "additionalProperties": false,
            "required": [
              "headerKey",
              "headerValue"
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "url"
      ]
    },
    "status": {
      "lastKeepAlive": {
        "type": [
          "number"
        ]
      },
      "nextAttempt": {
        "type": [
          "number"
        ]
      },
      "connectInfo": {
        "type": "object",
        "properties": {
          "ts": {
            "type": [
              "number",
              "null"
            ]
          }
        }
      },
      "disconnectInfo": {
        "type": "object",
        "properties": {
          "ts": {
            "type": [
              "number",
              "null"
            ]
          },
          "error": {
            "type": "string"
          }
        }
      }
    }
  }
}

Integration Example

{
  "id": "58ec07f20c747f65243d0d76",
  "integrationId": "58ec07f20c747f65243d0d76",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "Example Integrations",
  "integrationType": "mqtt",
  "enabled": true,
  "topics": [
    "myTopic"
  ],
  "mqttConfig": {
    "clientId": "exampleClientId",
    "username": "exampleUsername",
    "password": "examplePassword",
    "port": 8883,
    "protocol": "mqtts",
    "host": "broker.example.com"
  },
  "status": {
    "lastKeepAlive": 1491863679994,
    "connectInfo": {
      "ts": 1490629589313
    },
    "disconnectInfo": {
      "ts": 1490629587190,
      "error": "Keepalive Timeout"
    }
  }
}

Integration Patch

Schema for the body of an Integration modification request

Integration Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "enabled": {
      "type": "boolean"
    },
    "topics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      },
      "uniqueItems": true
    },
    "credentialName": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ]
    },
    "azureEventHubConfig": {
      "type": "object",
      "properties": {
        "hubName": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "hostName": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "consumerGroup": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "connectionString": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        }
      },
      "additionalProperties": false,
      "oneOf": [
        {
          "required": [
            "hubName",
            "consumerGroup",
            "connectionString"
          ]
        },
        {
          "required": [
            "hubName",
            "consumerGroup",
            "hostName"
          ]
        }
      ]
    },
    "googlePubSubConfig": {
      "type": "object",
      "properties": {
        "projectId": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1
        },
        "keyJson": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        }
      },
      "additionalProperties": false
    },
    "mqttConfig": {
      "type": "object",
      "properties": {
        "clientId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "username": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "password": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "clean": {
          "type": "boolean"
        },
        "port": {
          "type": "number",
          "minimum": 1,
          "maximum": 65535
        },
        "protocol": {
          "type": "string",
          "enum": [
            "mqtt",
            "mqtts",
            "ws",
            "wss"
          ]
        },
        "host": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "privateKey": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "certificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "caCertificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "disableSSLVerification": {
          "type": "boolean"
        },
        "protocolVersion": {
          "type": "string",
          "enum": [
            "3.1.1",
            "5"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "port",
        "protocol",
        "host"
      ]
    },
    "particleConfig": {
      "type": "object",
      "properties": {
        "accessToken": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "productSlugOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "orgSlugOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "deviceNameOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        }
      },
      "additionalProperties": false,
      "required": [
        "accessToken"
      ]
    },
    "sqsConfig": {
      "type": "object",
      "properties": {
        "accessKeyId": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "secretAccessKey": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "region": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "queueUrl": {
          "type": "string",
          "min": 1,
          "max": 256
        }
      },
      "additionalProperties": false,
      "required": [
        "queueUrl"
      ]
    },
    "websocketConfig": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "disableSSLVerification": {
          "type": "boolean"
        },
        "username": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "password": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "privateKey": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "certificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "caCertificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "headers": {
          "type": "array",
          "maxItems": 50,
          "items": {
            "type": "object",
            "properties": {
              "headerKey": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "headerValue": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "additionalProperties": false,
            "required": [
              "headerKey",
              "headerValue"
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "url"
      ]
    }
  },
  "additionalProperties": false
}

Integration Patch Example

{
  "topics": [
    "differentTopic"
  ]
}

Integration Post

Schema for the body of an Integration creation request

Integration Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "integrationType": {
      "type": "string",
      "enum": [
        "azureEventHub",
        "googlePubSub",
        "mqtt",
        "particle",
        "sqs",
        "websocket"
      ]
    },
    "enabled": {
      "type": "boolean"
    },
    "credentialName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "topics": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1024
      },
      "uniqueItems": true
    },
    "azureEventHubConfig": {
      "type": "object",
      "properties": {
        "hubName": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "hostName": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "consumerGroup": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "connectionString": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        }
      },
      "additionalProperties": false,
      "oneOf": [
        {
          "required": [
            "hubName",
            "consumerGroup",
            "connectionString"
          ]
        },
        {
          "required": [
            "hubName",
            "consumerGroup",
            "hostName"
          ]
        }
      ]
    },
    "googlePubSubConfig": {
      "type": "object",
      "properties": {
        "projectId": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1
        },
        "keyJson": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        }
      },
      "additionalProperties": false
    },
    "mqttConfig": {
      "type": "object",
      "properties": {
        "clientId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "username": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "password": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "clean": {
          "type": "boolean"
        },
        "port": {
          "type": "number",
          "minimum": 1,
          "maximum": 65535
        },
        "protocol": {
          "type": "string",
          "enum": [
            "mqtt",
            "mqtts",
            "ws",
            "wss"
          ]
        },
        "host": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "privateKey": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "certificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "caCertificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "disableSSLVerification": {
          "type": "boolean"
        },
        "protocolVersion": {
          "type": "string",
          "enum": [
            "3.1.1",
            "5"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "port",
        "protocol",
        "host"
      ]
    },
    "particleConfig": {
      "type": "object",
      "properties": {
        "accessToken": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "productSlugOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "orgSlugOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "deviceNameOrId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        }
      },
      "additionalProperties": false,
      "required": [
        "accessToken"
      ]
    },
    "sqsConfig": {
      "type": "object",
      "properties": {
        "accessKeyId": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "secretAccessKey": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "region": {
          "type": "string",
          "min": 4,
          "max": 128
        },
        "queueUrl": {
          "type": "string",
          "min": 1,
          "max": 256
        }
      },
      "additionalProperties": false,
      "required": [
        "queueUrl"
      ]
    },
    "websocketConfig": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "disableSSLVerification": {
          "type": "boolean"
        },
        "username": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "password": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        },
        "privateKey": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "certificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "caCertificate": {
          "type": "string",
          "maxLength": 32767,
          "minLength": 4
        },
        "headers": {
          "type": "array",
          "maxItems": 50,
          "items": {
            "type": "object",
            "properties": {
              "headerKey": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "headerValue": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "additionalProperties": false,
            "required": [
              "headerKey",
              "headerValue"
            ]
          }
        }
      },
      "additionalProperties": false,
      "required": [
        "url"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "name",
    "integrationType"
  ]
}

Integration Post Example

{
  "name": "Example Integrations",
  "integrationType": "mqtt",
  "topics": [
    "myTopic"
  ],
  "mqttConfig": {
    "clientId": "exampleClientId",
    "username": "exampleUsername",
    "password": "examplePassword",
    "port": 8883,
    "protocol": "mqtts",
    "host": "broker.example.com"
  }
}

Integrations

Schema for a collection of Integrations

Integrations Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Integration",
        "description": "Schema for a single Integration",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "integrationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "credentialName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "integrationType": {
            "type": "string",
            "enum": [
              "azureEventHub",
              "googlePubSub",
              "mqtt",
              "particle",
              "sqs",
              "websocket"
            ]
          },
          "enabled": {
            "type": "boolean"
          },
          "topics": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 1024
            },
            "uniqueItems": true
          },
          "azureEventHubConfig": {
            "type": "object",
            "properties": {
              "hubName": {
                "type": "string",
                "maxLength": 256,
                "minLength": 1
              },
              "hostName": {
                "type": "string",
                "maxLength": 256,
                "minLength": 1
              },
              "consumerGroup": {
                "type": "string",
                "maxLength": 256,
                "minLength": 1
              },
              "connectionString": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "additionalProperties": false,
            "oneOf": [
              {
                "required": [
                  "hubName",
                  "consumerGroup",
                  "connectionString"
                ]
              },
              {
                "required": [
                  "hubName",
                  "consumerGroup",
                  "hostName"
                ]
              }
            ]
          },
          "googlePubSubConfig": {
            "type": "object",
            "properties": {
              "projectId": {
                "type": "string",
                "maxLength": 255,
                "minLength": 1
              },
              "keyJson": {
                "type": "string",
                "maxLength": 32767,
                "minLength": 4
              }
            },
            "additionalProperties": false
          },
          "mqttConfig": {
            "type": "object",
            "properties": {
              "clientId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "username": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "password": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "clean": {
                "type": "boolean"
              },
              "port": {
                "type": "number",
                "minimum": 1,
                "maximum": 65535
              },
              "protocol": {
                "type": "string",
                "enum": [
                  "mqtt",
                  "mqtts",
                  "ws",
                  "wss"
                ]
              },
              "host": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "privateKey": {
                "type": "string",
                "maxLength": 32767,
                "minLength": 4
              },
              "certificate": {
                "type": "string",
                "maxLength": 32767,
                "minLength": 4
              },
              "caCertificate": {
                "type": "string",
                "maxLength": 32767,
                "minLength": 4
              },
              "disableSSLVerification": {
                "type": "boolean"
              },
              "protocolVersion": {
                "type": "string",
                "enum": [
                  "3.1.1",
                  "5"
                ]
              }
            },
            "additionalProperties": false,
            "required": [
              "port",
              "protocol",
              "host"
            ]
          },
          "particleConfig": {
            "type": "object",
            "properties": {
              "accessToken": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "productSlugOrId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "orgSlugOrId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "deviceNameOrId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "additionalProperties": false,
            "required": [
              "accessToken"
            ]
          },
          "sqsConfig": {
            "type": "object",
            "properties": {
              "accessKeyId": {
                "type": "string",
                "min": 4,
                "max": 128
              },
              "secretAccessKey": {
                "type": "string",
                "min": 4,
                "max": 128
              },
              "region": {
                "type": "string",
                "min": 4,
                "max": 128
              },
              "queueUrl": {
                "type": "string",
                "min": 1,
                "max": 256
              }
            },
            "additionalProperties": false,
            "required": [
              "queueUrl"
            ]
          },
          "websocketConfig": {
            "type": "object",
            "properties": {
              "url": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "disableSSLVerification": {
                "type": "boolean"
              },
              "username": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "password": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "privateKey": {
                "type": "string",
                "maxLength": 32767,
                "minLength": 4
              },
              "certificate": {
                "type": "string",
                "maxLength": 32767,
                "minLength": 4
              },
              "caCertificate": {
                "type": "string",
                "maxLength": 32767,
                "minLength": 4
              },
              "headers": {
                "type": "array",
                "maxItems": 50,
                "items": {
                  "type": "object",
                  "properties": {
                    "headerKey": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "headerValue": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    }
                  },
                  "additionalProperties": false,
                  "required": [
                    "headerKey",
                    "headerValue"
                  ]
                }
              }
            },
            "additionalProperties": false,
            "required": [
              "url"
            ]
          },
          "status": {
            "lastKeepAlive": {
              "type": [
                "number"
              ]
            },
            "nextAttempt": {
              "type": [
                "number"
              ]
            },
            "connectInfo": {
              "type": "object",
              "properties": {
                "ts": {
                  "type": [
                    "number",
                    "null"
                  ]
                }
              }
            },
            "disconnectInfo": {
              "type": "object",
              "properties": {
                "ts": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "error": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Integrations Example

{
  "items": [
    {
      "id": "58ec07f20c747f65243d0d76",
      "integrationId": "58ec07f20c747f65243d0d76",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "Example Integrations",
      "integrationType": "mqtt",
      "enabled": true,
      "topics": [
        "myTopic"
      ],
      "mqttConfig": {
        "clientId": "exampleClientId",
        "username": "exampleUsername",
        "password": "examplePassword",
        "port": 8883,
        "protocol": "mqtts",
        "host": "broker.example.com"
      },
      "status": {
        "lastKeepAlive": 1491863679994,
        "connectInfo": {
          "ts": 1490629589313
        },
        "disconnectInfo": {
          "ts": 1490629587190,
          "error": "Keepalive Timeout"
        }
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Job Enqueued API Result

Schema for the result of a job being queued

Job Enqueued API Result Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "jobQueued": {
      "type": "boolean",
      "enum": [
        true
      ]
    },
    "jobId": {
      "type": "string",
      "maxLength": 21
    },
    "success": {
      "type": "boolean",
      "enum": [
        true
      ]
    }
  }
}

Job Enqueued API Result Example

{
  "jobQueued": true,
  "jobId": "clnHvJbyVkOWAZwYAwLP4",
  "success": true
}

Last Value Data

Schema for the result of a last value query

Last Value Data Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "patternProperties": {
    "^[A-Fa-f\\d]{24}$": {
      "type": "object",
      "properties": {
        "time": {
          "type": "string",
          "format": "date-time"
        },
        "data": {
          "type": "object",
          "patternProperties": {
            "^[0-9a-zA-Z_-]{1,255}$": {
              "type": [
                "number",
                "string",
                "boolean"
              ]
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false,
      "required": [
        "data",
        "time"
      ]
    }
  },
  "additionalProperties": false
}

Last Value Data Example

{
  "575ecf887ae143cd83dc4aa2": {
    "time": "2016-06-13T04:00:00.000Z",
    "data": {
      "voltage": 12
    }
  },
  "575ef5c97ae143cd83dc4aac": {
    "time": "2016-06-12T08:30:00.000Z",
    "data": {
      "voltage": 19
    }
  }
}

Last Value Query

Schema for the body of a last value query request

Last Value Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "attribute": {
      "type": "string",
      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "deviceQuery": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "end": {
      "type": "number"
    }
  },
  "additionalProperties": false
}

Last Value Query Example

{
  "deviceIds": [
    "575ecf887ae143cd83dc4aa2",
    "575ef5c97ae143cd83dc4aac"
  ],
  "attribute": "voltage"
}

Me

Schema for information about the currently authenticated user

Me Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "userId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "passwordLastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "companyName": {
      "type": "string",
      "maxLength": 1024
    },
    "title": {
      "type": "string",
      "maxLength": 1024
    },
    "phoneNumber": {
      "type": "string",
      "maxLength": 1024
    },
    "location": {
      "type": "string",
      "maxLength": 1024
    },
    "url": {
      "type": "string",
      "maxLength": 1024
    },
    "tokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "emailVerified": {
      "type": "boolean"
    },
    "needsToVerifyEmail": {
      "type": "boolean"
    },
    "twoFactorAuthEnabled": {
      "type": "boolean"
    },
    "fullName": {
      "type": "string"
    },
    "githubName": {
      "type": "string"
    },
    "avatarUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    },
    "limits": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer"
        },
        "application": {
          "type": "integer"
        },
        "applicationcertificate": {
          "type": "integer"
        },
        "applicationcertificateauthority": {
          "type": "integer"
        },
        "applicationkey": {
          "type": "integer"
        },
        "credential": {
          "type": "integer"
        },
        "dashboard": {
          "type": "integer"
        },
        "datatable": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "devicerecipe": {
          "type": "integer"
        },
        "experiencedomain": {
          "type": "integer"
        },
        "experienceendpoint": {
          "type": "integer"
        },
        "experiencegroup": {
          "type": "integer"
        },
        "experienceslug": {
          "type": "integer"
        },
        "experienceuser": {
          "type": "integer"
        },
        "experienceversion": {
          "type": "integer"
        },
        "experienceview": {
          "type": "integer"
        },
        "file": {
          "type": "integer"
        },
        "flow": {
          "type": "integer"
        },
        "integration": {
          "type": "integer"
        },
        "notebook": {
          "type": "integer"
        },
        "resourcejob": {
          "type": "integer"
        },
        "webhook": {
          "type": "integer"
        },
        "dataTTL": {
          "type": "integer"
        },
        "payload": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "notebookMinutesPerRun": {
          "type": "integer"
        },
        "notebookMinutesPerMonth": {
          "type": "integer"
        },
        "notebookInParallel": {
          "type": "integer"
        },
        "experienceFlowSlots": {
          "type": "integer"
        },
        "applicationFlowSlots": {
          "type": "integer"
        },
        "systemInterval": {
          "type": "integer"
        }
      },
      "additionalProperties": false
    },
    "recentDashboards": {
      "title": "Recent Item List",
      "description": "Schema for an array of recent items",
      "type": "object",
      "properties": {
        "itemType": {
          "type": "string",
          "enum": [
            "application",
            "device",
            "flow",
            "dashboard",
            "organization"
          ]
        },
        "parentId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            }
          }
        }
      }
    },
    "recentApplications": {
      "title": "Recent Item List",
      "description": "Schema for an array of recent items",
      "type": "object",
      "properties": {
        "itemType": {
          "type": "string",
          "enum": [
            "application",
            "device",
            "flow",
            "dashboard",
            "organization"
          ]
        },
        "parentId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            }
          }
        }
      }
    },
    "recentOrganizations": {
      "title": "Recent Item List",
      "description": "Schema for an array of recent items",
      "type": "object",
      "properties": {
        "itemType": {
          "type": "string",
          "enum": [
            "application",
            "device",
            "flow",
            "dashboard",
            "organization"
          ]
        },
        "parentId": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 255
              }
            }
          }
        }
      }
    },
    "summary": {
      "type": "object",
      "properties": {
        "apiTokenCount": {
          "type": "integer"
        },
        "appCount": {
          "type": "integer"
        },
        "certificateCount": {
          "type": "integer"
        },
        "certificateAuthorityCount": {
          "type": "integer"
        },
        "credentialCount": {
          "type": "integer"
        },
        "dashCount": {
          "type": "integer"
        },
        "dataTableCount": {
          "type": "integer"
        },
        "deviceCount": {
          "type": "integer"
        },
        "deviceRecipeCount": {
          "type": "integer"
        },
        "eventCount": {
          "type": "integer"
        },
        "experienceDomainCount": {
          "type": "integer"
        },
        "experienceEndpointCount": {
          "type": "integer"
        },
        "experienceGroupCount": {
          "type": "integer"
        },
        "experienceSlugCount": {
          "type": "integer"
        },
        "experienceUserCount": {
          "type": "integer"
        },
        "experienceVersionCount": {
          "type": "integer"
        },
        "experienceViewCount": {
          "type": "integer"
        },
        "fileCount": {
          "type": "integer"
        },
        "flowCount": {
          "type": "integer"
        },
        "integrationCount": {
          "type": "integer"
        },
        "keyCount": {
          "type": "integer"
        },
        "notebookCount": {
          "type": "integer"
        },
        "resourceJobCount": {
          "type": "integer"
        },
        "webhookCount": {
          "type": "integer"
        },
        "orgCount": {
          "type": "integer"
        },
        "instanceCount": {
          "type": "integer"
        },
        "payloadCount": {
          "title": "Payload Stats",
          "description": "Schema for the result of a payload stats request",
          "type": "object",
          "properties": {
            "dataTable": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceCommand": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceConnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceDisconnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceState": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "endpoint": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "event": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "flowError": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "integration": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttIn": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttOut": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "notebook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "timer": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "virtualButton": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "webhook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "resourceJob": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            }
          }
        },
        "storageStats": {
          "type": "object",
          "properties": {
            "count": {
              "type": "integer"
            },
            "size": {
              "type": "integer"
            }
          }
        },
        "notebookStats": {
          "type": "object",
          "properties": {
            "awaitingCompletion": {
              "type": "integer"
            },
            "minutesThisPeriod": {
              "type": "integer"
            },
            "runsThisPeriod": {
              "type": "integer"
            }
          }
        }
      }
    },
    "currentPeriodStart": {
      "type": "string",
      "format": "date-time"
    },
    "currentPeriodEnd": {
      "type": "string",
      "format": "date-time"
    },
    "ssoLinked": {
      "type": "boolean"
    }
  }
}

Me Example

{
  "id": "575ed70c7ae143cd83dc4aa9",
  "userId": "575ed70c7ae143cd83dc4aa9",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "passwordLastUpdated": "2016-06-13T04:00:00.000Z",
  "email": "email@example.com",
  "firstName": "Example",
  "lastName": "Name",
  "companyName": "Example, Inc.",
  "url": "https://example.com",
  "emailVerified": true,
  "needsToVerifyEmail": false,
  "twoFactorAuthEnabled": false,
  "fullName": "Example Name",
  "summary": {
    "appCount": 8,
    "dashCount": 5,
    "orgCount": 2,
    "deviceCount": 12,
    "flowCount": 3,
    "webhookCount": 0,
    "keyCount": 2,
    "deviceRecipeCount": 0
  },
  "ssoLinked": false
}

Me Patch

Schema for the body of request to modify the current user

Me Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "companyName": {
      "type": "string",
      "maxLength": 1024
    },
    "title": {
      "type": "string",
      "maxLength": 1024
    },
    "phoneNumber": {
      "type": "string",
      "maxLength": 1024
    },
    "location": {
      "type": "string",
      "maxLength": 1024
    },
    "url": {
      "type": "string",
      "maxLength": 1024
    },
    "password": {
      "type": "string",
      "minLength": 12,
      "maxLength": 2048,
      "pattern": "^(?=.*[A-Z])(?=.*[^A-Za-z0-9])(?=.*[0-9])(?=.*[a-z]).{12,}$"
    },
    "tokenCutoff": {
      "type": "string",
      "format": "date-time"
    },
    "currentCredentials": {
      "type": "object",
      "properties": {
        "twoFactorCode": {
          "type": "string",
          "maxLength": 2048
        },
        "password": {
          "type": "string",
          "minLength": 8,
          "maxLength": 2048
        }
      },
      "required": [
        "password"
      ],
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

Me Patch Example

{
  "email": "email@example.com",
  "firstName": "Example",
  "lastName": "Name",
  "companyName": "Example, Inc.",
  "url": "https://example.com",
  "password": "My new password!!1"
}

MQTT Publish Body

Schema for the body an MQTT Publish Message request

MQTT Publish Body Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "minLength": 1,
      "maxLength": 230
    },
    "message": {
      "type": "string",
      "maxLength": 32767
    }
  },
  "required": [
    "topic",
    "message"
  ],
  "additionalProperties": false
}

MQTT Publish Body Example

{
  "topic": "an/mqtt/topic",
  "message": "The MQTT message!"
}

Multi Device Command

Schema for the body of a request to send a command to multiple Devices

Multi Device Command Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "time": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "object",
          "properties": {
            "$date": {
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "$date"
          ]
        }
      ]
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "payload": {},
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceQuery": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}

Multi Device Command Example

{
  "time": "2016-06-13T04:00:00.000Z",
  "name": "myCommand",
  "payload": [
    1,
    1,
    2,
    3,
    5
  ],
  "deviceTags": [
    {
      "key": "floor",
      "value": "8"
    }
  ]
}

Disable Multi-Factor Authentication

Schema for the body of a request to disable multi-factor authentication

Disable Multi-Factor Authentication Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "twoFactorCode": {
      "type": "string",
      "maxLength": 2048
    },
    "password": {
      "type": "string",
      "minLength": 8,
      "maxLength": 2048
    }
  },
  "required": [
    "password",
    "twoFactorCode"
  ],
  "additionalProperties": false
}

Disable Multi-Factor Authentication Example

{
  "twoFactorCode": "123123",
  "password": "this would be your password"
}

Enable Multi-Factor Authentication

Schema for the body of a request to enable multi-factor authentication

Enable Multi-Factor Authentication Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "twoFactorAuthKey": {
      "type": "string",
      "minLength": 52,
      "maxLength": 52
    },
    "password": {
      "type": "string",
      "minLength": 8,
      "maxLength": 2048
    },
    "twoFactorCode": {
      "type": "string",
      "maxLength": 2048
    }
  },
  "required": [
    "password",
    "twoFactorCode"
  ],
  "additionalProperties": false
}

Enable Multi-Factor Authentication Example

{
  "twoFactorAuthKey": "HBBGWJJVOVLXS4ZGNRTDOUKTMESFUR3BMRWVQND2HJYT44TOMVJA",
  "password": "this would be your password",
  "twoFactorCode": "012345"
}

Multi-Factor Authentication Info

Schema for information about multi-factor authentication

Multi-Factor Authentication Info Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "maxLength": 1024
    },
    "keyUri": {
      "type": "string",
      "maxLength": 1024
    }
  },
  "additionalProperties": false
}

Multi-Factor Authentication Info Example

{
  "key": "HBBGWJJVOVLXS4ZGNRTDOUKTMESFUR3BMRWVQND2HJYT44TOMVJA",
  "keyUri": "string"
}

Notebook

Schema for a single Notebook

Notebook Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "notebookId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "jupyterFileName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "jupyterFileUrl": {
      "type": "string"
    },
    "imageVersion": {
      "type": "string",
      "enum": [
        "v1",
        "v2",
        "v3"
      ]
    },
    "inputs": {
      "type": "array",
      "items": {
        "maxItems": 100,
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceData"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              },
              "attributes": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                }
              },
              "start": {
                "type": "number"
              },
              "end": {
                "type": "number"
              }
            },
            "required": [
              "inputType",
              "fileName",
              "start",
              "end"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceConnectionHistory"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              },
              "start": {
                "type": "number"
              },
              "end": {
                "type": "number"
              }
            },
            "required": [
              "inputType",
              "fileName",
              "start",
              "end"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceMetadata"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "dataTableId": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName",
              "dataTableId"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "eventData"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "externalUrl"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "sourceUrl": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "inputType",
              "fileName",
              "sourceUrl"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "outputs": {
      "type": "array",
      "items": {
        "maxItems": 100,
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "dataTableId": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "createMissingColumns": {
                "type": "boolean"
              },
              "truncateExistingTable": {
                "type": "boolean"
              }
            },
            "required": [
              "fileName",
              "outputType",
              "dataTableId"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "file"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "destinationFileNameTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "fileName",
              "outputType",
              "destinationFileNameTemplate"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "directory"
                ]
              },
              "directoryName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "directoryName",
              "outputType",
              "destinationDirectoryTemplate"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "executionResult"
                ]
              },
              "fileName": {
                "type": "string",
                "enum": [
                  "result.html",
                  "result.pdf",
                  "result.ipynb",
                  "result.error.log",
                  "result.log"
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "destinationFileNameTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "fileName",
              "outputType"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "temporaryUrl"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              }
            },
            "required": [
              "fileName",
              "outputType"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "stats": {
      "type": "object",
      "properties": {
        "minutesThisPeriod": {
          "type": "number"
        },
        "runsThisPeriod": {
          "type": "number"
        },
        "errorsThisPeriod": {
          "type": "number"
        }
      },
      "additionalProperties": false
    }
  }
}

Notebook Example

{
  "id": "5c782b8d4f3a8e51c1db42e4",
  "notebookId": "5c782b8d4f3a8e51c1db42e4",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "Example Notebook",
  "jupyterFileName": "myNotebook.ipynb",
  "jupyterFileUrl": "https:/storage.example.com/myNotebook.ipynb",
  "inputs": [
    {
      "fileName": "deviceDataWithAttributes",
      "inputType": "deviceData",
      "attributes": [
        "aNumber"
      ],
      "deviceIds": [
        "5c926894a111ea00063978ac"
      ],
      "deviceTags": [],
      "start": -10368000000,
      "end": 0
    },
    {
      "fileName": "dataTableWithQuery",
      "inputType": "dataTable",
      "dataTableId": "5c91584211126400069179c1",
      "queryJson": "{\n  \"$or\": [\n    {\n      \"createdAt\": {\n        \"$gt\": \"12345\"\n      }\n    }\n  ]\n}"
    },
    {
      "fileName": "deviceMetaData",
      "inputType": "deviceMetadata",
      "deviceIds": [
        "5c926894a111ea00063978ac"
      ],
      "deviceTags": [
        {
          "key": "aTag",
          "value": "and value"
        }
      ]
    },
    {
      "fileName": "deviceDataAllAttributes",
      "inputType": "deviceData",
      "attributes": [],
      "deviceIds": [],
      "deviceTags": [
        {
          "value": "and value"
        }
      ],
      "start": -43200000,
      "end": 0
    },
    {
      "fileName": "anExternalUrl",
      "inputType": "externalUrl",
      "sourceUrl": "https://example.com/external"
    }
  ],
  "outputs": [
    {
      "fileName": "result.html",
      "outputType": "executionResult",
      "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
      "destinationFileNameTemplate": "result.html"
    },
    {
      "fileName": "result.pdf",
      "outputType": "executionResult",
      "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
      "destinationFileNameTemplate": "result.pdf"
    },
    {
      "fileName": "result.ipynb",
      "outputType": "executionResult",
      "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
      "destinationFileNameTemplate": "result.ipynb"
    },
    {
      "fileName": "result.error.log",
      "outputType": "executionResult",
      "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
      "destinationFileNameTemplate": "result.error.log"
    },
    {
      "fileName": "result.log",
      "outputType": "executionResult",
      "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
      "destinationFileNameTemplate": "result.log"
    },
    {
      "fileName": "myDataTableFile.csv",
      "outputType": "dataTable",
      "dataTableId": "5c925132a111ea00063978a7",
      "createMissingColumns": true,
      "truncateExistingTable": false
    },
    {
      "fileName": "myDataTableFileTwo.csv",
      "outputType": "dataTable",
      "dataTableId": "5c91584211126400069179c1",
      "createMissingColumns": false,
      "truncateExistingTable": true
    },
    {
      "fileName": "myApplicationFile.png",
      "outputType": "file",
      "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
      "destinationFileNameTemplate": "myApplicationFile.png"
    },
    {
      "directoryName": "myApplicationFolder",
      "outputType": "directory",
      "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}"
    }
  ],
  "stats": {
    "minutesThisPeriod": 3,
    "runsThisPeriod": 2,
    "errorsThisPeriod": 1
  }
}

Notebook Data Export Options

Schema for the options for a Notebook data export request

Notebook Data Export Options Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "relativeTo": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "object",
          "properties": {
            "$date": {
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "$date"
          ]
        }
      ]
    },
    "templateContext": {
      "type": "string",
      "maxLength": 32767
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    }
  },
  "additionalProperties": false
}

Notebook Data Export Options Example

{
  "email": "user@example.com"
}

Notebook Execution Logs

Schema for a set of Notebook execution logs

Notebook Execution Logs Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "notebookExecutionId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "notebookId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "imageVersion": {
        "type": "string",
        "enum": [
          "v1",
          "v2",
          "v3"
        ]
      },
      "applicationId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "status": {
        "type": "string",
        "enum": [
          "queued",
          "inProgress",
          "completed",
          "errored",
          "timeout",
          "canceling",
          "canceled"
        ]
      },
      "executionRelativeTo": {
        "type": "string",
        "format": "date-time"
      },
      "maxAllowedRunMinutes": {
        "type": "number"
      },
      "sourceType": {
        "type": "string",
        "enum": [
          "flow",
          "user",
          "device",
          "apiToken",
          "notebook"
        ]
      },
      "sourceId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "runQueuedAt": {
        "type": "string",
        "format": "date-time"
      },
      "runStartedAt": {
        "type": "string",
        "format": "date-time"
      },
      "inputsCompletedAt": {
        "type": "string",
        "format": "date-time"
      },
      "notebookCompletedAt": {
        "type": "string",
        "format": "date-time"
      },
      "outputsCompletedAt": {
        "type": "string",
        "format": "date-time"
      },
      "templateContext": {
        "type": "string",
        "maxLength": 32767
      },
      "inputInfo": {
        "type": "object",
        "patternProperties": {
          ".*": {
            "type": "object",
            "properties": {
              "size": {
                "type": "number"
              },
              "url": {
                "type": "string"
              }
            }
          }
        }
      },
      "outputInfo": {
        "type": "object",
        "patternProperties": {
          ".*": {
            "type": "object",
            "properties": {
              "size": {
                "type": "number"
              },
              "url": {
                "type": "string"
              },
              "contentType": {
                "type": "string"
              }
            }
          }
        }
      },
      "executionErrors": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "message": {
              "type": "string"
            }
          }
        }
      }
    }
  }
}

Notebook Execution Logs Example

[
  {
    "id": "5c7d3f9cd32c87a49f04c260",
    "notebookExecutionId": "5c7d3f9cd32c87a49f04c260",
    "notebookId": "5c782b8d4f3a8e51c1db42e4",
    "applicationId": "575ec8687ae143cd83dc4a97",
    "runStartedAt": "2016-06-13T04:00:00.000Z",
    "runQueuedAt": "2016-06-13T03:59:00.000Z",
    "sourceId": "575ed70c7ae143cd83dc4aa9",
    "sourceType": "user",
    "status": "inProgress",
    "maxAllowedRunMinutes": 5,
    "inputInfo": {},
    "outputInfo": {},
    "executionErrors": []
  }
]

Notebook Execution Options

Schema for the options for a Notebook execution request

Notebook Execution Options Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "relativeTo": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "object",
          "properties": {
            "$date": {
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "$date"
          ]
        }
      ]
    },
    "templateContext": {
      "type": "string",
      "maxLength": 32767
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 1024
    }
  },
  "additionalProperties": false
}

Notebook Execution Options Example

{
  "relativeTo": 1570549199451
}

Notebook Minute Counts

Schema for the result of a notebook minute counts request

Notebook Minute Counts Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "start": {
      "type": "string",
      "format": "date-time"
    },
    "end": {
      "type": "string",
      "format": "date-time"
    },
    "counts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "minutes": {
            "type": "integer"
          },
          "completed": {
            "type": "integer"
          },
          "canceled": {
            "type": "integer"
          },
          "errored": {
            "type": "integer"
          },
          "timeout": {
            "type": "integer"
          }
        }
      }
    }
  }
}

Notebook Minute Counts Example

{
  "start": "1999-05-20T05:00:00.000Z",
  "end": "1999-06-20T04:59:59.999Z",
  "counts": [
    {
      "date": "1999-06-20T00:00:00.000Z",
      "minutes": 17,
      "completed": 4,
      "canceled": 0,
      "errored": 1,
      "timeout": 0
    }
  ]
}

Notebook Patch

Schema for the body of a Notebook modification request

Notebook Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "inputs": {
      "type": "array",
      "items": {
        "maxItems": 100,
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceData"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              },
              "attributes": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                }
              },
              "start": {
                "type": "number"
              },
              "end": {
                "type": "number"
              }
            },
            "required": [
              "inputType",
              "fileName",
              "start",
              "end"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceConnectionHistory"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              },
              "start": {
                "type": "number"
              },
              "end": {
                "type": "number"
              }
            },
            "required": [
              "inputType",
              "fileName",
              "start",
              "end"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceMetadata"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "dataTableId": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName",
              "dataTableId"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "eventData"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "externalUrl"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "sourceUrl": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "inputType",
              "fileName",
              "sourceUrl"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "outputs": {
      "type": "array",
      "items": {
        "maxItems": 100,
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "dataTableId": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "createMissingColumns": {
                "type": "boolean"
              },
              "truncateExistingTable": {
                "type": "boolean"
              }
            },
            "required": [
              "fileName",
              "outputType",
              "dataTableId"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "file"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "destinationFileNameTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "fileName",
              "outputType",
              "destinationFileNameTemplate"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "directory"
                ]
              },
              "directoryName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "directoryName",
              "outputType",
              "destinationDirectoryTemplate"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "executionResult"
                ]
              },
              "fileName": {
                "type": "string",
                "enum": [
                  "result.html",
                  "result.pdf",
                  "result.ipynb",
                  "result.error.log",
                  "result.log"
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "destinationFileNameTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "fileName",
              "outputType"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "temporaryUrl"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              }
            },
            "required": [
              "fileName",
              "outputType"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "imageVersion": {
      "type": "string",
      "enum": [
        "v1",
        "v2",
        "v3"
      ]
    }
  },
  "additionalProperties": false
}

Notebook Patch Example

{
  "name": "New Notebook Name"
}

Notebook Post

Schema for the body of an Notebook creation request

Notebook Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "imageVersion": {
      "type": "string",
      "enum": [
        "v1",
        "v2",
        "v3"
      ]
    },
    "inputs": {
      "type": "array",
      "items": {
        "maxItems": 100,
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceData"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              },
              "attributes": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "string",
                  "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                }
              },
              "start": {
                "type": "number"
              },
              "end": {
                "type": "number"
              }
            },
            "required": [
              "inputType",
              "fileName",
              "start",
              "end"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceConnectionHistory"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              },
              "start": {
                "type": "number"
              },
              "end": {
                "type": "number"
              }
            },
            "required": [
              "inputType",
              "fileName",
              "start",
              "end"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "deviceMetadata"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "deviceTags": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "value": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              },
              "deviceIds": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "string",
                      "minLength": 4,
                      "maxLength": 255,
                      "pattern": ".*{{.+}}.*"
                    }
                  ]
                }
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "dataTableId": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName",
              "dataTableId"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "eventData"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "queryJson": {
                "type": "string",
                "maxLength": 8192
              }
            },
            "required": [
              "inputType",
              "fileName"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "inputType": {
                "type": "string",
                "enum": [
                  "externalUrl"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "sourceUrl": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "inputType",
              "fileName",
              "sourceUrl"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "outputs": {
      "type": "array",
      "items": {
        "maxItems": 100,
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "dataTable"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "dataTableId": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "createMissingColumns": {
                "type": "boolean"
              },
              "truncateExistingTable": {
                "type": "boolean"
              }
            },
            "required": [
              "fileName",
              "outputType",
              "dataTableId"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "file"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "destinationFileNameTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "fileName",
              "outputType",
              "destinationFileNameTemplate"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "directory"
                ]
              },
              "directoryName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "directoryName",
              "outputType",
              "destinationDirectoryTemplate"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "executionResult"
                ]
              },
              "fileName": {
                "type": "string",
                "enum": [
                  "result.html",
                  "result.pdf",
                  "result.ipynb",
                  "result.error.log",
                  "result.log"
                ]
              },
              "destinationDirectoryTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              },
              "destinationFileNameTemplate": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1024
              }
            },
            "required": [
              "fileName",
              "outputType"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outputType": {
                "type": "string",
                "enum": [
                  "temporaryUrl"
                ]
              },
              "fileName": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                  },
                  {
                    "type": "string",
                    "minLength": 4,
                    "maxLength": 255,
                    "pattern": ".*{{.+}}.*"
                  }
                ]
              }
            },
            "required": [
              "fileName",
              "outputType"
            ],
            "additionalProperties": false
          }
        ]
      }
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Notebook Post Example

{
  "name": "Example Notebook"
}

Notebooks

Schema for a collection of Notebooks

Notebooks Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Notebook",
        "description": "Schema for a single Notebook",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "notebookId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "jupyterFileName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "jupyterFileUrl": {
            "type": "string"
          },
          "imageVersion": {
            "type": "string",
            "enum": [
              "v1",
              "v2",
              "v3"
            ]
          },
          "inputs": {
            "type": "array",
            "items": {
              "maxItems": 100,
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "inputType": {
                      "type": "string",
                      "enum": [
                        "deviceData"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "deviceTags": {
                      "type": "array",
                      "maxItems": 100,
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "oneOf": [
                              {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              },
                              {
                                "type": "string",
                                "minLength": 4,
                                "maxLength": 255,
                                "pattern": ".*{{.+}}.*"
                              }
                            ]
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "deviceIds": {
                      "type": "array",
                      "maxItems": 100,
                      "items": {
                        "oneOf": [
                          {
                            "type": "string",
                            "pattern": "^[A-Fa-f\\d]{24}$"
                          },
                          {
                            "type": "string",
                            "minLength": 4,
                            "maxLength": 255,
                            "pattern": ".*{{.+}}.*"
                          }
                        ]
                      }
                    },
                    "queryJson": {
                      "type": "string",
                      "maxLength": 8192
                    },
                    "attributes": {
                      "type": "array",
                      "maxItems": 100,
                      "items": {
                        "type": "string",
                        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                      }
                    },
                    "start": {
                      "type": "number"
                    },
                    "end": {
                      "type": "number"
                    }
                  },
                  "required": [
                    "inputType",
                    "fileName",
                    "start",
                    "end"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "inputType": {
                      "type": "string",
                      "enum": [
                        "deviceConnectionHistory"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "deviceTags": {
                      "type": "array",
                      "maxItems": 100,
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "oneOf": [
                              {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              },
                              {
                                "type": "string",
                                "minLength": 4,
                                "maxLength": 255,
                                "pattern": ".*{{.+}}.*"
                              }
                            ]
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "deviceIds": {
                      "type": "array",
                      "maxItems": 100,
                      "items": {
                        "oneOf": [
                          {
                            "type": "string",
                            "pattern": "^[A-Fa-f\\d]{24}$"
                          },
                          {
                            "type": "string",
                            "minLength": 4,
                            "maxLength": 255,
                            "pattern": ".*{{.+}}.*"
                          }
                        ]
                      }
                    },
                    "queryJson": {
                      "type": "string",
                      "maxLength": 8192
                    },
                    "start": {
                      "type": "number"
                    },
                    "end": {
                      "type": "number"
                    }
                  },
                  "required": [
                    "inputType",
                    "fileName",
                    "start",
                    "end"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "inputType": {
                      "type": "string",
                      "enum": [
                        "deviceMetadata"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "deviceTags": {
                      "type": "array",
                      "maxItems": 100,
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "oneOf": [
                              {
                                "type": "string",
                                "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                              },
                              {
                                "type": "string",
                                "minLength": 4,
                                "maxLength": 255,
                                "pattern": ".*{{.+}}.*"
                              }
                            ]
                          },
                          "value": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 255
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "deviceIds": {
                      "type": "array",
                      "maxItems": 100,
                      "items": {
                        "oneOf": [
                          {
                            "type": "string",
                            "pattern": "^[A-Fa-f\\d]{24}$"
                          },
                          {
                            "type": "string",
                            "minLength": 4,
                            "maxLength": 255,
                            "pattern": ".*{{.+}}.*"
                          }
                        ]
                      }
                    },
                    "queryJson": {
                      "type": "string",
                      "maxLength": 8192
                    }
                  },
                  "required": [
                    "inputType",
                    "fileName"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "inputType": {
                      "type": "string",
                      "enum": [
                        "dataTable"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "dataTableId": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[A-Fa-f\\d]{24}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "queryJson": {
                      "type": "string",
                      "maxLength": 8192
                    }
                  },
                  "required": [
                    "inputType",
                    "fileName",
                    "dataTableId"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "inputType": {
                      "type": "string",
                      "enum": [
                        "eventData"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "queryJson": {
                      "type": "string",
                      "maxLength": 8192
                    }
                  },
                  "required": [
                    "inputType",
                    "fileName"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "inputType": {
                      "type": "string",
                      "enum": [
                        "externalUrl"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "sourceUrl": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    }
                  },
                  "required": [
                    "inputType",
                    "fileName",
                    "sourceUrl"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "outputs": {
            "type": "array",
            "items": {
              "maxItems": 100,
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "outputType": {
                      "type": "string",
                      "enum": [
                        "dataTable"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "dataTableId": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^[A-Fa-f\\d]{24}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "createMissingColumns": {
                      "type": "boolean"
                    },
                    "truncateExistingTable": {
                      "type": "boolean"
                    }
                  },
                  "required": [
                    "fileName",
                    "outputType",
                    "dataTableId"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "outputType": {
                      "type": "string",
                      "enum": [
                        "file"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "destinationDirectoryTemplate": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "destinationFileNameTemplate": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    }
                  },
                  "required": [
                    "fileName",
                    "outputType",
                    "destinationFileNameTemplate"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "outputType": {
                      "type": "string",
                      "enum": [
                        "directory"
                      ]
                    },
                    "directoryName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    },
                    "destinationDirectoryTemplate": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    }
                  },
                  "required": [
                    "directoryName",
                    "outputType",
                    "destinationDirectoryTemplate"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "outputType": {
                      "type": "string",
                      "enum": [
                        "executionResult"
                      ]
                    },
                    "fileName": {
                      "type": "string",
                      "enum": [
                        "result.html",
                        "result.pdf",
                        "result.ipynb",
                        "result.error.log",
                        "result.log"
                      ]
                    },
                    "destinationDirectoryTemplate": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "destinationFileNameTemplate": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    }
                  },
                  "required": [
                    "fileName",
                    "outputType"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "outputType": {
                      "type": "string",
                      "enum": [
                        "temporaryUrl"
                      ]
                    },
                    "fileName": {
                      "oneOf": [
                        {
                          "type": "string",
                          "pattern": "^(?!\\.{1,2}$)[0-9a-zA-Z_.-]{1,255}$"
                        },
                        {
                          "type": "string",
                          "minLength": 4,
                          "maxLength": 255,
                          "pattern": ".*{{.+}}.*"
                        }
                      ]
                    }
                  },
                  "required": [
                    "fileName",
                    "outputType"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "stats": {
            "type": "object",
            "properties": {
              "minutesThisPeriod": {
                "type": "number"
              },
              "runsThisPeriod": {
                "type": "number"
              },
              "errorsThisPeriod": {
                "type": "number"
              }
            },
            "additionalProperties": false
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Notebooks Example

{
  "items": [
    {
      "id": "5c782b8d4f3a8e51c1db42e4",
      "notebookId": "5c782b8d4f3a8e51c1db42e4",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "Example Notebook",
      "jupyterFileName": "myNotebook.ipynb",
      "jupyterFileUrl": "https:/storage.example.com/myNotebook.ipynb",
      "inputs": [
        {
          "fileName": "deviceDataWithAttributes",
          "inputType": "deviceData",
          "attributes": [
            "aNumber"
          ],
          "deviceIds": [
            "5c926894a111ea00063978ac"
          ],
          "deviceTags": [],
          "start": -10368000000,
          "end": 0
        },
        {
          "fileName": "dataTableWithQuery",
          "inputType": "dataTable",
          "dataTableId": "5c91584211126400069179c1",
          "queryJson": "{\n  \"$or\": [\n    {\n      \"createdAt\": {\n        \"$gt\": \"12345\"\n      }\n    }\n  ]\n}"
        },
        {
          "fileName": "deviceMetaData",
          "inputType": "deviceMetadata",
          "deviceIds": [
            "5c926894a111ea00063978ac"
          ],
          "deviceTags": [
            {
              "key": "aTag",
              "value": "and value"
            }
          ]
        },
        {
          "fileName": "deviceDataAllAttributes",
          "inputType": "deviceData",
          "attributes": [],
          "deviceIds": [],
          "deviceTags": [
            {
              "value": "and value"
            }
          ],
          "start": -43200000,
          "end": 0
        },
        {
          "fileName": "anExternalUrl",
          "inputType": "externalUrl",
          "sourceUrl": "https://example.com/external"
        }
      ],
      "outputs": [
        {
          "fileName": "result.html",
          "outputType": "executionResult",
          "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
          "destinationFileNameTemplate": "result.html"
        },
        {
          "fileName": "result.pdf",
          "outputType": "executionResult",
          "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
          "destinationFileNameTemplate": "result.pdf"
        },
        {
          "fileName": "result.ipynb",
          "outputType": "executionResult",
          "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
          "destinationFileNameTemplate": "result.ipynb"
        },
        {
          "fileName": "result.error.log",
          "outputType": "executionResult",
          "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
          "destinationFileNameTemplate": "result.error.log"
        },
        {
          "fileName": "result.log",
          "outputType": "executionResult",
          "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
          "destinationFileNameTemplate": "result.log"
        },
        {
          "fileName": "myDataTableFile.csv",
          "outputType": "dataTable",
          "dataTableId": "5c925132a111ea00063978a7",
          "createMissingColumns": true,
          "truncateExistingTable": false
        },
        {
          "fileName": "myDataTableFileTwo.csv",
          "outputType": "dataTable",
          "dataTableId": "5c91584211126400069179c1",
          "createMissingColumns": false,
          "truncateExistingTable": true
        },
        {
          "fileName": "myApplicationFile.png",
          "outputType": "file",
          "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}",
          "destinationFileNameTemplate": "myApplicationFile.png"
        },
        {
          "directoryName": "myApplicationFolder",
          "outputType": "directory",
          "destinationDirectoryTemplate": "/{{notebook.name}}/{{execution.runStartedAt}}"
        }
      ],
      "stats": {
        "minutesThisPeriod": 3,
        "runsThisPeriod": 2,
        "errorsThisPeriod": 1
      }
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Organization

Schema for a single Organization

Organization Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "members": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "firstName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1024
          },
          "lastName": {
            "type": "string",
            "maxLength": 1024
          },
          "email": {
            "type": "string",
            "format": "email",
            "maxLength": 1024
          },
          "avatarUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 1024
          },
          "role": {
            "type": "string",
            "enum": [
              "admin",
              "edit",
              "collaborate",
              "view",
              "none"
            ]
          },
          "applicationRoles": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "resourceId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "role": {
                  "type": "string",
                  "enum": [
                    "collaborate",
                    "view",
                    "none"
                  ]
                }
              },
              "required": [
                "resourceId",
                "role"
              ],
              "additionalProperties": false
            },
            "maxItems": 1000
          },
          "dashboardRoles": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "resourceId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "role": {
                  "type": "string",
                  "enum": [
                    "collaborate",
                    "view",
                    "none"
                  ]
                }
              },
              "required": [
                "resourceId",
                "role"
              ],
              "additionalProperties": false
            },
            "maxItems": 1000
          },
          "twoFactorAuthEnabled": {
            "type": "boolean"
          },
          "ssoLinked": {
            "type": "boolean"
          }
        }
      }
    },
    "limits": {
      "type": "object",
      "properties": {
        "apitoken": {
          "type": "integer",
          "minimum": 0
        },
        "application": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificate": {
          "type": "integer",
          "minimum": 0
        },
        "applicationcertificateauthority": {
          "type": "integer",
          "minimum": 0
        },
        "applicationkey": {
          "type": "integer",
          "minimum": 0
        },
        "credential": {
          "type": "integer",
          "minimum": 0
        },
        "dashboard": {
          "type": "integer",
          "minimum": 0
        },
        "datatable": {
          "type": "integer",
          "minimum": 0
        },
        "device": {
          "type": "integer",
          "minimum": 0
        },
        "devicerecipe": {
          "type": "integer",
          "minimum": 0
        },
        "experiencedomain": {
          "type": "integer",
          "minimum": 0
        },
        "experienceendpoint": {
          "type": "integer",
          "minimum": 0
        },
        "experiencegroup": {
          "type": "integer",
          "minimum": 0
        },
        "experienceslug": {
          "type": "integer",
          "minimum": 0
        },
        "experienceuser": {
          "type": "integer",
          "minimum": 0
        },
        "experienceversion": {
          "type": "integer",
          "minimum": 0
        },
        "experienceview": {
          "type": "integer",
          "minimum": 0
        },
        "file": {
          "type": "integer",
          "minimum": 0
        },
        "flow": {
          "type": "integer",
          "minimum": 0
        },
        "integration": {
          "type": "integer",
          "minimum": 0
        },
        "notebook": {
          "type": "integer",
          "minimum": 0
        },
        "resourcejob": {
          "type": "integer",
          "minimum": 0
        },
        "webhook": {
          "type": "integer",
          "minimum": 0
        },
        "dataTTL": {
          "type": "integer",
          "minimum": 86400
        },
        "member": {
          "type": "integer",
          "minimum": 0
        },
        "payload": {
          "type": "integer",
          "minimum": 0
        },
        "storage": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerRun": {
          "type": "integer",
          "minimum": 0
        },
        "notebookMinutesPerMonth": {
          "type": "integer",
          "minimum": 0
        },
        "notebookInParallel": {
          "type": "integer",
          "minimum": 0
        },
        "experienceFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "applicationFlowSlots": {
          "type": "integer",
          "minimum": 0
        },
        "systemInterval": {
          "type": "integer",
          "minimum": 5,
          "maximum": 3600
        }
      },
      "additionalProperties": false
    },
    "summary": {
      "type": "object",
      "properties": {
        "apiTokenCount": {
          "type": "integer"
        },
        "appCount": {
          "type": "integer"
        },
        "certificateCount": {
          "type": "integer"
        },
        "certificateAuthorityCount": {
          "type": "integer"
        },
        "credentialCount": {
          "type": "integer"
        },
        "dashCount": {
          "type": "integer"
        },
        "dataTableCount": {
          "type": "integer"
        },
        "deviceCount": {
          "type": "integer"
        },
        "deviceRecipeCount": {
          "type": "integer"
        },
        "eventCount": {
          "type": "integer"
        },
        "experienceDomainCount": {
          "type": "integer"
        },
        "experienceEndpointCount": {
          "type": "integer"
        },
        "experienceGroupCount": {
          "type": "integer"
        },
        "experienceSlugCount": {
          "type": "integer"
        },
        "experienceUserCount": {
          "type": "integer"
        },
        "experienceVersionCount": {
          "type": "integer"
        },
        "experienceViewCount": {
          "type": "integer"
        },
        "fileCount": {
          "type": "integer"
        },
        "flowCount": {
          "type": "integer"
        },
        "integrationCount": {
          "type": "integer"
        },
        "keyCount": {
          "type": "integer"
        },
        "notebookCount": {
          "type": "integer"
        },
        "resourceJobCount": {
          "type": "integer"
        },
        "webhookCount": {
          "type": "integer"
        },
        "memberCount": {
          "type": "integer"
        },
        "pendingInviteCount": {
          "type": "integer"
        },
        "payloadCount": {
          "title": "Payload Stats",
          "description": "Schema for the result of a payload stats request",
          "type": "object",
          "properties": {
            "dataTable": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceCommand": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceConnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceDisconnect": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "deviceState": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "endpoint": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "event": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "flowError": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "integration": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttIn": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "mqttOut": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "notebook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "timer": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "virtualButton": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "webhook": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            },
            "resourceJob": {
              "type": "object",
              "patternProperties": {
                ".*": {
                  "type": "number"
                }
              }
            }
          }
        },
        "storageStats": {
          "type": "object",
          "properties": {
            "count": {
              "type": "integer"
            },
            "size": {
              "type": "integer"
            }
          }
        },
        "notebookStats": {
          "type": "object",
          "properties": {
            "awaitingCompletion": {
              "type": "integer"
            },
            "minutesThisPeriod": {
              "type": "integer"
            },
            "runsThisPeriod": {
              "type": "integer"
            }
          }
        }
      }
    },
    "planId": {
      "type": "string",
      "maxLength": 1024
    },
    "billingEmail": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "subscriptionStatus": {
      "type": "string",
      "enum": [
        "trialing",
        "active",
        "past_due",
        "canceled",
        "unpaid"
      ]
    },
    "currentPeriodStart": {
      "type": "string",
      "format": "date-time"
    },
    "currentPeriodEnd": {
      "type": "string",
      "format": "date-time"
    },
    "isEnterprise": {
      "type": "boolean"
    },
    "iconColor": {
      "type": "string",
      "maxLength": 64
    },
    "whitelistedEmailDomains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 45,
        "minLength": 3
      }
    },
    "disabledAt": {
      "oneOf": [
        {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        {
          "type": "string",
          "format": "date-time"
        }
      ]
    },
    "isReadOnly": {
      "type": "boolean"
    },
    "mfaMode": {
      "type": "string",
      "enum": [
        "notRequired",
        "adminRequired",
        "required"
      ]
    },
    "banner": {
      "type": "object",
      "properties": {
        "message": {
          "type": "string",
          "maxLength": 2048
        },
        "level": {
          "type": "string",
          "enum": [
            "info",
            "warning",
            "critical"
          ]
        }
      },
      "additionalProperties": false
    }
  }
}

Organization Example

{
  "id": "575ed6e87ae143cd83dc4aa8",
  "orgId": "575ed6e87ae143cd83dc4aa8",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "My Organization",
  "description": "My organization description",
  "members": [
    {
      "userId": "575ed70c7ae143cd83dc4aa9",
      "firstName": "Example",
      "lastName": "Name",
      "email": "email@example.com",
      "role": "admin"
    },
    {
      "userId": "575ef90f7ae143cd83dc4aad",
      "firstName": "Other View",
      "lastName": "Only User",
      "email": "viewer@example.com",
      "role": "view"
    }
  ],
  "summary": {
    "appCount": 2,
    "dashCount": 1,
    "deviceCount": 12,
    "flowCount": 3,
    "webhookCount": 0,
    "keyCount": 2,
    "deviceRecipeCount": 0
  }
}

Organization Invitation

Schema for a pending invitation to an Organization

Organization Invitation Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "edit",
        "collaborate",
        "view",
        "none"
      ]
    },
    "applicationRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    },
    "dashboardRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    },
    "inviteDate": {
      "type": "string",
      "format": "date-time"
    },
    "ttl": {
      "type": "number"
    },
    "hasExpired": {
      "type": "boolean"
    },
    "disallowTransfer": {
      "type": "boolean"
    }
  }
}

Organization Invitation Example

{
  "id": "575ed71e7ae143cd83dc4aaa",
  "email": "invitedUser@example.com",
  "role": "edit",
  "applicationRoles": [
    {
      "resourceId": "575ec8687ae143cd83dc4a97",
      "role": "view"
    }
  ],
  "dashboardRoles": [
    {
      "resourceId": "575ece2b7ae143cd83dc4a9b",
      "role": "none"
    }
  ],
  "inviteDate": "2016-05-13T04:00:00.000Z",
  "ttl": 4233600000,
  "hasExpired": true,
  "disallowTransfer": false
}

Organization Invitation Action

Schema for the body of a request to accept or reject an invitation

Organization Invitation Action Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "token": {
      "type": "string",
      "minLength": 1
    },
    "accept": {
      "type": "boolean"
    }
  },
  "additionalProperties": false,
  "required": [
    "email",
    "token",
    "accept"
  ]
}

Organization Invitation Action Example

{
  "email": "invitedUser@example.com",
  "token": "the_invitation_token",
  "accept": true
}

Organization Invitation Action For User

Schema for the body of a request to accept or reject an invitation

Organization Invitation Action For User Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "accept",
        "dismiss",
        "reject"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "action"
  ]
}

Organization Invitation Action For User Example

{
  "action": "accept"
}

Instance Organization Invitations

Schema for an collection of pending invitations to an Instance Organization

Instance Organization Invitations Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Organization Invitation",
        "description": "Schema for a pending invitation to an Organization",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "email": {
            "type": "string",
            "format": "email",
            "maxLength": 1024
          },
          "role": {
            "type": "string",
            "enum": [
              "admin",
              "edit",
              "collaborate",
              "view",
              "none"
            ]
          },
          "applicationRoles": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "resourceId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "role": {
                  "type": "string",
                  "enum": [
                    "collaborate",
                    "view",
                    "none"
                  ]
                }
              },
              "required": [
                "resourceId",
                "role"
              ],
              "additionalProperties": false
            },
            "maxItems": 1000
          },
          "dashboardRoles": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "resourceId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "role": {
                  "type": "string",
                  "enum": [
                    "collaborate",
                    "view",
                    "none"
                  ]
                }
              },
              "required": [
                "resourceId",
                "role"
              ],
              "additionalProperties": false
            },
            "maxItems": 1000
          },
          "inviteDate": {
            "type": "string",
            "format": "date-time"
          },
          "ttl": {
            "type": "number"
          },
          "hasExpired": {
            "type": "boolean"
          },
          "disallowTransfer": {
            "type": "boolean"
          }
        }
      }
    },
    "instanceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "count": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Instance Organization Invitations Example

{
  "items": [
    {
      "id": "575ed71e7ae143cd83dc4aaa",
      "email": "invitedUser@example.com",
      "role": "edit",
      "applicationRoles": [
        {
          "resourceId": "575ec8687ae143cd83dc4a97",
          "role": "view"
        }
      ],
      "dashboardRoles": [
        {
          "resourceId": "575ece2b7ae143cd83dc4a9b",
          "role": "none"
        }
      ],
      "inviteDate": "2016-05-13T04:00:00.000Z",
      "ttl": 4233600000,
      "hasExpired": true,
      "disallowTransfer": false
    }
  ],
  "count": 8,
  "sortField": "role",
  "sortDirection": "asc"
}

Organization Invitation Information

Schema for information about an invitation

Organization Invitation Information Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "orgName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "edit",
        "collaborate",
        "view",
        "none"
      ]
    },
    "inviteDate": {
      "type": "string",
      "format": "date-time"
    },
    "ttl": {
      "type": "number"
    },
    "disallowTransfer": {
      "type": "boolean"
    }
  }
}

Organization Invitation Information Example

{
  "orgName": "My Organization",
  "email": "invitedUser@example.com",
  "role": "edit",
  "inviteDate": "2016-05-13T04:00:00.000Z",
  "ttl": 4233600000,
  "disallowTransfer": true
}

Organization Invitation Post

Schema for the body of a request to send an invitation

Organization Invitation Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "edit",
        "collaborate",
        "view",
        "none"
      ]
    },
    "applicationRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    },
    "dashboardRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    },
    "disallowTransfer": {
      "type": "boolean"
    }
  },
  "additionalProperties": false,
  "required": [
    "email",
    "role"
  ]
}

Organization Invitation Post Example

{
  "email": "invitedUser@example.com",
  "role": "edit"
}

Organization Invitation Result

Schema for the result of accepting/rejecting an invitation

Organization Invitation Result Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "accepted": {
      "type": "boolean"
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Organization Invitation Result Example

{
  "accepted": true,
  "orgId": "575ed6e87ae143cd83dc4aa8"
}

Organization Invitation Result For User

Schema for the result of accepting/rejecting an invitation

Organization Invitation Result For User Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "result": {
      "type": "string",
      "enum": [
        "accepted",
        "rejected",
        "dismissed"
      ]
    },
    "orgId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Organization Invitation Result For User Example

{
  "result": "rejected",
  "orgId": "575ed6e87ae143cd83dc4aa8"
}

Organization Invitation Information For User

Schema for information about an invitation

Organization Invitation Information For User Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "orgName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "edit",
        "collaborate",
        "view",
        "none"
      ]
    },
    "requiresMFA": {
      "type": "boolean"
    },
    "inviteDate": {
      "type": "string",
      "format": "date-time"
    },
    "ttl": {
      "type": "number"
    },
    "expired": {
      "type": "boolean"
    },
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "invitedBy": {
      "type": "object",
      "properties": {
        "fullName": {
          "type": "string"
        },
        "email": {
          "type": "string",
          "format": "email",
          "maxLength": 1024
        }
      }
    }
  }
}

Organization Invitation Information For User Example

{
  "orgName": "My org",
  "role": "edit",
  "requiresMFA": false,
  "inviteDate": "2023-09-06T16:41:15.049Z",
  "ttl": 4233600000,
  "expired": true
}

Organization Invitations

Schema for an array of pending invitations to an Organization

Organization Invitations Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "title": "Organization Invitation",
      "description": "Schema for a pending invitation to an Organization",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "email": {
          "type": "string",
          "format": "email",
          "maxLength": 1024
        },
        "role": {
          "type": "string",
          "enum": [
            "admin",
            "edit",
            "collaborate",
            "view",
            "none"
          ]
        },
        "applicationRoles": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resourceId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "role": {
                "type": "string",
                "enum": [
                  "collaborate",
                  "view",
                  "none"
                ]
              }
            },
            "required": [
              "resourceId",
              "role"
            ],
            "additionalProperties": false
          },
          "maxItems": 1000
        },
        "dashboardRoles": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resourceId": {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              "role": {
                "type": "string",
                "enum": [
                  "collaborate",
                  "view",
                  "none"
                ]
              }
            },
            "required": [
              "resourceId",
              "role"
            ],
            "additionalProperties": false
          },
          "maxItems": 1000
        },
        "inviteDate": {
          "type": "string",
          "format": "date-time"
        },
        "ttl": {
          "type": "number"
        },
        "hasExpired": {
          "type": "boolean"
        },
        "disallowTransfer": {
          "type": "boolean"
        }
      }
    }
  }
}

Organization Invitations Example

[
  {
    "id": "575ed71e7ae143cd83dc4aaa",
    "email": "invitedUser@example.com",
    "role": "edit",
    "applicationRoles": [
      {
        "resourceId": "575ec8687ae143cd83dc4a97",
        "role": "view"
      }
    ],
    "dashboardRoles": [
      {
        "resourceId": "575ece2b7ae143cd83dc4a9b",
        "role": "none"
      }
    ],
    "inviteDate": "2016-05-13T04:00:00.000Z",
    "ttl": 4233600000,
    "hasExpired": true,
    "disallowTransfer": false
  }
]

User Organization Invitations

Schema for an array of pending organization invitations for a user

User Organization Invitations Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "title": "Organization Invitation Information For User",
      "description": "Schema for information about an invitation",
      "type": "object",
      "properties": {
        "orgName": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "role": {
          "type": "string",
          "enum": [
            "admin",
            "edit",
            "collaborate",
            "view",
            "none"
          ]
        },
        "requiresMFA": {
          "type": "boolean"
        },
        "inviteDate": {
          "type": "string",
          "format": "date-time"
        },
        "ttl": {
          "type": "number"
        },
        "expired": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "invitedBy": {
          "type": "object",
          "properties": {
            "fullName": {
              "type": "string"
            },
            "email": {
              "type": "string",
              "format": "email",
              "maxLength": 1024
            }
          }
        }
      }
    }
  }
}

User Organization Invitations Example

[
  {
    "orgName": "My org",
    "role": "edit",
    "requiresMFA": false,
    "inviteDate": "2023-09-06T16:41:15.049Z",
    "ttl": 4233600000,
    "expired": true
  },
  {
    "orgName": "Some Other Org",
    "role": "view",
    "requiresMFA": true,
    "inviteDate": "2023-09-10T14:47:13.023Z",
    "ttl": 4233600000,
    "expired": false
  }
]

Organization Member Patch

Schema for the body of a request to modify an Organization member

Organization Member Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "userId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "edit",
        "collaborate",
        "view",
        "none"
      ]
    },
    "applicationRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    },
    "dashboardRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    }
  },
  "additionalProperties": false,
  "required": [
    "userId"
  ]
}

Organization Member Patch Example

{
  "userId": "575ef90f7ae143cd83dc4aad",
  "role": "view"
}

Organization Patch

Schema for the body of an Organization modification request

Organization Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "planId": {
      "type": "string",
      "maxLength": 1024
    },
    "billingEmail": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "cardToken": {
      "type": "string",
      "maxLength": 1024
    },
    "iconColor": {
      "type": "string",
      "maxLength": 64
    },
    "mfaMode": {
      "type": "string",
      "enum": [
        "notRequired",
        "adminRequired",
        "required"
      ]
    }
  },
  "additionalProperties": false
}

Organization Patch Example

{
  "name": "My Updated Organization",
  "description": "Description of my updated organization"
}

Organization Post

Schema for the body of an Organization creation request

Organization Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "planId": {
      "type": "string",
      "maxLength": 1024
    },
    "billingEmail": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "cardToken": {
      "type": "string",
      "maxLength": 1024
    },
    "iconColor": {
      "type": "string",
      "maxLength": 64
    },
    "mfaMode": {
      "type": "string",
      "enum": [
        "notRequired",
        "adminRequired",
        "required"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "name"
  ]
}

Organization Post Example

{
  "name": "My New Organization",
  "description": "Description of my new organization"
}

Organization Role Info

Schema for an Organization member’s role info

Organization Role Info Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "role": {
      "type": "string",
      "enum": [
        "admin",
        "edit",
        "collaborate",
        "view",
        "none"
      ]
    },
    "applicationRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    },
    "dashboardRoles": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "resourceId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "role": {
            "type": "string",
            "enum": [
              "collaborate",
              "view",
              "none"
            ]
          }
        },
        "required": [
          "resourceId",
          "role"
        ],
        "additionalProperties": false
      },
      "maxItems": 1000
    }
  },
  "additionalProperties": false
}

Organization Role Info Example

{
  "role": "view"
}

Organizations

Schema for a collection of Organizations

Organizations Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Organization",
        "description": "Schema for a single Organization",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "orgId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "members": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "userId": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "firstName": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1024
                },
                "lastName": {
                  "type": "string",
                  "maxLength": 1024
                },
                "email": {
                  "type": "string",
                  "format": "email",
                  "maxLength": 1024
                },
                "avatarUrl": {
                  "type": "string",
                  "format": "uri",
                  "maxLength": 1024
                },
                "role": {
                  "type": "string",
                  "enum": [
                    "admin",
                    "edit",
                    "collaborate",
                    "view",
                    "none"
                  ]
                },
                "applicationRoles": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "resourceId": {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      "role": {
                        "type": "string",
                        "enum": [
                          "collaborate",
                          "view",
                          "none"
                        ]
                      }
                    },
                    "required": [
                      "resourceId",
                      "role"
                    ],
                    "additionalProperties": false
                  },
                  "maxItems": 1000
                },
                "dashboardRoles": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "resourceId": {
                        "type": "string",
                        "pattern": "^[A-Fa-f\\d]{24}$"
                      },
                      "role": {
                        "type": "string",
                        "enum": [
                          "collaborate",
                          "view",
                          "none"
                        ]
                      }
                    },
                    "required": [
                      "resourceId",
                      "role"
                    ],
                    "additionalProperties": false
                  },
                  "maxItems": 1000
                },
                "twoFactorAuthEnabled": {
                  "type": "boolean"
                },
                "ssoLinked": {
                  "type": "boolean"
                }
              }
            }
          },
          "limits": {
            "type": "object",
            "properties": {
              "apitoken": {
                "type": "integer",
                "minimum": 0
              },
              "application": {
                "type": "integer",
                "minimum": 0
              },
              "applicationcertificate": {
                "type": "integer",
                "minimum": 0
              },
              "applicationcertificateauthority": {
                "type": "integer",
                "minimum": 0
              },
              "applicationkey": {
                "type": "integer",
                "minimum": 0
              },
              "credential": {
                "type": "integer",
                "minimum": 0
              },
              "dashboard": {
                "type": "integer",
                "minimum": 0
              },
              "datatable": {
                "type": "integer",
                "minimum": 0
              },
              "device": {
                "type": "integer",
                "minimum": 0
              },
              "devicerecipe": {
                "type": "integer",
                "minimum": 0
              },
              "experiencedomain": {
                "type": "integer",
                "minimum": 0
              },
              "experienceendpoint": {
                "type": "integer",
                "minimum": 0
              },
              "experiencegroup": {
                "type": "integer",
                "minimum": 0
              },
              "experienceslug": {
                "type": "integer",
                "minimum": 0
              },
              "experienceuser": {
                "type": "integer",
                "minimum": 0
              },
              "experienceversion": {
                "type": "integer",
                "minimum": 0
              },
              "experienceview": {
                "type": "integer",
                "minimum": 0
              },
              "file": {
                "type": "integer",
                "minimum": 0
              },
              "flow": {
                "type": "integer",
                "minimum": 0
              },
              "integration": {
                "type": "integer",
                "minimum": 0
              },
              "notebook": {
                "type": "integer",
                "minimum": 0
              },
              "resourcejob": {
                "type": "integer",
                "minimum": 0
              },
              "webhook": {
                "type": "integer",
                "minimum": 0
              },
              "dataTTL": {
                "type": "integer",
                "minimum": 86400
              },
              "member": {
                "type": "integer",
                "minimum": 0
              },
              "payload": {
                "type": "integer",
                "minimum": 0
              },
              "storage": {
                "type": "integer",
                "minimum": 0
              },
              "notebookMinutesPerRun": {
                "type": "integer",
                "minimum": 0
              },
              "notebookMinutesPerMonth": {
                "type": "integer",
                "minimum": 0
              },
              "notebookInParallel": {
                "type": "integer",
                "minimum": 0
              },
              "experienceFlowSlots": {
                "type": "integer",
                "minimum": 0
              },
              "applicationFlowSlots": {
                "type": "integer",
                "minimum": 0
              },
              "systemInterval": {
                "type": "integer",
                "minimum": 5,
                "maximum": 3600
              }
            },
            "additionalProperties": false
          },
          "summary": {
            "type": "object",
            "properties": {
              "apiTokenCount": {
                "type": "integer"
              },
              "appCount": {
                "type": "integer"
              },
              "certificateCount": {
                "type": "integer"
              },
              "certificateAuthorityCount": {
                "type": "integer"
              },
              "credentialCount": {
                "type": "integer"
              },
              "dashCount": {
                "type": "integer"
              },
              "dataTableCount": {
                "type": "integer"
              },
              "deviceCount": {
                "type": "integer"
              },
              "deviceRecipeCount": {
                "type": "integer"
              },
              "eventCount": {
                "type": "integer"
              },
              "experienceDomainCount": {
                "type": "integer"
              },
              "experienceEndpointCount": {
                "type": "integer"
              },
              "experienceGroupCount": {
                "type": "integer"
              },
              "experienceSlugCount": {
                "type": "integer"
              },
              "experienceUserCount": {
                "type": "integer"
              },
              "experienceVersionCount": {
                "type": "integer"
              },
              "experienceViewCount": {
                "type": "integer"
              },
              "fileCount": {
                "type": "integer"
              },
              "flowCount": {
                "type": "integer"
              },
              "integrationCount": {
                "type": "integer"
              },
              "keyCount": {
                "type": "integer"
              },
              "notebookCount": {
                "type": "integer"
              },
              "resourceJobCount": {
                "type": "integer"
              },
              "webhookCount": {
                "type": "integer"
              },
              "memberCount": {
                "type": "integer"
              },
              "pendingInviteCount": {
                "type": "integer"
              },
              "payloadCount": {
                "title": "Payload Stats",
                "description": "Schema for the result of a payload stats request",
                "type": "object",
                "properties": {
                  "dataTable": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceCommand": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceConnect": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceDisconnect": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "deviceState": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "endpoint": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "event": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "flowError": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "integration": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "mqttIn": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "mqttOut": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "notebook": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "timer": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "virtualButton": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "webhook": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  },
                  "resourceJob": {
                    "type": "object",
                    "patternProperties": {
                      ".*": {
                        "type": "number"
                      }
                    }
                  }
                }
              },
              "storageStats": {
                "type": "object",
                "properties": {
                  "count": {
                    "type": "integer"
                  },
                  "size": {
                    "type": "integer"
                  }
                }
              },
              "notebookStats": {
                "type": "object",
                "properties": {
                  "awaitingCompletion": {
                    "type": "integer"
                  },
                  "minutesThisPeriod": {
                    "type": "integer"
                  },
                  "runsThisPeriod": {
                    "type": "integer"
                  }
                }
              }
            }
          },
          "planId": {
            "type": "string",
            "maxLength": 1024
          },
          "billingEmail": {
            "type": "string",
            "format": "email",
            "maxLength": 1024
          },
          "subscriptionStatus": {
            "type": "string",
            "enum": [
              "trialing",
              "active",
              "past_due",
              "canceled",
              "unpaid"
            ]
          },
          "currentPeriodStart": {
            "type": "string",
            "format": "date-time"
          },
          "currentPeriodEnd": {
            "type": "string",
            "format": "date-time"
          },
          "isEnterprise": {
            "type": "boolean"
          },
          "iconColor": {
            "type": "string",
            "maxLength": 64
          },
          "whitelistedEmailDomains": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 45,
              "minLength": 3
            }
          },
          "disabledAt": {
            "oneOf": [
              {
                "type": "boolean",
                "enum": [
                  false
                ]
              },
              {
                "type": "string",
                "format": "date-time"
              }
            ]
          },
          "isReadOnly": {
            "type": "boolean"
          },
          "mfaMode": {
            "type": "string",
            "enum": [
              "notRequired",
              "adminRequired",
              "required"
            ]
          },
          "banner": {
            "type": "object",
            "properties": {
              "message": {
                "type": "string",
                "maxLength": 2048
              },
              "level": {
                "type": "string",
                "enum": [
                  "info",
                  "warning",
                  "critical"
                ]
              }
            },
            "additionalProperties": false
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Organizations Example

{
  "items": [
    {
      "id": "575ed6e87ae143cd83dc4aa8",
      "orgId": "575ed6e87ae143cd83dc4aa8",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Organization",
      "description": "My organization description",
      "members": [
        {
          "userId": "575ed70c7ae143cd83dc4aa9",
          "firstName": "Example",
          "lastName": "Name",
          "email": "email@example.com",
          "role": "admin"
        },
        {
          "userId": "575ef90f7ae143cd83dc4aad",
          "firstName": "Other View",
          "lastName": "Only User",
          "email": "viewer@example.com",
          "role": "view"
        }
      ],
      "summary": {
        "appCount": 2,
        "dashCount": 1,
        "deviceCount": 12,
        "flowCount": 3,
        "webhookCount": 0,
        "keyCount": 2,
        "deviceRecipeCount": 0
      }
    }
  ],
  "count": 1,
  "totalCount": 2,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc"
}

Palette Response

Schema for the set of additional nodes for the workflow palette

Palette Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "customNodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "shortDescription": {
            "type": "string",
            "maxLength": 1024
          },
          "iconData": {
            "type": "string",
            "maxLength": 32767,
            "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
          },
          "docsUrl": {
            "type": "string",
            "maxLength": 1024
          },
          "category": {
            "type": "string",
            "enum": [
              "data",
              "experience",
              "logic",
              "output",
              "debug"
            ]
          },
          "customNodeConfig": {
            "type": "object",
            "properties": {
              "outputCount": {
                "type": "number",
                "enum": [
                  1,
                  2
                ]
              },
              "resultMode": {
                "type": "string",
                "enum": [
                  "optional",
                  "required",
                  "none"
                ]
              },
              "resultDescription": {
                "type": "string",
                "maxLength": 32767
              },
              "fields": {
                "type": "array",
                "maxItems": 100,
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "checkbox"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "select"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "options": {
                          "type": "array",
                          "minItems": 1,
                          "maxItems": 100,
                          "items": {
                            "type": "object",
                            "properties": {
                              "label": {
                                "type": "string",
                                "maxLength": 1024
                              },
                              "value": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 1024
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "value"
                            ]
                          }
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label",
                        "defaultValue",
                        "options"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "stringTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 1024
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validRegExp": {
                          "type": "string",
                          "maxLength": 1024
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "numberTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "number"
                        },
                        "required": {
                          "type": "boolean"
                        },
                        "validMin": {
                          "type": "number"
                        },
                        "validMax": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "jsonTemplate"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "defaultValue": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "payloadPath"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "required": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "section"
                          ]
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 1024
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "type",
                        "label"
                      ]
                    }
                  ]
                }
              }
            },
            "additionalProperties": false,
            "required": [
              "outputCount",
              "resultMode",
              "fields"
            ]
          },
          "flowVersionId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "version": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "compatibleFlowClasses": {
            "type": "object",
            "properties": {
              "cloud": {
                "type": "boolean"
              },
              "experience": {
                "type": "boolean"
              },
              "customNode": {
                "type": "boolean"
              },
              "edge": {
                "type": [
                  "boolean",
                  "string"
                ]
              },
              "embedded": {
                "type": [
                  "boolean",
                  "string"
                ]
              }
            }
          }
        }
      },
      "instanceNodes": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "pattern": "^[A-Fa-f\\d]{24}$"
            },
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 255
            },
            "description": {
              "type": "string",
              "maxLength": 32767
            },
            "shortDescription": {
              "type": "string",
              "maxLength": 1024
            },
            "iconData": {
              "type": "string",
              "maxLength": 32767,
              "pattern": "^data:image/(jpg|jpeg|png|svg\\+xml);base64,[0-9a-zA-Z+/=]*$"
            },
            "docsUrl": {
              "type": "string",
              "maxLength": 1024
            },
            "category": {
              "type": "string",
              "enum": [
                "data",
                "experience",
                "logic",
                "output",
                "debug"
              ]
            },
            "customNodeConfig": {
              "type": "object",
              "properties": {
                "outputCount": {
                  "type": "number",
                  "enum": [
                    1,
                    2
                  ]
                },
                "resultMode": {
                  "type": "string",
                  "enum": [
                    "optional",
                    "required",
                    "none"
                  ]
                },
                "resultDescription": {
                  "type": "string",
                  "maxLength": 32767
                },
                "fields": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "checkbox"
                            ]
                          },
                          "label": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "description": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "defaultValue": {
                            "type": "boolean"
                          }
                        },
                        "additionalProperties": false,
                        "required": [
                          "type",
                          "label"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "select"
                            ]
                          },
                          "label": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "description": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "defaultValue": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "options": {
                            "type": "array",
                            "minItems": 1,
                            "maxItems": 100,
                            "items": {
                              "type": "object",
                              "properties": {
                                "label": {
                                  "type": "string",
                                  "maxLength": 1024
                                },
                                "value": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 1024
                                }
                              },
                              "additionalProperties": false,
                              "required": [
                                "value"
                              ]
                            }
                          }
                        },
                        "additionalProperties": false,
                        "required": [
                          "type",
                          "label",
                          "defaultValue",
                          "options"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "stringTemplate"
                            ]
                          },
                          "label": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "description": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "defaultValue": {
                            "type": "string",
                            "maxLength": 1024
                          },
                          "required": {
                            "type": "boolean"
                          },
                          "validRegExp": {
                            "type": "string",
                            "maxLength": 1024
                          }
                        },
                        "additionalProperties": false,
                        "required": [
                          "type",
                          "label"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "numberTemplate"
                            ]
                          },
                          "label": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "description": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "defaultValue": {
                            "type": "number"
                          },
                          "required": {
                            "type": "boolean"
                          },
                          "validMin": {
                            "type": "number"
                          },
                          "validMax": {
                            "type": "number"
                          }
                        },
                        "additionalProperties": false,
                        "required": [
                          "type",
                          "label"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "jsonTemplate"
                            ]
                          },
                          "label": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "description": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "defaultValue": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "required": {
                            "type": "boolean"
                          }
                        },
                        "additionalProperties": false,
                        "required": [
                          "type",
                          "label"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "payloadPath"
                            ]
                          },
                          "label": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "description": {
                            "type": "string",
                            "maxLength": 32767
                          },
                          "required": {
                            "type": "boolean"
                          }
                        },
                        "additionalProperties": false,
                        "required": [
                          "type",
                          "label"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "section"
                            ]
                          },
                          "label": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "description": {
                            "type": "string",
                            "maxLength": 32767
                          }
                        },
                        "additionalProperties": false,
                        "required": [
                          "type",
                          "label"
                        ]
                      }
                    ]
                  }
                }
              },
              "additionalProperties": false,
              "required": [
                "outputCount",
                "resultMode",
                "fields"
              ]
            },
            "compatibleFlowClasses": {
              "type": "object",
              "properties": {
                "cloud": {
                  "type": "boolean"
                },
                "experience": {
                  "type": "boolean"
                },
                "customNode": {
                  "type": "boolean"
                },
                "edge": {
                  "type": [
                    "boolean",
                    "string"
                  ]
                },
                "embedded": {
                  "type": [
                    "boolean",
                    "string"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Palette Response Example

{
  "applicationId": "61f407b56dd9921e15f2b02b",
  "customNodes": [
    {
      "name": "Custom Node A",
      "category": "logic",
      "customNodeConfig": {
        "outputCount": 1,
        "resultMode": "optional",
        "fields": []
      },
      "id": "61f407b56dd9921e15f2b02e",
      "version": "develop",
      "compatibleFlowClasses": {
        "cloud": true
      }
    },
    {
      "name": "Custom Node B",
      "shortDescription": "what",
      "customNodeConfig": {
        "outputCount": 2,
        "resultMode": "required",
        "fields": []
      },
      "id": "61f407b56dd9921e15f2b02f",
      "version": "Version 2",
      "flowVersionId": "61f407b56dd9921e15f2b031",
      "compatibleFlowClasses": {
        "cloud": true
      }
    }
  ]
}

Password Reset Finish

Schema for the body of a request to complete the reset password flow

Password Reset Finish Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "token": {
      "type": "string",
      "minLength": 1
    },
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "password": {
      "type": "string",
      "minLength": 12,
      "maxLength": 2048,
      "pattern": "^(?=.*[A-Z])(?=.*[^A-Za-z0-9])(?=.*[0-9])(?=.*[a-z]).{12,}$"
    }
  },
  "required": [
    "token",
    "email",
    "password"
  ],
  "additionalProperties": false
}

Password Reset Finish Example

{
  "token": "the_password_reset_token",
  "email": "email@example.com",
  "password": "The new password!1"
}

Password Reset Input

Schema for the body of a request to start the reset password flow

Password Reset Input Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    }
  },
  "required": [
    "email"
  ],
  "additionalProperties": false
}

Password Reset Input Example

{
  "email": "email@example.com"
}

Password Reset Response

Schema for result of a successful password reset

Password Reset Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "success": {
      "type": "boolean",
      "enum": [
        true
      ]
    },
    "accountIsLocked": {
      "type": "boolean"
    },
    "twoFactorAuthEnabled": {
      "type": "boolean"
    }
  }
}

Password Reset Response Example

{
  "success": true,
  "accountIsLocked": false,
  "twoFactorAuthEnabled": false
}

Payload Counts Breakdown

Schema for the result of a payload counts breakdown request

Payload Counts Breakdown Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "start": {
      "type": "string",
      "format": "date-time"
    },
    "end": {
      "type": "string",
      "format": "date-time"
    },
    "counts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "value": {
            "type": "integer"
          }
        }
      }
    }
  }
}

Payload Counts Breakdown Example

{
  "start": "1999-05-20T05:00:00.000Z",
  "end": "1999-06-20T04:59:59.999Z",
  "counts": [
    {
      "date": "1999-06-20T00:00:00.000Z",
      "value": 17
    }
  ]
}

Payload Stats

Schema for the result of a payload stats request

Payload Stats Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "dataTable": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "deviceCommand": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "deviceConnect": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "deviceDisconnect": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "deviceState": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "endpoint": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "event": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "flowError": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "integration": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "mqttIn": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "mqttOut": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "notebook": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "timer": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "virtualButton": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "webhook": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    },
    "resourceJob": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "type": "number"
        }
      }
    }
  }
}

Payload Stats Example

{
  "timer": {
    "timer.flow": 19772
  },
  "deviceState": {
    "flow.flow": 5215,
    "device.mqtt": 1244049
  },
  "mqttOut": {
    "device.mqtt": 12
  },
  "webhook": {
    "public.rest": 1713284
  },
  "deviceConnect": {
    "device.mqtt": 1016
  },
  "deviceDisconnect": {
    "device.mqtt": 1016
  }
}

Application Period Summaries

Schema for a collection of Application Period Summaries

Application Period Summaries Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "summary": {
            "type": "object",
            "properties": {
              "deviceCounts": {
                "title": "Device Counts",
                "description": "Schema for the result of a device counts request",
                "type": "object",
                "properties": {
                  "start": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "end": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "counts": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "date": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "created": {
                          "type": "integer"
                        },
                        "deleted": {
                          "type": "integer"
                        },
                        "total": {
                          "type": "integer"
                        }
                      }
                    }
                  }
                }
              },
              "notebookMinuteCounts": {
                "title": "Notebook Minute Counts",
                "description": "Schema for the result of a notebook minute counts request",
                "type": "object",
                "properties": {
                  "start": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "end": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "counts": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "date": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "minutes": {
                          "type": "integer"
                        },
                        "completed": {
                          "type": "integer"
                        },
                        "canceled": {
                          "type": "integer"
                        },
                        "errored": {
                          "type": "integer"
                        },
                        "timeout": {
                          "type": "integer"
                        }
                      }
                    }
                  }
                }
              },
              "payloadCounts": {
                "title": "Payload Counts Breakdown",
                "description": "Schema for the result of a payload counts breakdown request",
                "type": "object",
                "properties": {
                  "start": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "end": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "counts": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "date": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "value": {
                          "type": "integer"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "additionalProperties": false
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    }
  }
}

Application Period Summaries Example

{
  "items": [
    {
      "name": "my app",
      "id": "575ec8687ae143cd83dc4a97",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "summary": {
        "payloadCounts": {
          "start": "1999-05-20T05:00:00.000Z",
          "end": "1999-06-20T04:59:59.999Z",
          "counts": [
            {
              "date": "1999-06-20T00:00:00.000Z",
              "value": 17
            }
          ]
        },
        "deviceCounts": {
          "start": "1999-05-20T05:00:00.000Z",
          "end": "1999-06-20T04:59:59.999Z",
          "counts": [
            {
              "created": 4,
              "deleted": 1,
              "date": "1999-06-20T00:00:00.000Z",
              "total": 17
            }
          ]
        },
        "notebookMinuteCounts": {
          "start": "1999-05-20T05:00:00.000Z",
          "end": "1999-06-20T04:59:59.999Z",
          "counts": [
            {
              "date": "1999-06-20T00:00:00.000Z",
              "minutes": 17,
              "completed": 4,
              "canceled": 0,
              "errored": 1,
              "timeout": 0
            }
          ]
        }
      }
    }
  ],
  "count": 1,
  "totalCount": 8,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc"
}

Recent Item

Schema for the body of a request to add a recent item

Recent Item Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "itemType": {
      "type": "string",
      "enum": [
        "application",
        "device",
        "flow",
        "dashboard",
        "organization"
      ]
    },
    "parentId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "itemId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  },
  "required": [
    "itemType",
    "itemId"
  ]
}

Recent Item Example

{
  "itemType": "device",
  "parentId": "575ec8687ae143cd83dc4a97",
  "itemId": "575ecf887ae143cd83dc4aa2"
}

Recent Item List

Schema for an array of recent items

Recent Item List Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "itemType": {
      "type": "string",
      "enum": [
        "application",
        "device",
        "flow",
        "dashboard",
        "organization"
      ]
    },
    "parentId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        }
      }
    }
  }
}

Recent Item List Example

{
  "itemType": "application",
  "items": [
    {
      "id": "575ec8687ae143cd83dc4a97",
      "name": "My Application"
    },
    {
      "id": "575efbcc7ae143cd83dc4aae",
      "name": "My Other Application"
    }
  ]
}

Resource Job

Schema for a single resource job

Resource Job Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "resourceJobId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "dataTableId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "string",
          "minLength": 4,
          "maxLength": 255,
          "pattern": ".*{{.+}}.*"
        }
      ]
    },
    "queryJson": {
      "type": "string",
      "maxLength": 8192
    },
    "resourceType": {
      "type": "string",
      "enum": [
        "dataTableRow",
        "device",
        "experienceGroup"
      ]
    },
    "maxIterationConcurrency": {
      "type": "integer",
      "enum": [
        1,
        10
      ]
    },
    "iterationDelay": {
      "type": "integer",
      "min": 0,
      "max": 60000
    },
    "iterationTimeout": {
      "type": "integer",
      "min": 60000,
      "max": 900000
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "lastExecutionRequested": {
      "type": "string",
      "format": "date-time"
    },
    "defaultContext": {
      "type": "string",
      "maxLength": 32767
    },
    "retryOnTimeout": {
      "type": "boolean"
    },
    "retryOnFailure": {
      "type": "boolean"
    },
    "maxIterationRetries": {
      "type": "integer",
      "min": 1,
      "max": 5
    },
    "retryDelay": {
      "type": "integer",
      "min": 0,
      "max": 30000
    }
  },
  "additionalProperties": false
}

Resource Job Example

{
  "name": "Example Resource Job",
  "iterationDelay": 60,
  "iterationTimeout": 60000,
  "defaultContext": "{}",
  "applicationId": "6328c6c026517badf9142116",
  "maxIterationConcurrency": 1,
  "creationDate": "2022-09-19T19:45:04.453Z",
  "lastUpdated": "2022-09-19T19:45:04.453Z",
  "resourceJobId": "6328c6c026517badf914211a",
  "resourceType": "device",
  "queryJson": "{ \"name\": \"my device\"}"
}

Resource Job Execution Logs

Schema for a set of Resource Job execution logs

Resource Job Execution Logs Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "applicationId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "resourceJobExecutionId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "resourceJobId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "accumulator": {
        "type": "string",
        "maxLength": 256
      },
      "status": {
        "type": "string",
        "enum": [
          "inProgress",
          "completed",
          "erroring",
          "errored",
          "canceling",
          "canceled"
        ]
      },
      "queryJson": {
        "type": "string",
        "maxLength": 8192
      },
      "resourceType": {
        "type": "string",
        "enum": [
          "dataTableRow",
          "device",
          "experienceGroup"
        ]
      },
      "sourceType": {
        "type": "string",
        "enum": [
          "flow",
          "user",
          "device",
          "apiToken",
          "notebook"
        ]
      },
      "sourceId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "cancelSourceType": {
        "type": "string",
        "enum": [
          "flow",
          "user",
          "device",
          "apiToken",
          "notebook"
        ]
      },
      "cancelSourceId": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "runStartedAt": {
        "type": "string",
        "format": "date-time"
      },
      "runCompletedAt": {
        "type": "string",
        "format": "date-time"
      },
      "executionReportUrl": {
        "type": "string"
      },
      "templateContext": {
        "type": "string",
        "maxLength": 32767
      },
      "iterationDelay": {
        "type": "integer",
        "min": 0,
        "max": 60000
      },
      "iterationTimeout": {
        "type": "integer",
        "min": 60000,
        "max": 900000
      },
      "maxIterationConcurrency": {
        "type": "integer",
        "enum": [
          1,
          10
        ]
      },
      "executionSummary": {
        "type": "object",
        "properties": {
          "succeeded": {
            "type": "number"
          },
          "failed": {
            "type": "number"
          },
          "timedOut": {
            "type": "number"
          },
          "inProgress": {
            "type": "number"
          },
          "remaining": {
            "type": "number"
          }
        }
      }
    },
    "retryOnTimeout": {
      "type": "boolean"
    },
    "retryOnFailure": {
      "type": "boolean"
    },
    "maxIterationRetries": {
      "type": "integer",
      "min": 1,
      "max": 5
    },
    "retryDelay": {
      "type": "integer",
      "min": 0,
      "max": 30000
    }
  }
}

Resource Job Execution Logs Example

[
  {
    "id": "5c7d3f9cd32c87a49f04c260",
    "resourceJobExecutionId": "5c7d3f9cd32c87a49f04c260",
    "resourceJobId": "5c782b8d4f3a8e51c1db42e4",
    "applicationId": "575ec8687ae143cd83dc4a97",
    "runStartedAt": "2016-06-13T03:59:00.000Z",
    "sourceId": "575ed70c7ae143cd83dc4aa9",
    "sourceType": "user",
    "status": "inProgress",
    "queryJson": "{ \"deviceClass\": \"standalone\"}",
    "templateContext": "{ \"monarchs\": [\"lizzy\", \"vicky\", \"chuck\"] }",
    "iterationDelay": 60,
    "iterationTimeout": 60000,
    "maxIterationConcurrency": 1,
    "executionSummary": {
      "succeeded": 5,
      "failed": 3,
      "timedOut": 0,
      "inProgress": 22,
      "remaining": 15
    }
  }
]

Resource Job Execution Options

Schema for a resource job execution configuration

Resource Job Execution Options Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "templateContext": {
      "type": "string",
      "maxLength": 32767
    },
    "queryJson": {
      "type": "string",
      "maxLength": 8192
    },
    "dataTableId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "string",
          "minLength": 4,
          "maxLength": 255,
          "pattern": ".*{{.+}}.*"
        }
      ]
    }
  },
  "additionalProperties": false
}

Resource Job Execution Options Example

{
  "templateContext": "{ \"myData\": 123 }"
}

Resource Job Patch

Schema for a resource job update

Resource Job Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "dataTableId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "string",
          "minLength": 4,
          "maxLength": 255,
          "pattern": ".*{{.+}}.*"
        }
      ]
    },
    "queryJson": {
      "type": "string",
      "maxLength": 8192
    },
    "maxIterationConcurrency": {
      "type": "integer",
      "enum": [
        1,
        10
      ]
    },
    "iterationDelay": {
      "type": "integer",
      "min": 0,
      "max": 60000
    },
    "iterationTimeout": {
      "type": "integer",
      "min": 60000,
      "max": 900000
    },
    "defaultContext": {
      "type": "string",
      "maxLength": 32767
    },
    "retryOnTimeout": {
      "type": "boolean"
    },
    "retryOnFailure": {
      "type": "boolean"
    },
    "maxIterationRetries": {
      "type": "integer",
      "min": 1,
      "max": 5
    },
    "retryDelay": {
      "type": "integer",
      "min": 0,
      "max": 30000
    }
  },
  "additionalProperties": false
}

Resource Job Patch Example

{
  "name": "Example Resource Job",
  "queryJson": "{ \"name\": \"my device\"}"
}

Resource Job Post

Schema for a resource job creation

Resource Job Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "dataTableId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        {
          "type": "string",
          "minLength": 4,
          "maxLength": 255,
          "pattern": ".*{{.+}}.*"
        }
      ]
    },
    "queryJson": {
      "type": "string",
      "maxLength": 8192
    },
    "resourceType": {
      "type": "string",
      "enum": [
        "dataTableRow",
        "device",
        "experienceGroup"
      ]
    },
    "maxIterationConcurrency": {
      "type": "integer",
      "enum": [
        1,
        10
      ]
    },
    "iterationDelay": {
      "type": "integer",
      "min": 0,
      "max": 60000
    },
    "iterationTimeout": {
      "type": "integer",
      "min": 60000,
      "max": 900000
    },
    "defaultContext": {
      "type": "string",
      "maxLength": 32767
    },
    "retryOnTimeout": {
      "type": "boolean"
    },
    "retryOnFailure": {
      "type": "boolean"
    },
    "maxIterationRetries": {
      "type": "integer",
      "min": 1,
      "max": 5
    },
    "retryDelay": {
      "type": "integer",
      "min": 0,
      "max": 30000
    }
  },
  "additionalProperties": false,
  "required": [
    "name",
    "resourceType"
  ]
}

Resource Job Post Example

{
  "name": "Example Resource Job",
  "resourceType": "device",
  "queryJson": "{ \"name\": \"my device\"}"
}

Resource Jobs

Schema for a collection of Resource Jobs

Resource Jobs Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Resource Job",
        "description": "Schema for a single resource job",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "resourceJobId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "dataTableId": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^[A-Fa-f\\d]{24}$"
              },
              {
                "type": "string",
                "minLength": 4,
                "maxLength": 255,
                "pattern": ".*{{.+}}.*"
              }
            ]
          },
          "queryJson": {
            "type": "string",
            "maxLength": 8192
          },
          "resourceType": {
            "type": "string",
            "enum": [
              "dataTableRow",
              "device",
              "experienceGroup"
            ]
          },
          "maxIterationConcurrency": {
            "type": "integer",
            "enum": [
              1,
              10
            ]
          },
          "iterationDelay": {
            "type": "integer",
            "min": 0,
            "max": 60000
          },
          "iterationTimeout": {
            "type": "integer",
            "min": 60000,
            "max": 900000
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "lastExecutionRequested": {
            "type": "string",
            "format": "date-time"
          },
          "defaultContext": {
            "type": "string",
            "maxLength": 32767
          },
          "retryOnTimeout": {
            "type": "boolean"
          },
          "retryOnFailure": {
            "type": "boolean"
          },
          "maxIterationRetries": {
            "type": "integer",
            "min": 1,
            "max": 5
          },
          "retryDelay": {
            "type": "integer",
            "min": 0,
            "max": 30000
          }
        },
        "additionalProperties": false
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Resource Jobs Example

{
  "items": [
    {
      "name": "Example Resource Job",
      "iterationDelay": 60,
      "iterationTimeout": 60000,
      "defaultContext": "{}",
      "applicationId": "6328c6c026517badf9142116",
      "maxIterationConcurrency": 1,
      "creationDate": "2022-09-19T19:45:04.453Z",
      "lastUpdated": "2022-09-19T19:45:04.453Z",
      "resourceJobId": "6328c6c026517badf914211a",
      "resourceType": "device",
      "queryJson": "{ \"name\": \"my device\"}"
    }
  ],
  "count": 1,
  "totalCount": 4,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Resource Transfer

Schema for the body of a resource transfer request

Resource Transfer Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "destinationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "destinationType": {
      "type": "string",
      "enum": [
        "user",
        "organization"
      ]
    },
    "applicationIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "dashboardIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "strict": {
      "type": "boolean"
    }
  },
  "additionalProperties": false,
  "required": [
    "destinationId",
    "destinationType"
  ]
}

Resource Transfer Example

{
  "destinationId": "575ed6e87ae143cd83dc4aa8",
  "destinationType": "organization",
  "applicationIds": [
    "575ec8687ae143cd83dc4a97"
  ]
}

SAML Response

SAML Response body for login

SAML Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "SAMLResponse": {
      "type": "string",
      "minLength": 4,
      "maxLength": 100000
    },
    "SAMLDomain": {
      "type": "string",
      "maxLength": 45,
      "minLength": 3
    },
    "requestedScopes": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "oneOf": [
          {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "all.Application",
                  "all.Application.read",
                  "all.Application.cli",
                  "all.Device",
                  "all.Device.read",
                  "application.*",
                  "applicationApiToken.*",
                  "applicationApiTokens.*",
                  "applicationCertificate.*",
                  "applicationCertificates.*",
                  "applicationCertificateAuthority.*",
                  "applicationCertificateAuthorities.*",
                  "applicationDashboards.*",
                  "applicationDashboard.*",
                  "applicationKey.*",
                  "applicationKeys.*",
                  "credential.*",
                  "credentials.*",
                  "data.*",
                  "dataTable.*",
                  "dataTables.*",
                  "dataTableRow.*",
                  "dataTableRows.*",
                  "device.*",
                  "deviceRecipe.*",
                  "deviceRecipes.*",
                  "devices.*",
                  "edgeDeployment.*",
                  "edgeDeployments.*",
                  "embeddedDeployment.*",
                  "embeddedDeployments.*",
                  "event.*",
                  "events.*",
                  "experience.*",
                  "experienceDomain.*",
                  "experienceDomains.*",
                  "experienceEndpoint.*",
                  "experienceEndpoints.*",
                  "experienceGroup.*",
                  "experienceGroups.*",
                  "experienceSlug.*",
                  "experienceSlugs.*",
                  "experienceUser.*",
                  "experienceUsers.*",
                  "experienceVersion.*",
                  "experienceVersions.*",
                  "experienceView.*",
                  "experienceViews.*",
                  "integration.*",
                  "integrations.*",
                  "file.*",
                  "files.*",
                  "flow.*",
                  "flows.*",
                  "flowVersion.*",
                  "flowVersions.*",
                  "resourceJobs.*",
                  "resourceJob.*",
                  "notebook.*",
                  "notebooks.*",
                  "webhook.*",
                  "webhooks.*",
                  "application.applyTemplate",
                  "application.archiveData",
                  "application.backfillArchiveData",
                  "application.clone",
                  "application.export",
                  "application.import",
                  "application.fullEventsArchive",
                  "application.fullDataTablesArchive",
                  "application.debug",
                  "application.delete",
                  "application.get",
                  "application.mqttPublishMessage",
                  "application.mqttSubscriptionStream",
                  "application.patch",
                  "application.payloadCounts",
                  "application.payloadCountsBreakdown",
                  "application.deviceCounts",
                  "application.notebookMinuteCounts",
                  "application.search",
                  "application.importLogs",
                  "applicationApiToken.delete",
                  "applicationApiToken.get",
                  "applicationApiToken.patch",
                  "applicationApiTokens.get",
                  "applicationApiTokens.post",
                  "applicationCertificate.delete",
                  "applicationCertificate.get",
                  "applicationCertificate.patch",
                  "applicationCertificates.get",
                  "applicationCertificates.post",
                  "applicationCertificateAuthority.delete",
                  "applicationCertificateAuthority.get",
                  "applicationCertificateAuthority.patch",
                  "applicationCertificateAuthorities.get",
                  "applicationCertificateAuthorities.post",
                  "applicationDashboard.get",
                  "applicationDashboard.patch",
                  "applicationDashboard.sendReport",
                  "applicationDashboard.delete",
                  "applicationDashboards.get",
                  "applicationDashboards.post",
                  "applicationKey.delete",
                  "applicationKey.get",
                  "applicationKey.patch",
                  "applicationKeys.get",
                  "applicationKeys.post",
                  "credential.get",
                  "credential.linkedResources",
                  "credential.patch",
                  "credential.delete",
                  "credentials.get",
                  "credentials.post",
                  "data.export",
                  "data.lastValueQuery",
                  "data.timeSeriesQuery",
                  "dataTable.addColumn",
                  "dataTable.delete",
                  "dataTable.get",
                  "dataTable.patch",
                  "dataTable.removeColumn",
                  "dataTableRow.delete",
                  "dataTableRow.get",
                  "dataTableRow.patch",
                  "dataTableRows.get",
                  "dataTableRows.post",
                  "dataTableRows.query",
                  "dataTableRows.export",
                  "dataTableRows.delete",
                  "dataTableRows.truncate",
                  "dataTables.get",
                  "dataTables.post",
                  "device.agentLogs",
                  "device.commandStream",
                  "device.debug",
                  "device.delete",
                  "device.export",
                  "device.get",
                  "device.getCommand",
                  "device.getCompositeState",
                  "device.getLogEntries",
                  "device.getState",
                  "device.patch",
                  "device.payloadCounts",
                  "device.payloadCountsBreakdown",
                  "device.removeData",
                  "device.sendCommand",
                  "device.sendState",
                  "device.setConnectionStatus",
                  "device.stateStream",
                  "deviceRecipe.bulkCreate",
                  "deviceRecipe.delete",
                  "deviceRecipe.get",
                  "deviceRecipe.patch",
                  "deviceRecipes.get",
                  "deviceRecipes.post",
                  "devices.attributeNames",
                  "devices.patch",
                  "devices.delete",
                  "devices.removeData",
                  "devices.detailedSummary",
                  "devices.deviceNames",
                  "devices.export",
                  "devices.get",
                  "devices.getCompositeState",
                  "devices.historicalImport",
                  "devices.payloadCounts",
                  "devices.post",
                  "devices.sendCommand",
                  "devices.tagKeys",
                  "devices.tagValues",
                  "edgeDeployment.get",
                  "edgeDeployments.get",
                  "edgeDeployments.release",
                  "edgeDeployments.remove",
                  "edgeDeployments.replace",
                  "embeddedDeployment.get",
                  "embeddedDeployments.get",
                  "embeddedDeployments.release",
                  "embeddedDeployments.remove",
                  "embeddedDeployments.replace",
                  "embeddedDeployments.export",
                  "event.delete",
                  "event.get",
                  "event.patch",
                  "events.delete",
                  "events.detailedSummary",
                  "events.get",
                  "events.mostRecentBySeverity",
                  "events.patch",
                  "events.post",
                  "events.export",
                  "experience.delete",
                  "experience.bootstrap",
                  "experienceDomain.delete",
                  "experienceDomain.get",
                  "experienceDomain.patch",
                  "experienceDomains.get",
                  "experienceDomains.post",
                  "experienceEndpoint.delete",
                  "experienceEndpoint.get",
                  "experienceEndpoint.linkedResources",
                  "experienceEndpoint.patch",
                  "experienceEndpoints.get",
                  "experienceEndpoints.post",
                  "experienceEndpoints.stats",
                  "experienceGroup.delete",
                  "experienceGroup.get",
                  "experienceGroup.patch",
                  "experienceGroups.detailedSummary",
                  "experienceGroups.get",
                  "experienceGroups.post",
                  "experienceSlug.delete",
                  "experienceSlug.get",
                  "experienceSlug.patch",
                  "experienceSlugs.get",
                  "experienceSlugs.post",
                  "experienceUser.delete",
                  "experienceUser.get",
                  "experienceUser.patch",
                  "experienceUsers.detailedSummary",
                  "experienceUsers.get",
                  "experienceUsers.post",
                  "experienceVersion.delete",
                  "experienceVersion.get",
                  "experienceVersion.patch",
                  "experienceVersions.get",
                  "experienceVersions.post",
                  "experienceView.debug",
                  "experienceView.delete",
                  "experienceView.get",
                  "experienceView.linkedResources",
                  "experienceView.patch",
                  "experienceViews.debug",
                  "experienceViews.detailedSummary",
                  "experienceViews.get",
                  "experienceViews.post",
                  "file.get",
                  "file.patch",
                  "file.move",
                  "file.delete",
                  "file.upload",
                  "files.get",
                  "files.post",
                  "flow.clearStorageEntries",
                  "flow.debug",
                  "flow.delete",
                  "flow.errors",
                  "flow.get",
                  "flow.getStorageEntries",
                  "flow.log",
                  "flow.patch",
                  "flow.pressVirtualButton",
                  "flow.setStorageEntry",
                  "flow.getStorageEntriesMetadata",
                  "flow.stats",
                  "flows.get",
                  "flows.getByVersion",
                  "flows.import",
                  "flows.palette",
                  "flows.post",
                  "flowVersion.delete",
                  "flowVersion.debug",
                  "flowVersion.errors",
                  "flowVersion.get",
                  "flowVersion.log",
                  "flowVersion.patch",
                  "flowVersion.stats",
                  "flowVersions.delete",
                  "flowVersions.get",
                  "flowVersions.post",
                  "integration.delete",
                  "integration.get",
                  "integration.patch",
                  "integrations.get",
                  "integrations.post",
                  "notebook.delete",
                  "notebook.execute",
                  "notebook.get",
                  "notebook.logs",
                  "notebook.notebookMinuteCounts",
                  "notebook.patch",
                  "notebook.requestInputDataExport",
                  "notebook.upload",
                  "notebooks.get",
                  "notebooks.post",
                  "resourceJob.get",
                  "resourceJob.logs",
                  "resourceJob.patch",
                  "resourceJob.delete",
                  "resourceJob.execute",
                  "resourceJob.cancelExecution",
                  "resourceJobs.get",
                  "resourceJobs.post",
                  "webhook.delete",
                  "webhook.get",
                  "webhook.patch",
                  "webhooks.get",
                  "webhooks.post"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "all.Organization",
                  "all.Organization.read",
                  "applications.*",
                  "auditLog.*",
                  "auditLogs.*",
                  "dashboard.*",
                  "dashboards.*",
                  "org.*",
                  "applications.get",
                  "applications.post",
                  "applications.import",
                  "applications.detailedSummary",
                  "applications.periodSummaries",
                  "auditLog.get",
                  "auditLogs.get",
                  "dashboard.patch",
                  "dashboard.delete",
                  "dashboard.sendReport",
                  "dashboards.get",
                  "dashboards.post",
                  "org.get",
                  "org.patch",
                  "org.delete",
                  "org.pendingInvites",
                  "org.inviteMember",
                  "org.revokeInvite",
                  "org.modifyMember",
                  "org.removeMember",
                  "org.payloadCounts",
                  "org.payloadCountsBreakdown",
                  "org.deviceCounts",
                  "org.notebookMinuteCounts",
                  "org.invoices",
                  "org.currentCard",
                  "org.chargeDetails",
                  "org.transferResources"
                ]
              }
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.Instance",
              "all.Instance.read",
              "instance.*",
              "instance.get",
              "instance.patch",
              "instance.historicalSummaries",
              "instance.generateReport",
              "instance.payloadCountsBreakdown",
              "instance.deviceCounts",
              "instance.notebookMinuteCounts",
              "instanceOrg.*",
              "instanceOrg.get",
              "instanceOrg.patch",
              "instanceOrg.delete",
              "instanceOrg.payloadCountsBreakdown",
              "instanceOrg.deviceCounts",
              "instanceOrg.notebookMinuteCounts",
              "instanceOrgs.*",
              "instanceOrgs.get",
              "instanceOrgs.post",
              "instanceMember.*",
              "instanceMember.get",
              "instanceMember.patch",
              "instanceMember.delete",
              "instanceMembers.*",
              "instanceMembers.get",
              "instanceMembers.post",
              "instanceOrgMember.*",
              "instanceOrgMember.get",
              "instanceOrgMember.patch",
              "instanceOrgMember.delete",
              "instanceOrgMembers.*",
              "instanceOrgMembers.get",
              "instanceOrgMembers.post",
              "instanceOrgInvite.*",
              "instanceOrgInvite.get",
              "instanceOrgInvite.delete",
              "instanceOrgInvite.resendInvite",
              "instanceOrgInvites.*",
              "instanceOrgInvites.get",
              "instanceOrgInvites.post",
              "instanceApiTokens.*",
              "instanceApiTokens.get",
              "instanceApiTokens.post",
              "instanceApiToken.*",
              "instanceApiToken.get",
              "instanceApiToken.patch",
              "instanceApiToken.delete",
              "instanceCustomNodes.*",
              "instanceCustomNodes.get",
              "instanceCustomNodes.post",
              "instanceCustomNode.*",
              "instanceCustomNode.get",
              "instanceCustomNode.patch",
              "instanceCustomNode.delete",
              "instanceCustomNode.errors",
              "instanceCustomNode.stats",
              "instanceSandbox.*",
              "instanceSandbox.get",
              "instanceSandbox.delete",
              "instanceSandbox.undelete",
              "instanceSandboxes.*",
              "instanceSandboxes.get",
              "instanceAuditLog.*",
              "instanceAuditLog.get",
              "instanceAuditLogs.*",
              "instanceAuditLogs.get"
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.User",
              "all.User.read",
              "all.User.cli",
              "userApiToken.*",
              "userApiToken.get",
              "userApiToken.patch",
              "userApiToken.delete",
              "userApiTokens.*",
              "userApiTokens.get",
              "userApiTokens.post",
              "applicationTemplate.*",
              "applicationTemplate.get",
              "applicationTemplates.*",
              "applicationTemplates.get",
              "applicationTemplates.getCategories",
              "applicationTemplates.getUniqueKeywords",
              "instances.*",
              "instances.get",
              "me.*",
              "me.get",
              "me.patch",
              "me.delete",
              "me.verifyEmail",
              "me.changePassword",
              "me.generateTwoFactorAuth",
              "me.enableTwoFactorAuth",
              "me.disableTwoFactorAuth",
              "me.disconnectGithub",
              "me.connectGithub",
              "me.addRecentItem",
              "me.fetchRecentItems",
              "me.payloadCounts",
              "me.payloadCountsBreakdown",
              "me.deviceCounts",
              "me.notebookMinuteCounts",
              "me.transferResources",
              "me.invite",
              "me.invites",
              "me.respondToInvite",
              "orgs.*",
              "orgs.get",
              "orgs.post"
            ]
          }
        ]
      }
    },
    "tokenTTL": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "SAMLResponse",
    "SAMLDomain"
  ],
  "additionalProperties": false
}

SAML Response Example

{
  "SAMLResponse": "PHNhbWxwOlJlc3BvbnNlIHhtbG5zOnNhbWxwPSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoy...",
  "SAMLDomain": "example.com"
}

SSO Request

SSO Request built from the SP and IDP config

SSO Request Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "ssoType": {
      "type": "string",
      "enum": [
        "SAML"
      ]
    },
    "ssoRequest": {
      "type": "string",
      "maxLength": 32767
    }
  },
  "required": [
    "ssoType",
    "ssoRequest"
  ]
}

SSO Request Example

{
  "ssoType": "SAML",
  "ssoRequest": "http://localhost:8080/simplesaml/saml2/idp/SSOService.php?SAMLRequest=fZJdT8MgFIb%2..."
}

Success

Schema for reporting a successful operation

Success Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "success": {
      "type": "boolean",
      "enum": [
        true
      ]
    }
  }
}

Success Example

{
  "success": true
}

Success With Execution ID

Schema for reporting a successful operation with a corresponding execution ID

Success With Execution ID Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "success": {
      "type": "boolean",
      "enum": [
        true
      ]
    },
    "executionId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Success With Execution ID Example

{
  "success": true,
  "executionId": "575ed78e7ae143cd83dc4aab"
}

Tag Keys Response

Schema for a list of tag keys

Tag Keys Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "tagKeys": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      },
      "maxItems": 1000
    }
  }
}

Tag Keys Response Example

{
  "tagKeys": [
    "key1",
    "key2",
    "key3"
  ]
}

Tag Values Response

Schema for a list of tag values for a key

Tag Values Response Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "tagKey": {
      "type": "string",
      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
    },
    "tagValues": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 255
      },
      "maxItems": 1000
    }
  }
}

Tag Values Response Example

{
  "tagKey": "key1",
  "tagValues": [
    "value1",
    "value2",
    "value3"
  ]
}

Template Keywords

Schema for a collection of template keywords

Template Keywords Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "keywords": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      },
      "maxItems": 100
    }
  },
  "additionalProperties": false
}

Template Keywords Example

{
  "keywords": [
    "gps",
    "featured"
  ]
}

Time Series Data

Schema for the result of a time series query

Time Series Data Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "start": {
      "type": "string",
      "format": "date-time"
    },
    "end": {
      "type": "string",
      "format": "date-time"
    },
    "resolution": {
      "type": [
        "number",
        "null"
      ]
    },
    "aggregation": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "enum": [
                "FIRST",
                "LAST",
                "COUNT",
                "MAX",
                "MIN",
                "MEDIAN",
                "MEAN",
                "SUM",
                "STD_DEV"
              ]
            },
            {
              "type": "string",
              "enum": [
                "NONE"
              ]
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "type": {
              "oneOf": [
                {
                  "type": "string",
                  "enum": [
                    "FIRST",
                    "LAST",
                    "COUNT",
                    "MAX",
                    "MIN",
                    "MEDIAN",
                    "MEAN",
                    "SUM",
                    "STD_DEV"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "NONE"
                  ]
                }
              ]
            },
            "options": {
              "type": "object",
              "additionalProperties": false
            }
          },
          "additionalProperties": false,
          "required": [
            "type"
          ]
        },
        {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "enum": [
                "TIMEATVALUE"
              ]
            },
            "options": {
              "type": "object",
              "properties": {
                "value": {
                  "oneOf": [
                    {
                      "type": "string",
                      "maxLength": 255
                    },
                    {
                      "type": "number"
                    },
                    {
                      "type": "boolean"
                    }
                  ]
                }
              },
              "additionalProperties": false,
              "required": [
                "value"
              ]
            }
          },
          "additionalProperties": false,
          "required": [
            "type",
            "options"
          ]
        }
      ]
    },
    "limit": {
      "type": [
        "number",
        "null"
      ]
    },
    "order": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "devices": {
      "type": "object",
      "patternProperties": {
        "^[A-Fa-f\\d]{24}$": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "minLength": 1,
              "maxLength": 255
            },
            "tags": {
              "type": "object",
              "patternProperties": {
                "^[0-9a-zA-Z_-]{1,255}$": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                }
              },
              "additionalProperties": false
            },
            "points": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "time": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "data": {
                    "type": "object",
                    "patternProperties": {
                      "^[0-9a-zA-Z_-]{1,255}$": {
                        "type": [
                          "number",
                          "string",
                          "boolean"
                        ]
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "additionalProperties": false,
                "required": [
                  "data",
                  "time"
                ]
              }
            }
          },
          "additionalProperties": false,
          "required": [
            "name",
            "points",
            "tags"
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false,
  "required": [
    "start",
    "end",
    "resolution",
    "aggregation",
    "limit",
    "order",
    "devices"
  ]
}

Time Series Data Example

{
  "start": "2016-06-15T03:50:00.000Z",
  "end": "2016-06-15T04:00:00.000Z",
  "resolution": 300000,
  "aggregation": "MEAN",
  "limit": null,
  "order": "asc",
  "devices": {
    "575ecf887ae143cd83dc4aa2": {
      "name": "My Device",
      "tags": {},
      "points": [
        {
          "time": "2016-06-15T03:50:00.000Z",
          "data": {
            "voltage": 10.3
          }
        },
        {
          "time": "2016-06-15T03:55:00.000Z",
          "data": {
            "voltage": 12.7
          }
        }
      ]
    },
    "575ef5c97ae143cd83dc4aac": {
      "name": "My Other Device",
      "tags": {
        "myTag": [
          "val1",
          "val2"
        ]
      },
      "points": [
        {
          "time": "2016-06-15T03:50:00.000Z",
          "data": {
            "voltage": 10.3
          }
        },
        {
          "time": "2016-06-15T03:55:00.000Z",
          "data": {
            "voltage": 12.7
          }
        }
      ]
    }
  }
}

Time Series Query

Schema for the body of a time series query request

Time Series Query Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "start": {
      "type": "number"
    },
    "end": {
      "type": "number"
    },
    "duration": {
      "type": "number"
    },
    "resolution": {
      "type": "number"
    },
    "aggregation": {
      "oneOf": [
        {
          "oneOf": [
            {
              "type": "string",
              "enum": [
                "FIRST",
                "LAST",
                "COUNT",
                "MAX",
                "MIN",
                "MEDIAN",
                "MEAN",
                "SUM",
                "STD_DEV"
              ]
            },
            {
              "type": "string",
              "enum": [
                "NONE"
              ]
            }
          ]
        },
        {
          "type": "object",
          "properties": {
            "type": {
              "oneOf": [
                {
                  "type": "string",
                  "enum": [
                    "FIRST",
                    "LAST",
                    "COUNT",
                    "MAX",
                    "MIN",
                    "MEDIAN",
                    "MEAN",
                    "SUM",
                    "STD_DEV"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "NONE"
                  ]
                }
              ]
            },
            "options": {
              "type": "object",
              "additionalProperties": false
            }
          },
          "additionalProperties": false,
          "required": [
            "type"
          ]
        },
        {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "enum": [
                "TIMEATVALUE"
              ]
            },
            "options": {
              "type": "object",
              "properties": {
                "value": {
                  "oneOf": [
                    {
                      "type": "string",
                      "maxLength": 255
                    },
                    {
                      "type": "number"
                    },
                    {
                      "type": "boolean"
                    }
                  ]
                }
              },
              "additionalProperties": false,
              "required": [
                "value"
              ]
            }
          },
          "additionalProperties": false,
          "required": [
            "type",
            "options"
          ]
        }
      ]
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[0-9a-zA-Z_-]{1,255}$"
      }
    },
    "deviceIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[A-Fa-f\\d]{24}$"
      },
      "maxItems": 1000
    },
    "deviceTags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "pattern": "^[0-9a-zA-Z_-]{1,255}$"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "deviceQuery": {
      "title": "Advanced Device Query",
      "description": "Schema for advanced device queries",
      "type": "object",
      "properties": {
        "$and": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$or": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "$nor": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/advancedDeviceQuery"
          },
          "maxItems": 100
        },
        "id": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "creationDate": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "lastUpdated": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "name": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "deviceClass": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "gatewayId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "parentId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "ancestorId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "attributeName": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "experienceUserId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "experienceGroupId": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$ne": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lt": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$gte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$lte": {
                  "oneOf": [
                    {
                      "type": "string",
                      "pattern": "^[A-Fa-f\\d]{24}$"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Fa-f\\d]{24}$"
                  }
                }
              },
              "additionalProperties": false,
              "minProperties": 1,
              "maxProperties": 1
            }
          ]
        },
        "tags": {
          "oneOf": [
            {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "$tagKey": {
                      "type": "string",
                      "maxLength": 255
                    },
                    "$tagValue": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false,
                  "minProperties": 1
                },
                {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}": {
                      "type": "string",
                      "maxLength": 255
                    }
                  },
                  "additionalProperties": false
                }
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$eq"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "$ne": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "$tagKey": {
                          "type": "string",
                          "maxLength": 255
                        },
                        "$tagValue": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false,
                      "minProperties": 1
                    },
                    {
                      "type": "object",
                      "patternProperties": {
                        "^[0-9a-zA-Z_-]{1,255}": {
                          "type": "string",
                          "maxLength": 255
                        }
                      },
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "required": [
                "$ne"
              ],
              "additionalProperties": false
            }
          ]
        },
        "disconnectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectedAt": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        },
        "connectionStatus": {
          "oneOf": [
            {
              "type": [
                "string",
                "number",
                "boolean",
                "null"
              ]
            },
            {
              "type": "object",
              "properties": {
                "$eq": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$ne": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lt": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$gte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$lte": {
                  "type": [
                    "string",
                    "number",
                    "boolean",
                    "null"
                  ]
                },
                "$startsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$endsWith": {
                  "type": "string",
                  "minLength": 1
                },
                "$contains": {
                  "type": "string",
                  "minLength": 1
                },
                "$ci": {
                  "type": "boolean"
                },
                "$in": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                },
                "$nin": {
                  "type": "array",
                  "maxItems": 100,
                  "items": {
                    "type": [
                      "string",
                      "number",
                      "boolean"
                    ]
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "limit": {
      "type": "number"
    },
    "order": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ],
      "default": "asc"
    }
  },
  "additionalProperties": false
}

Time Series Query Example

{
  "end": 0,
  "duration": 600000,
  "resolution": 300000,
  "aggregation": "MEAN",
  "attributes": [
    "voltage"
  ],
  "deviceTags": [
    {
      "key": "floor",
      "value": "8"
    }
  ]
}

User Credentials

Schema for the body of a User authentication request

User Credentials Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "password": {
      "type": "string",
      "minLength": 8,
      "maxLength": 2048
    },
    "twoFactorCode": {
      "type": "string",
      "maxLength": 2048
    },
    "requestedScopes": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "oneOf": [
          {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "all.Application",
                  "all.Application.read",
                  "all.Application.cli",
                  "all.Device",
                  "all.Device.read",
                  "application.*",
                  "applicationApiToken.*",
                  "applicationApiTokens.*",
                  "applicationCertificate.*",
                  "applicationCertificates.*",
                  "applicationCertificateAuthority.*",
                  "applicationCertificateAuthorities.*",
                  "applicationDashboards.*",
                  "applicationDashboard.*",
                  "applicationKey.*",
                  "applicationKeys.*",
                  "credential.*",
                  "credentials.*",
                  "data.*",
                  "dataTable.*",
                  "dataTables.*",
                  "dataTableRow.*",
                  "dataTableRows.*",
                  "device.*",
                  "deviceRecipe.*",
                  "deviceRecipes.*",
                  "devices.*",
                  "edgeDeployment.*",
                  "edgeDeployments.*",
                  "embeddedDeployment.*",
                  "embeddedDeployments.*",
                  "event.*",
                  "events.*",
                  "experience.*",
                  "experienceDomain.*",
                  "experienceDomains.*",
                  "experienceEndpoint.*",
                  "experienceEndpoints.*",
                  "experienceGroup.*",
                  "experienceGroups.*",
                  "experienceSlug.*",
                  "experienceSlugs.*",
                  "experienceUser.*",
                  "experienceUsers.*",
                  "experienceVersion.*",
                  "experienceVersions.*",
                  "experienceView.*",
                  "experienceViews.*",
                  "integration.*",
                  "integrations.*",
                  "file.*",
                  "files.*",
                  "flow.*",
                  "flows.*",
                  "flowVersion.*",
                  "flowVersions.*",
                  "resourceJobs.*",
                  "resourceJob.*",
                  "notebook.*",
                  "notebooks.*",
                  "webhook.*",
                  "webhooks.*",
                  "application.applyTemplate",
                  "application.archiveData",
                  "application.backfillArchiveData",
                  "application.clone",
                  "application.export",
                  "application.import",
                  "application.fullEventsArchive",
                  "application.fullDataTablesArchive",
                  "application.debug",
                  "application.delete",
                  "application.get",
                  "application.mqttPublishMessage",
                  "application.mqttSubscriptionStream",
                  "application.patch",
                  "application.payloadCounts",
                  "application.payloadCountsBreakdown",
                  "application.deviceCounts",
                  "application.notebookMinuteCounts",
                  "application.search",
                  "application.importLogs",
                  "applicationApiToken.delete",
                  "applicationApiToken.get",
                  "applicationApiToken.patch",
                  "applicationApiTokens.get",
                  "applicationApiTokens.post",
                  "applicationCertificate.delete",
                  "applicationCertificate.get",
                  "applicationCertificate.patch",
                  "applicationCertificates.get",
                  "applicationCertificates.post",
                  "applicationCertificateAuthority.delete",
                  "applicationCertificateAuthority.get",
                  "applicationCertificateAuthority.patch",
                  "applicationCertificateAuthorities.get",
                  "applicationCertificateAuthorities.post",
                  "applicationDashboard.get",
                  "applicationDashboard.patch",
                  "applicationDashboard.sendReport",
                  "applicationDashboard.delete",
                  "applicationDashboards.get",
                  "applicationDashboards.post",
                  "applicationKey.delete",
                  "applicationKey.get",
                  "applicationKey.patch",
                  "applicationKeys.get",
                  "applicationKeys.post",
                  "credential.get",
                  "credential.linkedResources",
                  "credential.patch",
                  "credential.delete",
                  "credentials.get",
                  "credentials.post",
                  "data.export",
                  "data.lastValueQuery",
                  "data.timeSeriesQuery",
                  "dataTable.addColumn",
                  "dataTable.delete",
                  "dataTable.get",
                  "dataTable.patch",
                  "dataTable.removeColumn",
                  "dataTableRow.delete",
                  "dataTableRow.get",
                  "dataTableRow.patch",
                  "dataTableRows.get",
                  "dataTableRows.post",
                  "dataTableRows.query",
                  "dataTableRows.export",
                  "dataTableRows.delete",
                  "dataTableRows.truncate",
                  "dataTables.get",
                  "dataTables.post",
                  "device.agentLogs",
                  "device.commandStream",
                  "device.debug",
                  "device.delete",
                  "device.export",
                  "device.get",
                  "device.getCommand",
                  "device.getCompositeState",
                  "device.getLogEntries",
                  "device.getState",
                  "device.patch",
                  "device.payloadCounts",
                  "device.payloadCountsBreakdown",
                  "device.removeData",
                  "device.sendCommand",
                  "device.sendState",
                  "device.setConnectionStatus",
                  "device.stateStream",
                  "deviceRecipe.bulkCreate",
                  "deviceRecipe.delete",
                  "deviceRecipe.get",
                  "deviceRecipe.patch",
                  "deviceRecipes.get",
                  "deviceRecipes.post",
                  "devices.attributeNames",
                  "devices.patch",
                  "devices.delete",
                  "devices.removeData",
                  "devices.detailedSummary",
                  "devices.deviceNames",
                  "devices.export",
                  "devices.get",
                  "devices.getCompositeState",
                  "devices.historicalImport",
                  "devices.payloadCounts",
                  "devices.post",
                  "devices.sendCommand",
                  "devices.tagKeys",
                  "devices.tagValues",
                  "edgeDeployment.get",
                  "edgeDeployments.get",
                  "edgeDeployments.release",
                  "edgeDeployments.remove",
                  "edgeDeployments.replace",
                  "embeddedDeployment.get",
                  "embeddedDeployments.get",
                  "embeddedDeployments.release",
                  "embeddedDeployments.remove",
                  "embeddedDeployments.replace",
                  "embeddedDeployments.export",
                  "event.delete",
                  "event.get",
                  "event.patch",
                  "events.delete",
                  "events.detailedSummary",
                  "events.get",
                  "events.mostRecentBySeverity",
                  "events.patch",
                  "events.post",
                  "events.export",
                  "experience.delete",
                  "experience.bootstrap",
                  "experienceDomain.delete",
                  "experienceDomain.get",
                  "experienceDomain.patch",
                  "experienceDomains.get",
                  "experienceDomains.post",
                  "experienceEndpoint.delete",
                  "experienceEndpoint.get",
                  "experienceEndpoint.linkedResources",
                  "experienceEndpoint.patch",
                  "experienceEndpoints.get",
                  "experienceEndpoints.post",
                  "experienceEndpoints.stats",
                  "experienceGroup.delete",
                  "experienceGroup.get",
                  "experienceGroup.patch",
                  "experienceGroups.detailedSummary",
                  "experienceGroups.get",
                  "experienceGroups.post",
                  "experienceSlug.delete",
                  "experienceSlug.get",
                  "experienceSlug.patch",
                  "experienceSlugs.get",
                  "experienceSlugs.post",
                  "experienceUser.delete",
                  "experienceUser.get",
                  "experienceUser.patch",
                  "experienceUsers.detailedSummary",
                  "experienceUsers.get",
                  "experienceUsers.post",
                  "experienceVersion.delete",
                  "experienceVersion.get",
                  "experienceVersion.patch",
                  "experienceVersions.get",
                  "experienceVersions.post",
                  "experienceView.debug",
                  "experienceView.delete",
                  "experienceView.get",
                  "experienceView.linkedResources",
                  "experienceView.patch",
                  "experienceViews.debug",
                  "experienceViews.detailedSummary",
                  "experienceViews.get",
                  "experienceViews.post",
                  "file.get",
                  "file.patch",
                  "file.move",
                  "file.delete",
                  "file.upload",
                  "files.get",
                  "files.post",
                  "flow.clearStorageEntries",
                  "flow.debug",
                  "flow.delete",
                  "flow.errors",
                  "flow.get",
                  "flow.getStorageEntries",
                  "flow.log",
                  "flow.patch",
                  "flow.pressVirtualButton",
                  "flow.setStorageEntry",
                  "flow.getStorageEntriesMetadata",
                  "flow.stats",
                  "flows.get",
                  "flows.getByVersion",
                  "flows.import",
                  "flows.palette",
                  "flows.post",
                  "flowVersion.delete",
                  "flowVersion.debug",
                  "flowVersion.errors",
                  "flowVersion.get",
                  "flowVersion.log",
                  "flowVersion.patch",
                  "flowVersion.stats",
                  "flowVersions.delete",
                  "flowVersions.get",
                  "flowVersions.post",
                  "integration.delete",
                  "integration.get",
                  "integration.patch",
                  "integrations.get",
                  "integrations.post",
                  "notebook.delete",
                  "notebook.execute",
                  "notebook.get",
                  "notebook.logs",
                  "notebook.notebookMinuteCounts",
                  "notebook.patch",
                  "notebook.requestInputDataExport",
                  "notebook.upload",
                  "notebooks.get",
                  "notebooks.post",
                  "resourceJob.get",
                  "resourceJob.logs",
                  "resourceJob.patch",
                  "resourceJob.delete",
                  "resourceJob.execute",
                  "resourceJob.cancelExecution",
                  "resourceJobs.get",
                  "resourceJobs.post",
                  "webhook.delete",
                  "webhook.get",
                  "webhook.patch",
                  "webhooks.get",
                  "webhooks.post"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "all.Organization",
                  "all.Organization.read",
                  "applications.*",
                  "auditLog.*",
                  "auditLogs.*",
                  "dashboard.*",
                  "dashboards.*",
                  "org.*",
                  "applications.get",
                  "applications.post",
                  "applications.import",
                  "applications.detailedSummary",
                  "applications.periodSummaries",
                  "auditLog.get",
                  "auditLogs.get",
                  "dashboard.patch",
                  "dashboard.delete",
                  "dashboard.sendReport",
                  "dashboards.get",
                  "dashboards.post",
                  "org.get",
                  "org.patch",
                  "org.delete",
                  "org.pendingInvites",
                  "org.inviteMember",
                  "org.revokeInvite",
                  "org.modifyMember",
                  "org.removeMember",
                  "org.payloadCounts",
                  "org.payloadCountsBreakdown",
                  "org.deviceCounts",
                  "org.notebookMinuteCounts",
                  "org.invoices",
                  "org.currentCard",
                  "org.chargeDetails",
                  "org.transferResources"
                ]
              }
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.Instance",
              "all.Instance.read",
              "instance.*",
              "instance.get",
              "instance.patch",
              "instance.historicalSummaries",
              "instance.generateReport",
              "instance.payloadCountsBreakdown",
              "instance.deviceCounts",
              "instance.notebookMinuteCounts",
              "instanceOrg.*",
              "instanceOrg.get",
              "instanceOrg.patch",
              "instanceOrg.delete",
              "instanceOrg.payloadCountsBreakdown",
              "instanceOrg.deviceCounts",
              "instanceOrg.notebookMinuteCounts",
              "instanceOrgs.*",
              "instanceOrgs.get",
              "instanceOrgs.post",
              "instanceMember.*",
              "instanceMember.get",
              "instanceMember.patch",
              "instanceMember.delete",
              "instanceMembers.*",
              "instanceMembers.get",
              "instanceMembers.post",
              "instanceOrgMember.*",
              "instanceOrgMember.get",
              "instanceOrgMember.patch",
              "instanceOrgMember.delete",
              "instanceOrgMembers.*",
              "instanceOrgMembers.get",
              "instanceOrgMembers.post",
              "instanceOrgInvite.*",
              "instanceOrgInvite.get",
              "instanceOrgInvite.delete",
              "instanceOrgInvite.resendInvite",
              "instanceOrgInvites.*",
              "instanceOrgInvites.get",
              "instanceOrgInvites.post",
              "instanceApiTokens.*",
              "instanceApiTokens.get",
              "instanceApiTokens.post",
              "instanceApiToken.*",
              "instanceApiToken.get",
              "instanceApiToken.patch",
              "instanceApiToken.delete",
              "instanceCustomNodes.*",
              "instanceCustomNodes.get",
              "instanceCustomNodes.post",
              "instanceCustomNode.*",
              "instanceCustomNode.get",
              "instanceCustomNode.patch",
              "instanceCustomNode.delete",
              "instanceCustomNode.errors",
              "instanceCustomNode.stats",
              "instanceSandbox.*",
              "instanceSandbox.get",
              "instanceSandbox.delete",
              "instanceSandbox.undelete",
              "instanceSandboxes.*",
              "instanceSandboxes.get",
              "instanceAuditLog.*",
              "instanceAuditLog.get",
              "instanceAuditLogs.*",
              "instanceAuditLogs.get"
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.User",
              "all.User.read",
              "all.User.cli",
              "userApiToken.*",
              "userApiToken.get",
              "userApiToken.patch",
              "userApiToken.delete",
              "userApiTokens.*",
              "userApiTokens.get",
              "userApiTokens.post",
              "applicationTemplate.*",
              "applicationTemplate.get",
              "applicationTemplates.*",
              "applicationTemplates.get",
              "applicationTemplates.getCategories",
              "applicationTemplates.getUniqueKeywords",
              "instances.*",
              "instances.get",
              "me.*",
              "me.get",
              "me.patch",
              "me.delete",
              "me.verifyEmail",
              "me.changePassword",
              "me.generateTwoFactorAuth",
              "me.enableTwoFactorAuth",
              "me.disableTwoFactorAuth",
              "me.disconnectGithub",
              "me.connectGithub",
              "me.addRecentItem",
              "me.fetchRecentItems",
              "me.payloadCounts",
              "me.payloadCountsBreakdown",
              "me.deviceCounts",
              "me.notebookMinuteCounts",
              "me.transferResources",
              "me.invite",
              "me.invites",
              "me.respondToInvite",
              "orgs.*",
              "orgs.get",
              "orgs.post"
            ]
          }
        ]
      }
    },
    "tokenTTL": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "email",
    "password"
  ],
  "additionalProperties": false
}

User Credentials Example

{
  "email": "email@example.com",
  "password": "this is the password"
}

User Post

Schema for the body of a User creation request

User Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "format": "email",
      "maxLength": 1024
    },
    "firstName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1024
    },
    "lastName": {
      "type": "string",
      "maxLength": 1024
    },
    "companyName": {
      "type": "string",
      "maxLength": 1024
    },
    "title": {
      "type": "string",
      "maxLength": 1024
    },
    "phoneNumber": {
      "type": "string",
      "maxLength": 1024
    },
    "location": {
      "type": "string",
      "maxLength": 1024
    },
    "url": {
      "type": "string",
      "maxLength": 1024
    },
    "oauth": {
      "type": "object",
      "properties": {
        "service": {
          "enum": [
            "github"
          ]
        },
        "accessToken": {
          "type": "string",
          "minLength": 1,
          "maxLength": 1024
        }
      },
      "required": [
        "service",
        "accessToken"
      ]
    },
    "password": {
      "type": "string",
      "minLength": 12,
      "maxLength": 2048,
      "pattern": "^(?=.*[A-Z])(?=.*[^A-Za-z0-9])(?=.*[0-9])(?=.*[a-z]).{12,}$"
    },
    "acceptTerms": {
      "enum": [
        "on"
      ]
    },
    "hsToken": {
      "type": "string",
      "maxLength": 1024
    },
    "iotJourneyStage": {
      "type": "string",
      "maxLength": 1024
    },
    "requestedScopes": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "oneOf": [
          {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "all.Application",
                  "all.Application.read",
                  "all.Application.cli",
                  "all.Device",
                  "all.Device.read",
                  "application.*",
                  "applicationApiToken.*",
                  "applicationApiTokens.*",
                  "applicationCertificate.*",
                  "applicationCertificates.*",
                  "applicationCertificateAuthority.*",
                  "applicationCertificateAuthorities.*",
                  "applicationDashboards.*",
                  "applicationDashboard.*",
                  "applicationKey.*",
                  "applicationKeys.*",
                  "credential.*",
                  "credentials.*",
                  "data.*",
                  "dataTable.*",
                  "dataTables.*",
                  "dataTableRow.*",
                  "dataTableRows.*",
                  "device.*",
                  "deviceRecipe.*",
                  "deviceRecipes.*",
                  "devices.*",
                  "edgeDeployment.*",
                  "edgeDeployments.*",
                  "embeddedDeployment.*",
                  "embeddedDeployments.*",
                  "event.*",
                  "events.*",
                  "experience.*",
                  "experienceDomain.*",
                  "experienceDomains.*",
                  "experienceEndpoint.*",
                  "experienceEndpoints.*",
                  "experienceGroup.*",
                  "experienceGroups.*",
                  "experienceSlug.*",
                  "experienceSlugs.*",
                  "experienceUser.*",
                  "experienceUsers.*",
                  "experienceVersion.*",
                  "experienceVersions.*",
                  "experienceView.*",
                  "experienceViews.*",
                  "integration.*",
                  "integrations.*",
                  "file.*",
                  "files.*",
                  "flow.*",
                  "flows.*",
                  "flowVersion.*",
                  "flowVersions.*",
                  "resourceJobs.*",
                  "resourceJob.*",
                  "notebook.*",
                  "notebooks.*",
                  "webhook.*",
                  "webhooks.*",
                  "application.applyTemplate",
                  "application.archiveData",
                  "application.backfillArchiveData",
                  "application.clone",
                  "application.export",
                  "application.import",
                  "application.fullEventsArchive",
                  "application.fullDataTablesArchive",
                  "application.debug",
                  "application.delete",
                  "application.get",
                  "application.mqttPublishMessage",
                  "application.mqttSubscriptionStream",
                  "application.patch",
                  "application.payloadCounts",
                  "application.payloadCountsBreakdown",
                  "application.deviceCounts",
                  "application.notebookMinuteCounts",
                  "application.search",
                  "application.importLogs",
                  "applicationApiToken.delete",
                  "applicationApiToken.get",
                  "applicationApiToken.patch",
                  "applicationApiTokens.get",
                  "applicationApiTokens.post",
                  "applicationCertificate.delete",
                  "applicationCertificate.get",
                  "applicationCertificate.patch",
                  "applicationCertificates.get",
                  "applicationCertificates.post",
                  "applicationCertificateAuthority.delete",
                  "applicationCertificateAuthority.get",
                  "applicationCertificateAuthority.patch",
                  "applicationCertificateAuthorities.get",
                  "applicationCertificateAuthorities.post",
                  "applicationDashboard.get",
                  "applicationDashboard.patch",
                  "applicationDashboard.sendReport",
                  "applicationDashboard.delete",
                  "applicationDashboards.get",
                  "applicationDashboards.post",
                  "applicationKey.delete",
                  "applicationKey.get",
                  "applicationKey.patch",
                  "applicationKeys.get",
                  "applicationKeys.post",
                  "credential.get",
                  "credential.linkedResources",
                  "credential.patch",
                  "credential.delete",
                  "credentials.get",
                  "credentials.post",
                  "data.export",
                  "data.lastValueQuery",
                  "data.timeSeriesQuery",
                  "dataTable.addColumn",
                  "dataTable.delete",
                  "dataTable.get",
                  "dataTable.patch",
                  "dataTable.removeColumn",
                  "dataTableRow.delete",
                  "dataTableRow.get",
                  "dataTableRow.patch",
                  "dataTableRows.get",
                  "dataTableRows.post",
                  "dataTableRows.query",
                  "dataTableRows.export",
                  "dataTableRows.delete",
                  "dataTableRows.truncate",
                  "dataTables.get",
                  "dataTables.post",
                  "device.agentLogs",
                  "device.commandStream",
                  "device.debug",
                  "device.delete",
                  "device.export",
                  "device.get",
                  "device.getCommand",
                  "device.getCompositeState",
                  "device.getLogEntries",
                  "device.getState",
                  "device.patch",
                  "device.payloadCounts",
                  "device.payloadCountsBreakdown",
                  "device.removeData",
                  "device.sendCommand",
                  "device.sendState",
                  "device.setConnectionStatus",
                  "device.stateStream",
                  "deviceRecipe.bulkCreate",
                  "deviceRecipe.delete",
                  "deviceRecipe.get",
                  "deviceRecipe.patch",
                  "deviceRecipes.get",
                  "deviceRecipes.post",
                  "devices.attributeNames",
                  "devices.patch",
                  "devices.delete",
                  "devices.removeData",
                  "devices.detailedSummary",
                  "devices.deviceNames",
                  "devices.export",
                  "devices.get",
                  "devices.getCompositeState",
                  "devices.historicalImport",
                  "devices.payloadCounts",
                  "devices.post",
                  "devices.sendCommand",
                  "devices.tagKeys",
                  "devices.tagValues",
                  "edgeDeployment.get",
                  "edgeDeployments.get",
                  "edgeDeployments.release",
                  "edgeDeployments.remove",
                  "edgeDeployments.replace",
                  "embeddedDeployment.get",
                  "embeddedDeployments.get",
                  "embeddedDeployments.release",
                  "embeddedDeployments.remove",
                  "embeddedDeployments.replace",
                  "embeddedDeployments.export",
                  "event.delete",
                  "event.get",
                  "event.patch",
                  "events.delete",
                  "events.detailedSummary",
                  "events.get",
                  "events.mostRecentBySeverity",
                  "events.patch",
                  "events.post",
                  "events.export",
                  "experience.delete",
                  "experience.bootstrap",
                  "experienceDomain.delete",
                  "experienceDomain.get",
                  "experienceDomain.patch",
                  "experienceDomains.get",
                  "experienceDomains.post",
                  "experienceEndpoint.delete",
                  "experienceEndpoint.get",
                  "experienceEndpoint.linkedResources",
                  "experienceEndpoint.patch",
                  "experienceEndpoints.get",
                  "experienceEndpoints.post",
                  "experienceEndpoints.stats",
                  "experienceGroup.delete",
                  "experienceGroup.get",
                  "experienceGroup.patch",
                  "experienceGroups.detailedSummary",
                  "experienceGroups.get",
                  "experienceGroups.post",
                  "experienceSlug.delete",
                  "experienceSlug.get",
                  "experienceSlug.patch",
                  "experienceSlugs.get",
                  "experienceSlugs.post",
                  "experienceUser.delete",
                  "experienceUser.get",
                  "experienceUser.patch",
                  "experienceUsers.detailedSummary",
                  "experienceUsers.get",
                  "experienceUsers.post",
                  "experienceVersion.delete",
                  "experienceVersion.get",
                  "experienceVersion.patch",
                  "experienceVersions.get",
                  "experienceVersions.post",
                  "experienceView.debug",
                  "experienceView.delete",
                  "experienceView.get",
                  "experienceView.linkedResources",
                  "experienceView.patch",
                  "experienceViews.debug",
                  "experienceViews.detailedSummary",
                  "experienceViews.get",
                  "experienceViews.post",
                  "file.get",
                  "file.patch",
                  "file.move",
                  "file.delete",
                  "file.upload",
                  "files.get",
                  "files.post",
                  "flow.clearStorageEntries",
                  "flow.debug",
                  "flow.delete",
                  "flow.errors",
                  "flow.get",
                  "flow.getStorageEntries",
                  "flow.log",
                  "flow.patch",
                  "flow.pressVirtualButton",
                  "flow.setStorageEntry",
                  "flow.getStorageEntriesMetadata",
                  "flow.stats",
                  "flows.get",
                  "flows.getByVersion",
                  "flows.import",
                  "flows.palette",
                  "flows.post",
                  "flowVersion.delete",
                  "flowVersion.debug",
                  "flowVersion.errors",
                  "flowVersion.get",
                  "flowVersion.log",
                  "flowVersion.patch",
                  "flowVersion.stats",
                  "flowVersions.delete",
                  "flowVersions.get",
                  "flowVersions.post",
                  "integration.delete",
                  "integration.get",
                  "integration.patch",
                  "integrations.get",
                  "integrations.post",
                  "notebook.delete",
                  "notebook.execute",
                  "notebook.get",
                  "notebook.logs",
                  "notebook.notebookMinuteCounts",
                  "notebook.patch",
                  "notebook.requestInputDataExport",
                  "notebook.upload",
                  "notebooks.get",
                  "notebooks.post",
                  "resourceJob.get",
                  "resourceJob.logs",
                  "resourceJob.patch",
                  "resourceJob.delete",
                  "resourceJob.execute",
                  "resourceJob.cancelExecution",
                  "resourceJobs.get",
                  "resourceJobs.post",
                  "webhook.delete",
                  "webhook.get",
                  "webhook.patch",
                  "webhooks.get",
                  "webhooks.post"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "all.Organization",
                  "all.Organization.read",
                  "applications.*",
                  "auditLog.*",
                  "auditLogs.*",
                  "dashboard.*",
                  "dashboards.*",
                  "org.*",
                  "applications.get",
                  "applications.post",
                  "applications.import",
                  "applications.detailedSummary",
                  "applications.periodSummaries",
                  "auditLog.get",
                  "auditLogs.get",
                  "dashboard.patch",
                  "dashboard.delete",
                  "dashboard.sendReport",
                  "dashboards.get",
                  "dashboards.post",
                  "org.get",
                  "org.patch",
                  "org.delete",
                  "org.pendingInvites",
                  "org.inviteMember",
                  "org.revokeInvite",
                  "org.modifyMember",
                  "org.removeMember",
                  "org.payloadCounts",
                  "org.payloadCountsBreakdown",
                  "org.deviceCounts",
                  "org.notebookMinuteCounts",
                  "org.invoices",
                  "org.currentCard",
                  "org.chargeDetails",
                  "org.transferResources"
                ]
              }
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.Instance",
              "all.Instance.read",
              "instance.*",
              "instance.get",
              "instance.patch",
              "instance.historicalSummaries",
              "instance.generateReport",
              "instance.payloadCountsBreakdown",
              "instance.deviceCounts",
              "instance.notebookMinuteCounts",
              "instanceOrg.*",
              "instanceOrg.get",
              "instanceOrg.patch",
              "instanceOrg.delete",
              "instanceOrg.payloadCountsBreakdown",
              "instanceOrg.deviceCounts",
              "instanceOrg.notebookMinuteCounts",
              "instanceOrgs.*",
              "instanceOrgs.get",
              "instanceOrgs.post",
              "instanceMember.*",
              "instanceMember.get",
              "instanceMember.patch",
              "instanceMember.delete",
              "instanceMembers.*",
              "instanceMembers.get",
              "instanceMembers.post",
              "instanceOrgMember.*",
              "instanceOrgMember.get",
              "instanceOrgMember.patch",
              "instanceOrgMember.delete",
              "instanceOrgMembers.*",
              "instanceOrgMembers.get",
              "instanceOrgMembers.post",
              "instanceOrgInvite.*",
              "instanceOrgInvite.get",
              "instanceOrgInvite.delete",
              "instanceOrgInvite.resendInvite",
              "instanceOrgInvites.*",
              "instanceOrgInvites.get",
              "instanceOrgInvites.post",
              "instanceApiTokens.*",
              "instanceApiTokens.get",
              "instanceApiTokens.post",
              "instanceApiToken.*",
              "instanceApiToken.get",
              "instanceApiToken.patch",
              "instanceApiToken.delete",
              "instanceCustomNodes.*",
              "instanceCustomNodes.get",
              "instanceCustomNodes.post",
              "instanceCustomNode.*",
              "instanceCustomNode.get",
              "instanceCustomNode.patch",
              "instanceCustomNode.delete",
              "instanceCustomNode.errors",
              "instanceCustomNode.stats",
              "instanceSandbox.*",
              "instanceSandbox.get",
              "instanceSandbox.delete",
              "instanceSandbox.undelete",
              "instanceSandboxes.*",
              "instanceSandboxes.get",
              "instanceAuditLog.*",
              "instanceAuditLog.get",
              "instanceAuditLogs.*",
              "instanceAuditLogs.get"
            ]
          },
          {
            "type": "string",
            "enum": [
              "all.User",
              "all.User.read",
              "all.User.cli",
              "userApiToken.*",
              "userApiToken.get",
              "userApiToken.patch",
              "userApiToken.delete",
              "userApiTokens.*",
              "userApiTokens.get",
              "userApiTokens.post",
              "applicationTemplate.*",
              "applicationTemplate.get",
              "applicationTemplates.*",
              "applicationTemplates.get",
              "applicationTemplates.getCategories",
              "applicationTemplates.getUniqueKeywords",
              "instances.*",
              "instances.get",
              "me.*",
              "me.get",
              "me.patch",
              "me.delete",
              "me.verifyEmail",
              "me.changePassword",
              "me.generateTwoFactorAuth",
              "me.enableTwoFactorAuth",
              "me.disableTwoFactorAuth",
              "me.disconnectGithub",
              "me.connectGithub",
              "me.addRecentItem",
              "me.fetchRecentItems",
              "me.payloadCounts",
              "me.payloadCountsBreakdown",
              "me.deviceCounts",
              "me.notebookMinuteCounts",
              "me.transferResources",
              "me.invite",
              "me.invites",
              "me.respondToInvite",
              "orgs.*",
              "orgs.get",
              "orgs.post"
            ]
          }
        ]
      }
    },
    "tokenTTL": {
      "type": "integer",
      "minimum": 0
    },
    "inviteToken": {
      "type": "string",
      "minLength": 1
    },
    "acceptInvite": {
      "type": "boolean"
    }
  },
  "anyOf": [
    {
      "required": [
        "email",
        "firstName",
        "lastName",
        "password",
        "acceptTerms"
      ]
    },
    {
      "required": [
        "email",
        "firstName",
        "lastName",
        "oauth",
        "acceptTerms"
      ]
    }
  ]
}

User Post Example

{
  "email": "email@example.com",
  "firstName": "Example",
  "lastName": "Name",
  "companyName": "Example, Inc.",
  "url": "https://example.com",
  "password": "The new password1!",
  "acceptTerms": "on"
}

Validate Context Error

Schema for the result of a validateContext call when invalid context is passed

Validate Context Error Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "type": {
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "invalidCtxName": {
      "type": "string",
      "pattern": "^[0-9a-zA-Z_-]{1,255}$"
    },
    "ctx": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "anyOf": [
            [
              {
                "type": "string",
                "maxLength": 32767
              },
              {
                "type": "number"
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            ],
            {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                },
                "description": {
                  "type": "string",
                  "maxLength": 32767
                },
                "tags": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": "array",
                      "minItems": 1,
                      "items": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    }
                  }
                },
                "attributes": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": "object",
                      "properties": {
                        "dataType": {
                          "type": "string",
                          "enum": [
                            "string",
                            "number",
                            "gps",
                            "boolean",
                            "blob"
                          ]
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "tags": {
                          "type": "object",
                          "patternProperties": {
                            "^[0-9a-zA-Z_-]{1,255}$": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "dashboard": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "duration": {
          "type": "integer",
          "minimum": 1
        },
        "resolution": {
          "type": "integer",
          "minimum": 1
        },
        "refreshRate": {
          "type": "number",
          "minimum": 5,
          "maximum": 600
        }
      }
    }
  }
}

Validate Context Error Example

{
  "type": "Validation",
  "message": "deviceId-noValidationNoFullDevice (589de9bca1975a00017b22ff) is not a valid deviceId",
  "ctx": {
    "deviceId-withIdAndTagValidationAndIncludeFullDevice": {
      "id": "589de9bca1975a00017b2295",
      "name": "Cincinnati",
      "tags": {
        "type": [
          "Weather Station",
          "Sensor"
        ],
        "region": [
          "Midwest"
        ],
        "DeviceRecipe": [
          "Weather Station"
        ]
      },
      "attributes": {
        "temperature": {
          "dataType": "number",
          "tags": {
            "units": "celsius"
          }
        },
        "dew-point": {
          "dataType": "number"
        }
      }
    },
    "deviceId-noValidationNoFullDevice": "589de9bca1975a00017b2296",
    "deviceAttribute": "dew-point",
    "deviceTag-withValidation": {
      "key": "DeviceRecipe",
      "value": "Weather Station"
    },
    "deviceTag-noValidation": {
      "key": "DeviceRecipe",
      "value": "Weather Station"
    }
  }
}

Validate Context Success

Schema for the result of a successful validateContext call

Validate Context Success Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "success": {
      "type": "boolean",
      "enum": [
        true
      ]
    },
    "ctx": {
      "type": "object",
      "patternProperties": {
        "^[0-9a-zA-Z_-]{1,255}$": {
          "anyOf": [
            [
              {
                "type": "string",
                "maxLength": 32767
              },
              {
                "type": "number"
              },
              {
                "type": "object",
                "properties": {
                  "key": {
                    "type": "string",
                    "pattern": "^[0-9a-zA-Z_-]{1,255}$"
                  },
                  "value": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 255
                  }
                },
                "additionalProperties": false
              }
            ],
            {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "pattern": "^[A-Fa-f\\d]{24}$"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 255
                },
                "description": {
                  "type": "string",
                  "maxLength": 32767
                },
                "tags": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": "array",
                      "minItems": 1,
                      "items": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      }
                    }
                  }
                },
                "attributes": {
                  "type": "object",
                  "patternProperties": {
                    "^[0-9a-zA-Z_-]{1,255}$": {
                      "type": "object",
                      "properties": {
                        "dataType": {
                          "type": "string",
                          "enum": [
                            "string",
                            "number",
                            "gps",
                            "boolean",
                            "blob"
                          ]
                        },
                        "description": {
                          "type": "string",
                          "maxLength": 32767
                        },
                        "tags": {
                          "type": "object",
                          "patternProperties": {
                            "^[0-9a-zA-Z_-]{1,255}$": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 255
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "dashboard": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        "id": {
          "type": "string",
          "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "duration": {
          "type": "integer",
          "minimum": 1
        },
        "resolution": {
          "type": "integer",
          "minimum": 1
        },
        "refreshRate": {
          "type": "number",
          "minimum": 5,
          "maximum": 600
        }
      }
    }
  }
}

Validate Context Success Example

{
  "success": true,
  "dashboard": {
    "id": "589de9bca1975a00017b2287",
    "name": "My Dash",
    "duration": 980,
    "resolution": 98,
    "refreshRate": 60
  },
  "ctx": {
    "deviceId-withIdAndTagValidationAndIncludeFullDevice": {
      "id": "589de9bca1975a00017b2295",
      "name": "Cincinnati",
      "tags": {
        "type": [
          "Weather Station",
          "Sensor"
        ],
        "region": [
          "Midwest"
        ],
        "DeviceRecipe": [
          "Weather Station"
        ]
      },
      "attributes": {
        "temperature": {
          "dataType": "number",
          "tags": {
            "units": "celsius"
          }
        },
        "dew-point": {
          "dataType": "number"
        }
      }
    },
    "deviceId-noValidationNoFullDevice": "589de9bca1975a00017b2296",
    "deviceAttribute": "dew-point",
    "deviceTag-withValidation": {
      "key": "DeviceRecipe",
      "value": "Weather Station"
    },
    "deviceTag-noValidation": {
      "key": "DeviceRecipe",
      "value": "Weather Station"
    }
  }
}

Validation Error

Schema for validation errors returned by the API

Validation Error Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "type": {
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "validationErrors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      }
    }
  }
}

Validation Error Example

{
  "type": "Validation",
  "message": "Too many validation errors occurred.",
  "validationErrors": [
    {
      "type": "Notebook",
      "id": "575ec8687ae143cd83dc4a97",
      "name": "myNote",
      "message": "Specified Data Table ID for data table output does not exist"
    }
  ]
}

Virtual Button Press

Schema for the body of a request to press a Workflow virtual button

Virtual Button Press Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string"
    },
    "payload": {},
    "meta": {},
    "flowVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "deviceId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "deploymentId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  },
  "required": [
    "key"
  ],
  "additionalProperties": false
}

Virtual Button Press Example

{
  "key": "575ed18f7ae143cd83dc4aa6-SJaEw_dV",
  "payload": {
    "some": "data"
  }
}

Webhook

Schema for a single Webhook

Webhook Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "webhookId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    },
    "creationDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastUpdated": {
      "type": "string",
      "format": "date-time"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "token": {
      "type": "string",
      "minLength": 1
    },
    "responseCode": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    },
    "verificationType": {
      "type": "string",
      "enum": [
        "facebook",
        "fitbit",
        "none",
        "twilio",
        "alexa"
      ]
    },
    "verificationCode": {
      "type": "string",
      "maxLength": 32767
    },
    "waitForReply": {
      "type": "boolean"
    },
    "basicAuthUsername": {
      "type": "string",
      "maxLength": 255
    },
    "basicAuthPassword": {
      "type": "string",
      "maxLength": 255
    },
    "isWebsocket": {
      "type": "boolean"
    }
  }
}

Webhook Example

{
  "id": "575ed78e7ae143cd83dc4aab",
  "webhookId": "575ed78e7ae143cd83dc4aab",
  "applicationId": "575ec8687ae143cd83dc4a97",
  "creationDate": "2016-06-13T04:00:00.000Z",
  "lastUpdated": "2016-06-13T04:00:00.000Z",
  "name": "My Webhook",
  "token": "the_webhook_token",
  "responseCode": 200,
  "isWebsocket": false
}

Webhook Patch

Schema for the body of a Webhook modification request

Webhook Patch Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "responseCode": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    },
    "verificationType": {
      "type": "string",
      "enum": [
        "facebook",
        "fitbit",
        "none",
        "twilio",
        "alexa"
      ]
    },
    "verificationCode": {
      "type": "string",
      "maxLength": 32767
    },
    "waitForReply": {
      "type": "boolean"
    },
    "basicAuthUsername": {
      "type": "string",
      "maxLength": 255
    },
    "basicAuthPassword": {
      "type": "string",
      "maxLength": 255
    },
    "isWebsocket": {
      "type": "boolean"
    }
  },
  "additionalProperties": false
}

Webhook Patch Example

{
  "name": "My Updated Webhook",
  "responseCode": 201
}

Webhook Post

Schema for the body of a Webhook creation request

Webhook Post Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "description": {
      "type": "string",
      "maxLength": 32767
    },
    "responseCode": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    },
    "verificationType": {
      "type": "string",
      "enum": [
        "facebook",
        "fitbit",
        "none",
        "twilio",
        "alexa"
      ]
    },
    "verificationCode": {
      "type": "string",
      "maxLength": 32767
    },
    "waitForReply": {
      "type": "boolean"
    },
    "basicAuthUsername": {
      "type": "string",
      "maxLength": 255
    },
    "basicAuthPassword": {
      "type": "string",
      "maxLength": 255
    },
    "isWebsocket": {
      "type": "boolean"
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}

Webhook Post Example

{
  "name": "My New Webhook"
}

Webhooks

Schema for a collection of Webhooks

Webhooks Schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "title": "Webhook",
        "description": "Schema for a single Webhook",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "webhookId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
          },
          "creationDate": {
            "type": "string",
            "format": "date-time"
          },
          "lastUpdated": {
            "type": "string",
            "format": "date-time"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "description": {
            "type": "string",
            "maxLength": 32767
          },
          "token": {
            "type": "string",
            "minLength": 1
          },
          "responseCode": {
            "type": "integer",
            "minimum": 100,
            "maximum": 599
          },
          "verificationType": {
            "type": "string",
            "enum": [
              "facebook",
              "fitbit",
              "none",
              "twilio",
              "alexa"
            ]
          },
          "verificationCode": {
            "type": "string",
            "maxLength": 32767
          },
          "waitForReply": {
            "type": "boolean"
          },
          "basicAuthUsername": {
            "type": "string",
            "maxLength": 255
          },
          "basicAuthPassword": {
            "type": "string",
            "maxLength": 255
          },
          "isWebsocket": {
            "type": "boolean"
          }
        }
      }
    },
    "count": {
      "type": "integer"
    },
    "totalCount": {
      "type": "integer"
    },
    "perPage": {
      "type": "integer"
    },
    "page": {
      "type": "integer"
    },
    "filter": {
      "type": "string"
    },
    "filterField": {
      "type": "string"
    },
    "sortField": {
      "type": "string"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "ASC",
        "DESC",
        ""
      ]
    },
    "applicationId": {
      "type": "string",
      "pattern": "^[A-Fa-f\\d]{24}$"
    }
  }
}

Webhooks Example

{
  "items": [
    {
      "id": "575ed78e7ae143cd83dc4aab",
      "webhookId": "575ed78e7ae143cd83dc4aab",
      "applicationId": "575ec8687ae143cd83dc4a97",
      "creationDate": "2016-06-13T04:00:00.000Z",
      "lastUpdated": "2016-06-13T04:00:00.000Z",
      "name": "My Webhook",
      "token": "the_webhook_token",
      "responseCode": 200,
      "isWebsocket": false
    }
  ],
  "count": 1,
  "totalCount": 4,
  "perPage": 1,
  "page": 0,
  "sortField": "name",
  "sortDirection": "asc",
  "applicationId": "575ec8687ae143cd83dc4a97"
}

Was this page helpful?


Still looking for help? You can also search the Losant Forums or submit your question there.