{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/CadVariableDTO",
  "title": "CadVariableDTO",
  "required": [
    "active",
    "agentEditable",
    "agentViewable",
    "defaultValue",
    "name",
    "reportable",
    "variableType"
  ],
  "type": "object",
  "properties": {
    "organizationId": {
      "maxLength": 36,
      "minLength": 32,
      "pattern": "^[0-9a-fA-F]{8}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{12}$",
      "type": "string",
      "description": "ID of the contact center organization. It is required to define for the following operations - All bulk save operations",
      "format": "uuid",
      "example": "f53c8b54-46ca-43f6-ba05-08426a46e23d"
    },
    "id": {
      "type": "string",
      "description": "ID of this contact center resource. It should not be specified when creating a new resource. However, it is mandatory when updating a resource.",
      "example": "93912f11-6017-404b-bf14-5331890b1797"
    },
    "version": {
      "type": "integer",
      "description": "The version of this resource. For a newly created resource, it will be 0 unless specified otherwise.",
      "format": "int32",
      "example": 1
    },
    "name": {
      "maxLength": 80,
      "minLength": 0,
      "pattern": "^[a-zA-Z\\d_]+$",
      "type": "string",
      "description": "A name for the Global Variable.",
      "example": "Global Variable"
    },
    "description": {
      "maxLength": 256,
      "minLength": 0,
      "type": "string",
      "description": "A the description for the Global Variable created.",
      "example": "Global Variable to describe meta-data."
    },
    "active": {
      "type": "boolean",
      "description": "Indicates whether the Global Variable is active or not.",
      "example": true
    },
    "agentEditable": {
      "type": "boolean",
      "description": "Indicates whether the Global Variable is editable in the Agent Desktop by the agent or not.",
      "example": true
    },
    "variableType": {
      "type": "string",
      "description": "A valid Global Variable Type. The valid types are: String, Integer, DateTime, Boolean, Decimal.",
      "example": "INTEGER",
      "enum": [
        "STRING",
        "INTEGER",
        "DATE_TIME",
        "BOOLEAN",
        "DECIMAL",
        "String",
        "Integer",
        "DateTime",
        "Boolean",
        "Decimal"
      ]
    },
    "defaultValue": {
      "maxLength": 256,
      "minLength": 0,
      "type": "string",
      "description": "A default value for the Global Variable.",
      "example": "Default Value"
    },
    "reportable": {
      "type": "boolean",
      "description": "Indicates whether the Global Variable is reportable or not.",
      "example": false
    },
    "agentViewable": {
      "type": "boolean",
      "description": "Indicates whether the agent can view the Global Variable in Agent Desktop or not.",
      "example": true
    },
    "sensitive": {
      "type": "boolean",
      "description": "Indicates whether the Global Variable is sensitive or not.",
      "example": true
    },
    "desktopLabel": {
      "maxLength": 50,
      "minLength": 0,
      "type": "string",
      "description": "A desktop label for the Global Variable created.",
      "example": "Desktop Label"
    },
    "systemDefault": {
      "type": "boolean",
      "description": "Indicates whether the created resource is system created or not",
      "example": false
    },
    "createdTime": {
      "type": "integer",
      "description": "Creation time(in epoch millis) of this resource.",
      "format": "int64",
      "readOnly": true,
      "example": 1617536244000
    },
    "lastUpdatedTime": {
      "type": "integer",
      "description": "Time(in epoch millis) when this resource was last updated.",
      "format": "int64",
      "readOnly": true,
      "example": 1617536244000
    }
  }
}