{
  "openrpc": "1.0.0",
  "info": {
    "title": "QIX",
    "version": "12.2775.0",
    "description": "The JSON-RPC API over websocket that enables you to interact with the Qlik Associative Engine."
  },
  "methods": [
    {
      "name": "Field.GetCardinal",
      "description": "Retrieves the number of distinct values in a field.",
      "params": [],
      "result": {
        "name": "Results for Field.GetCardinal",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "integer"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the number of distinct values of a field](#csh-get-number-distinct-values-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.GetAndMode",
      "description": "Returns the AND mode status of a field.",
      "params": [],
      "result": {
        "name": "Results for Field.GetAndMode",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[SetAndMode method](#services-Field-SetAndMode)",
        "[Select values in a field](#csh-select-values-in-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.SelectValues",
      "description": "Selects some values in a field, by entering the values to select.",
      "params": [
        {
          "name": "qFieldValues",
          "description": "List of the values to select.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldValue"
            }
          }
        },
        {
          "name": "qToggleMode",
          "description": "The default value is false.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Field.SelectValues",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select values in a field](#csh-select-values-in-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.Select",
      "description": "Selects field values matching a search string.",
      "params": [
        {
          "name": "qMatch",
          "description": "String to search for.\nCan contain wild cards or numeric search criteria.\nThe characters &lt;&gt;\"~()='[] have pre-defined meanings when used at the start of the string.\nTo use them, EnableSpecialCharacterEscapingInSearch needs to be enabled and the delimiter \\ needs to precede the special character.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qExcludedValuesMode",
          "description": "Include excluded values in search.",
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Field.Select",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.ToggleSelect",
      "description": "Toggle selects field values matching a search string.",
      "params": [
        {
          "name": "qMatch",
          "description": "String to search for.\nCan contain wild cards or numeric search criteria.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qExcludedValuesMode",
          "description": "Include excluded values in search.",
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Field.ToggleSelect",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Toggle select values of a field](#csh-toggle-select-values-of-a-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.ClearAllButThis",
      "description": "Maintains the selections in the current field while clearing the selections in the other fields.",
      "params": [
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Field.ClearAllButThis",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Clear the selections in all fields except the current field](#csh-clear-selections-in-all-fields-except-current-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.SelectPossible",
      "description": "Selects all possible values in a specific field.",
      "params": [
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Field.SelectPossible",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select all possible values of a field](#csh-select-all-possible-values-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.SelectExcluded",
      "description": "Inverts the current selections.",
      "params": [
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Field.SelectExcluded",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Invert the current selections](#csh-invert-current-selections)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.SelectAll",
      "description": "Selects all values of a field. Excluded values are also selected.",
      "params": [
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Field.SelectAll",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select all values of a field](#csh-select-all-values-field)",
        "[Create and apply a bookmark](#csh-create-and-apply-bookmark)",
        "[Clear the selections of a specific field](#csh-clear-selections-specific-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.Lock",
      "description": "Locks all selected values of a specific field.",
      "params": [],
      "result": {
        "name": "Results for Field.Lock",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.Unlock",
      "description": "Unlocks all selected values of a specific field if the target (or handle ) is a field.",
      "params": [],
      "result": {
        "name": "Results for Field.Unlock",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.GetNxProperties",
      "description": "Gets the properties of a field.\n\n<div class=note>The property _OneAndOnlyOne_ is set to true if one and only value has been selected in the field prior setting the property. </div>",
      "params": [],
      "result": {
        "name": "Results for Field.GetNxProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProperties": {
              "type": "object",
              "$ref": "#/components/schemas/NxFieldProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the properties of a field](#csh-get-properties-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.SetNxProperties",
      "description": "Sets some properties to a field.",
      "params": [
        {
          "name": "qProperties",
          "description": "Information about the properties of the field.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxFieldProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Field.SetNxProperties",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a field](#csh-set-properties-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.SetAndMode",
      "description": "Sets a field in the AND mode.",
      "params": [
        {
          "name": "qAndMode",
          "description": "Specifies if the AND mode applies to the field.\nSet this parameter to true to enter the AND mode.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Field.SetAndMode",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[GetAndMode method](#services-Field-GetAndMode)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.SelectAlternative",
      "description": "Selects all alternatives values in a specific field.\n<div class=note>In a field that contains at least one selected value, the values that are neither selected nor excluded are alternatives values.</div>",
      "params": [
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Field.SelectAlternative",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select all alternative values of a field](#csh-select-alternative-values-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.LowLevelSelect",
      "description": "Selects some values in a field, by entering the element numbers related to the values to select.",
      "params": [
        {
          "name": "qValues",
          "description": "Indexes (or element numbers) of the values to select.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        {
          "name": "qToggleMode",
          "description": "Set to true to keep any selections present in the list object.\nIf this parameter is set to false, selections made before accepting the list object search become alternative.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Field.LowLevelSelect",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Field.Clear",
      "description": "Clears the selections in a specific field.",
      "params": [],
      "result": {
        "name": "Results for Field.Clear",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Variable.GetContent",
      "description": "Returns the calculated value of a variable.",
      "params": [],
      "result": {
        "name": "Results for Variable.GetContent",
        "schema": {
          "type": "object",
          "properties": {
            "qContent": {
              "type": "object",
              "$ref": "#/components/schemas/AlfaNumString"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _GenericVariable::GetProperties_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Variable.GetRawContent",
      "description": "Returns the raw value of a variable.",
      "params": [],
      "result": {
        "name": "Results for Variable.GetRawContent",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _GenericVariable::GetProperties_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Variable.SetContent",
      "description": "Sets a value to a variable.",
      "params": [
        {
          "name": "qContent",
          "description": "Value of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qUpdateMRU",
          "description": "If set to true, the value is added to the Most Recently Used (MRU) list.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Variable.SetContent",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _GenericVariable::SetProperties_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Variable.ForceContent",
      "description": "Sets the value of a dual variable overriding any input constraints.",
      "params": [
        {
          "name": "qs",
          "description": "String representation of a dual value.\nSet this parameter to \"\", if the string representation is to be Null.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qd",
          "description": "Numeric representation of a dual value.",
          "required": true,
          "schema": {
            "type": "number"
          }
        }
      ],
      "result": {
        "name": "Results for Variable.ForceContent",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _GenericVariable::SetProperties_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Variable.GetNxProperties",
      "description": "Gets the properties of a variable.",
      "params": [],
      "result": {
        "name": "Results for Variable.GetNxProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProperties": {
              "type": "object",
              "$ref": "#/components/schemas/NxVariableProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _GetProperties_ method instead",
      "x-qlik-see-also": [
        "[Get the properties of a variable](#csh-get-properties-variable)"
      ],
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Variable.SetNxProperties",
      "description": "Sets some properties to a variable.",
      "params": [
        {
          "name": "qProperties",
          "description": "Information about the properties of the variable",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxVariableProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Variable.SetNxProperties",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _SetProperties_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.GetLayout",
      "description": "Evaluates an object and displays its properties including the dynamic properties.\nIf the member _delta_ is set to true in the request object, only the delta is evaluated. A _GetLayout_ call on a generic object, returns up to one level down in the hierarchy.\n\n### Example:\n_A_ is a generic object and is the parent of the objects B and C. _B_ is the parent of the objects D and E.\nA _GetLayout_ call on A returns information on the objects A, B and C.\nA _GetLayout_ call on B returns information on the objects B, D and E.\nA  _GetLayout_ call on C returns information on the object C.\n<div class=note>\nIn addition to the parameters displayed above, the **GetLayout** method can return other properties according to what is defined in the generic object.\nFor example, if **qHyperCubeDef** is defined in the generic object, the **GetLayout** method returns the properties described in _HyperCube_.\n</div>",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetLayout",
        "schema": {
          "type": "object",
          "properties": {
            "qLayout": {
              "type": "object",
              "$ref": "#/components/schemas/GenericObjectLayout"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the layout of a bookmark](#csh-get-layout-bookmark)",
        "[List the dimensions in an app](#csh-list-dimensions-in-app)",
        "[List the fields in an app](#csh-list-fields-in-app)",
        "[List the measures in an app](#csh-list-measures-in-app)",
        "[Get the delta of the layout](#csh-get-delta-layout)",
        "[Get the layout of a generic object](#csh-get-layout-generic-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetListObjectData",
      "description": "Retrieves the values of a list object.\nA data set is returned.\n\n### Limitations on the number of cells\nThe maximum for the combined total number of cells across all pages is:\n* 10,000 cells. If this limit is exceeded, a calc-pages-too-large error with code 7009 is returned.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPages",
          "description": "Array of pages you are interested in.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPage"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetListObjectData",
        "schema": {
          "type": "object",
          "properties": {
            "qDataPages": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxDataPage"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the values of a list object](#csh-get-values-listbox)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetHyperCubeData",
      "description": "Retrieves the calculated data for a chart, a table, or a scatter plot. It is possible to retrieve specific pages of data.\n<div class=note>This method works for a hypercube in DATA_MODE_STRAIGHT.</div>\nA data set is returned.\n\n### Limitations on the number of cells\nThe maximum for the combined total number of cells across all pages is:\n* 10,000 cells. If this limit is exceeded, a calc-pages-too-large error with code 7009 is returned.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPages",
          "description": "Array of pages to retrieve.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPage"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetHyperCubeData",
        "schema": {
          "type": "object",
          "properties": {
            "qDataPages": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxDataPage"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Add attribute expressions to a measure](#csh-add-attribute-expressions-to-measure)",
        "[Get the values of a chart, a table or a scatter plot](#csh-get-values-chart-table)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetHyperCubeReducedData",
      "description": "Reduces the data of a bar chart, a line chart or a scatter plot chart and retrieves them.\nThe reduction is dependent on the zoom factor (parameter _qZoomFactor_ ) and on the reduction mode.\n<div class=note>This method can be used to create mini charts.</div>\n\n### Bar chart or line chart data reduction\nFor the data reduction to happen, the following conditions must be fulfilled:\n* The values cannot fit in the defined page (parameter _qPages_ ).\n* The zoom factor is not 0 (parameter _qZoomFactor_ ).\n* The reduction mode must be set to D1.\n\nThe reduction algorithm keeps the shape of the visualizations and works whatever the number of dimensions in the chart. The global profile of the chart is reduced, and not only a specific dimension. A visualization that has been reduced contains fewer values but its shape is the same. Data of all types can be reduced. Therefore it is hard to relate the values before and after a reduction especially when reducing string values.\n\n### Example\nIf you have a chart with 1 million data, and you have set the zoom factor to 5, the _GetHyperCubeReducedData_ method reduces the chart and retrieves 200 000 data.\n\n### Scatter plot chart data reduction\nThe reduction mode must be set to C.\nThis reduction mechanism follows the 2D K-Means algorithm. Data are reduced into a number of clusters. Each data is assigned to a specific centroid.\nThe number of centroids can be defined in the parameter _qZoomFactor_.\n\n### Scatter plot chart resolution reduction\nThe reduction mode must be set to S.\nThe resolution is reduced according to the zoom factor (parameter _qZoomFactor_ ).\n\n### Example\nIf you have a scatter plot chart and the zoom factor is set to 2, the scatter plot chart resolution is reduced by 4.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPages",
          "description": "Array of pages.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPage"
            }
          }
        },
        {
          "name": "qZoomFactor",
          "description": "Defines the zoom factor.\nIf set to -1, the engine decides of the zoom factor.\n* If the reduction mode is _D1_ or _S_ , the zoom factor is 2ⁿ. If the zoom factor is 5, the data are reduced by a factor 32.\n* If the reduction mode is _C_ , the zoom factor defines the number of centroids.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qReductionMode",
          "description": "Defines the reduction mode.\n\nOne of:\n* N or DATA_REDUCTION_NONE\n* D1 or DATA_REDUCTION_ONEDIM\n* S or DATA_REDUCTION_SCATTERED\n* C or DATA_REDUCTION_CLUSTERED\n* ST or DATA_REDUCTION_STACKED",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetHyperCubeReducedData",
        "schema": {
          "type": "object",
          "properties": {
            "qDataPages": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxDataPage"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Reduce the values of a chart](#csh-reduce-values-chart)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetHyperCubePivotData",
      "description": "Retrieves the values of a pivot table. It is possible to retrieve specific pages of data.\n<div class=note>This method works for a hypercube in DATA_MODE_PIVOT.</div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPages",
          "description": "Array of pages to retrieve.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPage"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetHyperCubePivotData",
        "schema": {
          "type": "object",
          "properties": {
            "qDataPages": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxPivotPage"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the values of a pivot table](#csh-get-values-pivot-table)",
        "[Sort by the values of a measure in a pivot table](#csh-sort-by-values-of-measure-in-pivot)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetHyperCubeStackData",
      "description": "Retrieves the values of a stacked pivot table. It is possible to retrieve specific pages of data.\n<div class=note>This method works for a hypercube in DATA_MODE_PIVOT_STACK.</div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPages",
          "description": "Array of pages to retrieve.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPage"
            }
          }
        },
        {
          "name": "qMaxNbrCells",
          "description": "Maximum number of cells at outer level.\nThe default value is 10 000.",
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetHyperCubeStackData",
        "schema": {
          "type": "object",
          "properties": {
            "qDataPages": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxStackPage"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the values of a stacked table](#csh-get-values-stacked-table)",
        "[Sort by the values of a measure in a stacked pivot table](#csh-sort-by-values-of-measure-in-stacked-pivot)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetHyperCubeContinuousData",
      "description": "Retrieves and packs compressed hypercube and axis data. It is possible to retrieve specific pages of data.\n<div class=note>Binning is done on the time stamp data as well as the date. This means that you can zoom in to a level of granularity as low as seconds.</div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qOptions",
          "description": "Defines the data to return.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxContinuousDataOptions"
          }
        },
        {
          "name": "qReverseSort",
          "description": "If set to true the returned data pages are reverse sorted.\nOptional.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetHyperCubeContinuousData",
        "schema": {
          "type": "object",
          "properties": {
            "qDataPages": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxDataPage"
              }
            },
            "qAxisData": {
              "type": "object",
              "$ref": "#/components/schemas/NxAxisData"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetHyperCubeTreeData",
      "description": "Retrieves data for nodes in a tree structure. It is possible to retrieve specific pages of data.\n<div class=note>This method works for a treedata object or a hypercube in DATA_MODE_TREE.</div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qNodeOptions",
          "description": "Specifies all the paging filters needed to define the tree to be fetched. If left out the complete tree is returned.",
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxTreeDataOption"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetHyperCubeTreeData",
        "schema": {
          "type": "object",
          "properties": {
            "qNodes": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxTreeNode"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "stable"
    },
    {
      "name": "GenericObject.GetHyperCubeBinnedData",
      "description": "This method supports data binning.\nWhen a generic object with two or three measures and one dimension contains a lot of data, groups of points (for example, cells) can be rendered instead of points.\nA zone of interest can be refined (for zooming in) up to a maximum refinement level (set in the _qQueryLevel_ parameter) or coarsened (for zoom out).\nThe grid of cells is adaptive (not static), meaning that it adapts to different length scales.\nThe _GetHyperCubeBinnedData_ method gives information about the adaptive grid and the values of the generic object.\nThe number of points in a cell and the coordinates (expressed in the measure range) of each cell are returned.\nDimension values and measure values are rendered at point level (highest detailed level).\n<div class=note>The generic object should contain two or three measures and one dimension. When the refinement is high, the first two measures are represented on the x-axis and on the y-axis, while the third measure is visualized as color or point size.</div>\n\n### Adaptive Grid\nMore details about the properties of the adaptive grid are given in this paragraph.\nWhen the refinement is not the highest (cells are rendered), information about the adaptive grid is returned through several arrays.\nThe first array contains the following properties:\n<table>\n<tbody>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qNum</td>\n<td>Maximum number of points that a cell can contain.</td>\n<td>String</td>\n</tr>\n<tr>\n<td>qElemNumber</td>\n<td>Is set to 0.</td>\n<td>Boolean</td>\n</tr>\n<tr>\n<td>qState</td>\n<td>The default value is L.</td>\n<td>One of:\n<ul>\n<li>L for Locked</li>\n<li>S for Selected</li>\n<li>O for Optional</li>\n<li>D for Deselected</li>\n<li>A for Alternative</li>\n<li>X for eXcluded</li>\n<li>XS for eXcluded Selected</li>\n<li>XL for eXcluded Locked</li>\n</ul>\n</td>\n</tr>\n</tbody>\n</table>\n\nThe next arrays give the coordinates of each cell in the page.\nEach array contains the following properties:\n<table>\n<tbody>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qText</td>\n<td>Coordinates of a cell in the measure range.<br>“qText”: “[[&lt;left&gt;, &lt;top&gt;, &lt;right&gt;, &lt;bottom&gt;], [&lt;left&gt;, &lt;top&gt;, &lt;right&gt;, &lt;bottom&gt;], .... [&lt;left&gt;, &lt;top&gt;, &lt;right&gt;, &lt;bottom&gt;]]<br>Where:<br>&lt; <i>left</i> &gt;, <i>&lt; top</i> &gt;, &lt; <i>right</i> &gt; and &lt; <i>bottom</i> &gt; are the coordinates of the cell in the measure range.</td>\n<td>String</td>\n</tr>\n<tr>\n<td>qNum</td>\n<td>Number of points in the cell.</td>\n<td>Double precision floating point</td>\n</tr>\n<tr>\n<td>qElemNumber</td>\n<td>Unique identifier for each cell, calculated by the engine during the construction of the grid.<br>This element number is not stored in the database and can have a positive or a negative value.</td>\n<td>Integer</td>\n</tr>\n<tr>\n<td>qState</td>\n<td>The default value is L.</td>\n<td>One of:\n<ul>\n<li>L for Locked</li>\n<li>S for Selected</li>\n<li>O for Optional</li>\n<li>D for Deselected</li>\n<li>A for Alternative</li>\n<li>X for eXcluded</li>\n<li>XS for eXcluded Selected</li>\n<li>XL for eXcluded Locked</li>\n</ul>\n</td>\n</tr>\n</tbody>\n</table>\n\n<div class=note>Cells are represented as rectangles.</div>\n\n### Dimension values and measures values\nMore details about the properties, when dimension and measure values are returned, are given in this paragraph.\nWhen the refinement is high, points are rendered (not cells) and dimension and measure values for each cell are returned.\nThe first array is empty because no information on the adaptive grid is needed.\nThe next arrays bring information about the dimension and the measure values.\n<table>\n<tbody>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qText</td>\n<td>Text value of the dimension or the measure.</td>\n<td>String</td>\n</tr>\n<tr>\n<td>qNum</td>\n<td>Numerical value of the dimension or the measure.<br>Is set to 0 if the value is only text.</td>\n<td>Double precision floating point</td>\n</tr>\n<tr>\n<td>qElemNumber</td>\n<td>Unique identifier for each cell, calculated by the engine during the construction of the grid.<br>This element number is not stored in the database and can have a positive or a negative value.</td>\n<td>Integer</td>\n</tr>\n<tr>\n<td>qState</td>\n<td>The default value is L.</td>\n<td>One of:\n<ul>\n<li>L for Locked</li>\n<li>S for Selected</li>\n<li>O for Optional</li>\n<li>D for Deselected</li>\n<li>A for Alternative</li>\n<li>X for eXcluded</li>\n<li>XS for eXcluded Selected</li>\n<li>XL for eXcluded Locked</li>\n</ul>\n</td>\n</tr>\n</tbody>\n</table>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPages",
          "description": "Array of pages to retrieve.\nSince the generic object contains two measures and one dimension, _qWidth_ should be set to 3.\nIf the value of a measure is Null, the value cannot be rendered. Therefore, the number of elements rendered in a page can be less than the number defined in the property _qHeight_ .",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPage"
            }
          }
        },
        {
          "name": "qViewport",
          "description": "Defines the canvas and the zoom level.\nThis parameter is not yet used and is optional.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxViewPort"
          }
        },
        {
          "name": "qDataRanges",
          "description": "Range of the data to render.\nThis range applies to the measure values.\nThe lowest and highest values of a measure can be retrieved by using the _GetLayout method_ (in _/qHyperCube/qMeasureInfo_ ).",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxDataAreaPage"
            }
          }
        },
        {
          "name": "qMaxNbrCells",
          "description": "Maximum number of cells in the grid.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qQueryLevel",
          "description": "Level of details. The higher the level, the more detailed information you get (zoom-in).\nWhen the number of points to render falls below a certain threshold, the values are no longer rendered as cells but as points.\nThe query level should be no greater than 20.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qBinningMethod",
          "description": "Selects the algorithm.\nThe default value is 0.\nOne of:\n* 0: Adaptive grid\n* 1: Hexagonal grid\n* 2: Uniform grid",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetHyperCubeBinnedData",
        "schema": {
          "type": "object",
          "properties": {
            "qDataPages": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxDataPage"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the adaptive grid and the values of a generic object](#csh-get-adaptive-grid-values-generic-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.ApplyPatches",
      "description": "Applies a patch to the properties of an object. Allows an update to some of the properties.\nIt is possible to apply a patch to the properties of a generic object, that is not persistent. Such a patch is called a soft patch.\nIn that case, the result of the operation on the properties (add, remove or delete) is not shown when doing _GetProperties_ , and only a _GetLayout_ call shows the result of the operation.\nProperties that are not persistent are called soft properties. Once the engine session is over, soft properties are cleared. It should not be possible to patch \"/qInfo/qId\",\nand it will be forbidden in the near future.\n<div class=note>Soft properties apply only to generic objects.</div>",
      "params": [
        {
          "name": "qPatches",
          "description": "Array of patches.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPatch"
            }
          }
        },
        {
          "name": "qSoftPatch",
          "description": "If set to true, it means that the properties to be applied are not persistent. The patch is a soft patch.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.ApplyPatches",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Add some properties to an object](#csh-add-properties)",
        "[Remove some properties](#csh-remove-properties)",
        "[Update some properties of an object](#csh-update-properties)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.ClearSoftPatches",
      "description": "Clears the soft properties of a generic object.\nFor more information on how to add soft properties to a generic object, see _ApplyPatches Method_.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.ClearSoftPatches",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Remove a soft patch or soft properties](#csh-remove-soft-patch)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SetProperties",
      "description": "Sets some properties for a generic object.\n<div class=note>The properties depends on the generic object type, see [properties](genericobject-property.html).</div>",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the generic object.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectProperties"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SetProperties",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a bookmark](#csh-set-properties-bookmark)",
        "[Set the properties of an object](#csh-set-properties)",
        "[SetFullPropertyTree method](#services-GenericObject-SetFullPropertyTree)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.GetProperties",
      "description": "Returns the identifier, the type and the properties of the object.\nBecause it is not mandatory to set all properties when you define an object, the _GetProperties_ method may show properties that were not set. In that case, default values are given.\nIf the object contains some soft properties, the soft properties are not returned by the _GetProperties_ method. Use the _GetEffectiveProperties method_ instead.\nIf the object is linked to another object, the properties of the linking object are not returned by the _GetProperties_ method. Use the _GetEffectiveProperties method_ instead.\n<div class=note>The properties depends on the generic object type, see [properties](genericobject-layout.html).</div>\n<div class=note>If the member delta is set to true in the request object, only the delta is retrieved.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProp": {
              "type": "object",
              "$ref": "#/components/schemas/GenericObjectProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a bookmark](#csh-set-properties-bookmark)",
        "[Get the delta of properties](#csh-get-delta-properties)",
        "[Get the properties of an object](#csh-get-properties)",
        "[Set the properties of an object](#csh-set-properties)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetEffectiveProperties",
      "description": "Returns the identifier, the type and the properties of the object.\nIf the object contains some soft properties, the soft properties are returned.\nIf the object is linked to another object, the properties of the linking object are returned.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetEffectiveProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProp": {
              "type": "object",
              "$ref": "#/components/schemas/GenericObjectProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the properties of an object](#csh-get-properties)",
        "[GetProperties method](#services-GenericObject-GetProperties)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SetFullPropertyTree",
      "description": "Sets the properties of:\n* A generic object.\n* The children of the generic object.\n* The bookmarks/embedded snapshots of the generic object.\n\n<div class=note>If the _SetFullPropertyTree method_ is asked to set some properties to a child that does not exist, it creates the child. </div> <div class=note>The type of an object cannot be updated.</div>",
      "params": [
        {
          "name": "qPropEntry",
          "description": "Information about the generic object entry.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectEntry"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SetFullPropertyTree",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of an object](#csh-set-properties)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.GetFullPropertyTree",
      "description": "Gets the properties of:\n* A generic object.\n* The children of the generic object.\n* The bookmarks/embedded snapshots of the generic object.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetFullPropertyTree",
        "schema": {
          "type": "object",
          "properties": {
            "qPropEntry": {
              "type": "object",
              "$ref": "#/components/schemas/GenericObjectEntry"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of an object](#csh-set-properties)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetInfo",
      "description": "Returns the type and identifier of the object.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetInfo",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.ClearSelections",
      "description": "Clears the selections in a dimension of a visualization.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the visualization.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qColIndices",
          "description": "Array of dimension numbers or indexes. The selections are cleared in the specified dimensions.\nDimension numbers/indexes start from 0.\nIf this parameter is not set, all dimensions are cleared.",
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.ClearSelections",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Clear the selections in a visualization](#csh-clear-selections-in-visualization)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.ExportData",
      "description": "Exports the data of any generic object to an Excel file or a open XML file. If the object contains excluded values, those excluded values are not exported.\nThis API has limited functionality and will not support CSV export from all types of objects. Consider using Excel export instead. Treemap and bar chart are not supported.\n<div class=note>ExportData method is not supported in SaaS Editions of Qlik Sense.</div>\n\n### Default limitations in number of rows and columns\nThe default maximum number of rows and columns in the Excel export file is:\n* 1048566 rows per sheet. For pivot tables: 1048566 column dimensions. 10 rows can be added after the export.\n* 16384 columns per sheet. If the number of columns exceeds the limit, the exported file is truncated and a warning message is sent.\n\n### Default limitation in number of columns\nThe default maximum number of columns in the export file is:\n* 1000 to export to a CSV file\n\n### Default limitations in number of cells\nThe default maximum number of cells in the export file is:\n* 5000000 to export to a CSV file\n\nThe exported file is truncated if the number of cells exceeds the limit. A warning message with code 1000 is sent.\n<div class=note>There is an option to export only the possible values ( _qExportState_ is P). </div>\n\n### Default limitation in size\nIf the exported file is larger than the maximum value, then an out-of-memory error with code 13000 is returned.\n\n<div class=note>Exported files are temporary and are available only for a certain time span and only to the user who created them.</div>",
      "params": [
        {
          "name": "qFileType",
          "description": "Type of the file to export.\n\nOne of:\n* CSV_C or EXPORT_CSV_C\n* CSV_T or EXPORT_CSV_T\n* OOXML or EXPORT_OOXML\n* PARQUET or EXPORT_PARQUET",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be exported.\nFor example, _/qHyperCubeDef_ .\nThis parameter is mandatory if the file type is _CSV_C_ or _CSV_T_ .",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qFileName",
          "description": "Name of the exported file after download from browser.\nThis parameter is optional and only used in Qlik Sense Desktop.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qExportState",
          "description": "Defines the values to be exported.\nThe default value is A.\n\nOne of:\n* P or EXPORT_POSSIBLE\n* A or EXPORT_ALL",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qServeOnce",
          "description": "If the exported file should be served only once\nThis parameter is optional and only used in Qlik Sense Enterprise (Windows)\nDefault value: false",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.ExportData",
        "schema": {
          "type": "object",
          "properties": {
            "qUrl": {
              "type": "string"
            },
            "qWarnings": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int32"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Export the data of a generic object](#csh-export-data-GO)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "exportdata"
      ]
    },
    {
      "name": "GenericObject.SelectListObjectValues",
      "description": "Makes single selections in dimensions.\n<div class=note>This method applies to list objects only.</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qValues",
          "description": "Element numbers to select.\nYou can select multiple values; the separator is the comma.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        {
          "name": "qToggleMode",
          "description": "Set to true to toggle.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectListObjectValues",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select values in a list object](#csh-select-some-values-in-list-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SelectListObjectPossible",
      "description": "Selects all possible values of a list object.\n<div class=note>This method applies to list objects (objects with one dimension).</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectListObjectPossible",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select all possible values of a list object](#csh-select-all-possible-values-list-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SelectListObjectExcluded",
      "description": "Inverts the current selections in a specific field.\n<div class=note>This method applies to list objects (objects with one dimension).</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains some invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectListObjectExcluded",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select all excluded values of a list object](#csh-select-excluded-values-list-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SelectListObjectAlternative",
      "description": "Selects all alternative values in a specific field.\n<div class=note>This method applies to list objects (objects with one dimension).</div> <div class=note>If a field contains at least one selected value, the values that are neither selected nor excluded are alternatives values.</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains some invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectListObjectAlternative",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select all alternative values of a field](#csh-select-alternative-values-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SelectListObjectAll",
      "description": "Selects all values of a field.\n<div class=note>This method applies to list objects (objects with one dimension).</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains some invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectListObjectAll",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select all values of a field](#csh-select-all-values-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SelectListObjectContinuousRange",
      "description": "The following is returned in the output:\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRanges",
          "description": "Selects ranges in a hypercube in (Ranges[N].Min,Ranges[N].Max) intervals.\nIf either Ranges[N].MinInclEq or Ranges[N].MaxInclEq, or both flags are set to _true_ then _Min_ and _Max_ values will be selected.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Range"
            }
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectListObjectContinuousRange",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SearchListObjectFor",
      "description": "Searches for a string in a list object.\n<div class=note>This method applies to list objects (objects with one dimension).</div> <div class=note>The search results can be displayed using the _GetLayout Method_. </div>\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the list object.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qMatch",
          "description": "Search string.\nWild card characters are allowed. The search is not case sensitive.\nExamples:\n* `P*U*`: retrieves only values that start with P and contain U\n* `P U S`: retrieves values that start with P, U or S",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SearchListObjectFor",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Abort the results of a search in a list object](#csh-abort-results-search-list-object)",
        "[Accept the results of a search in a list object](#csh-accept-results-search-list-object)",
        "[Search for a string in a list object](#csh-search-string-in-list-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.AbortListObjectSearch",
      "description": "Aborts the results of a search in a list object.\n<div class=note>This method applies to list objects (objects with one dimension).</div> <div class=note> After an abort on a list object search, the _GetLayout Method_ does not return any more search results but it does return the values in the field. </div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the list object.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.AbortListObjectSearch",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Abort the results of a search in a list object](#csh-abort-results-search-list-object)",
        "[Accept the results of a search in a list object](#csh-accept-results-search-list-object)",
        "[Search for a string in a list object](#csh-search-string-in-list-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.AcceptListObjectSearch",
      "description": "Accept the results of a search in a list object. The search results become selected in the field.\n<div class=note>This method applies to list objects (objects with one dimension).</div> <div class=note>The search results are displayed using the _GetLayout Method_. </div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the list object.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qToggleMode",
          "description": "Set to true to keep any selections present in the list object.\nIf this parameter is set to false, selections made before accepting the list object search become alternative.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.AcceptListObjectSearch",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Abort the results of a search in a list object](#csh-abort-results-search-list-object)",
        "[Accept the results of a search in a list object](#csh-accept-results-search-list-object)",
        "[Search for a string in a list object](#csh-search-string-in-list-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.ExpandLeft",
      "description": "Expands the left dimensions of a pivot table. This method applies only to pivot tables that are not always fully expanded.\nIn the definition of the hypercube (in _HyperCubeDef_ ), the parameter _qAlwaysFullyExpanded_ must be set to false.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be expanded.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRow",
          "description": "Row index in the data matrix to expand.\nIndexing starts from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qCol",
          "description": "Column index. The index is based on the left dimension indexes.\nIndexing starts from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qAll",
          "description": "If set to true, it expands all cells.\nParameters _qRow_ and _qCol_ are not used if _qAll_ is set to true, but they need to be set (for example to 0).",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.ExpandLeft",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Collapse or expand the left dimensions of a pivot table](#csh-collapse-expand-left-dimensions-pivot-table)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.ExpandTop",
      "description": "Expands the top dimensions of a pivot table. This method applies only to pivot tables that are not always fully expanded.\nIn the definition of the hypercube (in _HyperCubeDef_ ), the parameter _qAlwaysFullyExpanded_ must be set to false.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be expanded.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRow",
          "description": "Row index. The index is based on the top dimension indexes.\nIndexing starts from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qCol",
          "description": "Column index in the data matrix.\nIndexing starts from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qAll",
          "description": "If set to true, it expands all cells.\nParameters _qRow_ and _qCol_ are not used if _qAll_ is set to true, but they need to be set (for example to 0).",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.ExpandTop",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Collapse or expand the top dimensions of a pivot table](#csh-collapse-expand-top-dimensions-pivot-table)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.CollapseLeft",
      "description": "Collapses the left dimensions of a pivot table. This method applies only to pivot tables that are not always fully expanded.\nIn the definition of the hypercube (in _HyperCubeDef_ ), the parameter _qAlwaysFullyExpanded_ must be set to false.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be collapsed.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRow",
          "description": "Row index in the data matrix.\nIndexing starts from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qCol",
          "description": "Column index. The index is based on the left dimension indexes.\nIndexing starts from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qAll",
          "description": "If set to true, it collapses all cells.\nParameters _qRow_ and _qCol_ are not used if _qAll_ is set to true, but they need to be set (for example to 0).",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.CollapseLeft",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Collapse or expand the left dimensions of a pivot table](#csh-collapse-expand-left-dimensions-pivot-table)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.CollapseTop",
      "description": "Collapses the top dimensions of a pivot table. This method applies only to pivot tables that are not always fully expanded.\nIn the definition of the hypercube (in _HyperCubeDef_ ), the parameter _qAlwaysFullyExpanded_ must be set to false.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be collapsed\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRow",
          "description": "Row index. The index is based on the top dimension indexes.\nIndexing starts from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qCol",
          "description": "Column index in the data matrix.\nIndexing starts from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qAll",
          "description": "If set to true, it collapses all cells.\nParameters _qRow_ and _qCol_ are not used if _qAll_ is set to true, but they need to be set (for example to 0).",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.CollapseTop",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Collapse or expand the top dimensions of a pivot table](#csh-collapse-expand-top-dimensions-pivot-table)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.DrillUp",
      "description": "You can use the drillUp method with any object that contains a drill-down group as a dimension.\nThis method allows you to move between different levels of information (from a detailed level to a less detailed level of information). You can go back to previous visualizations up to the highest level of the hierarchy.\nIf you try to drill up more steps than there are available levels, the first level of the hierarchy is displayed.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDimNo",
          "description": "Dimension number or index starting from 0.\nThe default value is 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qNbrSteps",
          "description": "Number of steps you want to drill up.\nThe default value is 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.DrillUp",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Drill up a hierarchy](#csh-drill-up-hierarchy)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.Lock",
      "description": "Locks the selected values of a generic object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qColIndices",
          "description": "Dimension numbers or dimension indexes where the lock should apply.\nDimension numbers/indexes start from 0.\nIf this parameter is not set, the selected values in all dimensions are locked.",
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.Lock",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.Unlock",
      "description": "Unlocks the selected values of a generic object if the target (or handle ) is a generic object",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qColIndices",
          "description": "Dimension numbers/indexes where the unlock should apply.\nDimension numbers/indexes start from 0.\nIf this parameter is not set, the locked values in all dimensions are unlocked.",
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.Unlock",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.StepCycle",
      "description": "You can use the StepCycle method with any object that contains a cyclic group as a dimension.\nThis method allows you to move between different fields in a cyclic dimension.\nA hypercube will avoid field collisions with its other dimensions when cycling in this manner. If all other fields cause collisions then no cycling is performed.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDimNo",
          "description": "Dimension number or index starting from 0.\nThe default value is 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qNbrSteps",
          "description": "Number of steps you want to cycle.\nPositive values cycle forwards while negative values cycle backwards. A value of 0 leads to no action being taken.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.StepCycle",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "GenericObject.SetActiveField",
      "description": "You can use the SetActiveField method with any object that contains a cyclic group as a dimension.\nThis method allows you to jump to a specific field in a cyclic dimension. If NewIndex is out-of-bounds of the dimension's fields then no action is taken.\nA hypercube will avoid field collisions with its other dimensions when setting the active field in this manner. If there are any collisions then no action is performed.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDimNo",
          "description": "Dimension number or index starting from 0.\nThe default value is 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qNewIndex",
          "description": "Index of the field to jump to.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SetActiveField",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "GenericObject.SelectHyperCubeValues",
      "description": "Selects some values in one dimension.\nThe values are identified by their element numbers.\n<div class=note>This method applies to charts, tables and scatter plots.</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains some invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDimNo",
          "description": "Dimension number or index to select.\nDimension numbers/index start from 0.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qValues",
          "description": "Element numbers of the field to select.\nYou can select multiple elements; the separator is the comma.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        {
          "name": "qToggleMode",
          "description": "Set to true to toggle.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectHyperCubeValues",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Drill up a hierarchy](#csh-drill-up-hierarchy)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SelectHyperCubeCells",
      "description": "Makes selections in multiple dimensions and measures.\n<div class=note> This method applies to hypercubes, such as bar charts, tables and scatter plots.</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains some invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRowIndices",
          "description": "Array of row indexes to select, starting from 0.\nIf the array is empty _[ ]_ , all rows are selected.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        {
          "name": "qColIndices",
          "description": "Indexes of the columns to select, starting from 0.\nA column corresponds to a dimension in the order they are added to the hypercube.\nIf a column is hidden it is ignored, qColIndex n refers to the n:th visible column (starting from zero).\nExample:\nIf the hypercube has two dimensions:\n* [0] selects the first column (i.e the first dimension).\n* [1] selects the second column (i.e the second dimension).\n\nIf the array is empty _[ ]_ , all columns are selected.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qDeselectOnlyOneSelected",
          "description": "Set this parameter to true to unselect the last single selected value. There must be only one selected value in the field.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectHyperCubeCells",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select a set of cells in a hypercube](#csh-select-set-of-cells-in-hypercube)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.SelectPivotCells",
      "description": "<div class=note>This method only applies to hypercubes that are not represented as straight tables. The parameter _qMode_ in _HyperCubeDef_ must be set either to _P_  or _K_ . </div>\n\n### Pivot table\nMakes selections in the top or left dimension cells of a pivot table or in the data matrix. Only expanded dimensions can be selected.\n\n### Stacked table\nMakes selections in the left dimension cells of a stacked table or in the data matrix.\n<div class=note>There is no top dimensions in a stacked table. A stacked table can only contain one measure.</div>\n\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains some invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSelections",
          "description": "Information about the selections to perform.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxSelectionCell"
            }
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qDeselectOnlyOneSelected",
          "description": "Set this parameter to true to unselect the last single selected value. There must be only one selected value in the field.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectPivotCells",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select dimension cells in a pivot table](#csh-select-dimension-cells-in-pivot-table)",
        "[Select dimension cells in a stacked table](#csh-select-dimension-cells-in-stacked-table)",
        "[Select values in a pivot table](#csh-select-values-in-pivot-table)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.RangeSelectHyperCubeValues",
      "description": "Makes range selections in measures.\n<div class=note> This method applies to hypercubes. For example, bar charts, tables and scatter plots.</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains some invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRanges",
          "description": "Ranges of selections.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxRangeSelectInfo"
            }
          }
        },
        {
          "name": "qColumnsToSelect",
          "description": "Indicates which dimensions to select.\nThe dimensions numbering starts at 0 (first dimension is 0).\nIf the array is empty, all dimensions are selected.",
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        {
          "name": "qOrMode",
          "description": "Applies to hypercubes with multiple measures.\nIf set to true, it means that at least one of the measures must be in the range of selections for the group of measures to be selected.\nIf set to false, it means that all measures must be in the range of selections for the group of measures to be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qDeselectOnlyOneSelected",
          "description": "Set this parameter to true to unselect the last single selected value. There must be only one selected value in the field.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.RangeSelectHyperCubeValues",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Select a range of values in a hypercube](#csh-select-range-measures-in-hypercube)",
        "[Select a range of values in a hypercube](#csh-select-range-measures-in-hypercube)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.MultiRangeSelectHyperCubeValues",
      "description": "Makes multiple range selections in measures.\n<div class=note> This method applies to hypercubes. For example, bar charts, tables and scatter plots.</div>\nThe member **Change** returns the handles of the objects that are updated following the selections.\n_qSuccess_ is set to _true_ if the selections are successful and is set to _false_ in the following cases:\n* The object contains some invalid fields (fields that are not in the data model).\n* The selection applies to a locked field.\n* A range selection is performed and the parameter _OneAndOnlyOne_ is set to true in the definition of the object.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRanges",
          "description": "Ranges of selections.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxMultiRangeSelectInfo"
            }
          }
        },
        {
          "name": "qOrMode",
          "description": "Applies to hypercubes with multiple measures.\nIf set to true, it means that at least one of the measures must be in the range of selections for the group of measures to be selected.\nIf set to false, it means that all measures must be in the range of selections for the group of measures to be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qDeselectOnlyOneSelected",
          "description": "Set this parameter to true to unselect the last single selected value. There must be only one selected value in the field.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.MultiRangeSelectHyperCubeValues",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.MultiRangeSelectTreeDataValues",
      "description": "",
      "params": [
        {
          "name": "qPath",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRanges",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxTreeMultiRangeSelectInfo"
            }
          }
        },
        {
          "name": "qOrMode",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qDeselectOnlyOneSelected",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.MultiRangeSelectTreeDataValues",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "stable"
    },
    {
      "name": "GenericObject.SelectHyperCubeContinuousRange",
      "description": "The following is returned in the output:\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object.\nFor example, _/qHyperCubeDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRanges",
          "description": "Selects ranges in a hypercube in (Ranges[N].Min,Ranges[N].Max) intervals.\nIf either Ranges[N].MinInclEq or Ranges[N].MaxInclEq, or both flags are set to _true_ then _Min_ and _Max_ values will be selected.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxContinuousRangeSelectInfo"
            }
          }
        },
        {
          "name": "qSoftLock",
          "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SelectHyperCubeContinuousRange",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetChild",
      "description": "Returns the type of the object and the corresponding handle.",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the object.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.GetChild",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the handle of a child](#csh-get-handle-child)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetParent",
      "description": "Returns the type of the object and the corresponding handle to the parent object in the hiearchy.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetParent",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.GetChildInfos",
      "description": "Returns the identifier and the type for each child in an app object. If the child contains extra properties in _qInfos_ , these properties are returned.\n\nFull dynamic properties are optional and are returned if they exist in the definition of the object.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetChildInfos",
        "schema": {
          "type": "object",
          "properties": {
            "qInfos": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the children of a generic object](#csh-list-childs-in-generic-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.CreateChild",
      "description": "Creates a generic object that is a child of another generic object.\n<div class=note>It is possible to update the properties of the child's parent at the same time that the child is created. Both operations are performed by the same call.</div> <div class=note>It is possible to create a child that is linked to another generic object. The two objects have the same properties.</div>",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the child.\nIt is possible to create a child that is linked to another object.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectProperties"
          }
        },
        {
          "name": "qPropForThis",
          "description": "Identifier of the parent's object.\nShould be set to update the properties of the parent's object at the same time the child is created.",
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectProperties"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.CreateChild",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Add a slide to a story](#csh-add-slide)",
        "[Create a hypercube](#csh-create-hypercube)",
        "[Create a list object](#csh-create-listObject)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.DestroyChild",
      "description": "Removes a child object.\n<div class=note>It is possible to update the properties of the child's parent at the same time that the child is removed. Both operations are performed by the same call.</div> <div class=note>Removing a linked object, invalidate the linking object. </div>\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the child to remove.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPropForThis",
          "description": "Identifier of the parent's object and property to update.\nShould be set to update the properties of the parent's object at the same time the child is created.",
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectProperties"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.DestroyChild",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Remove a child object](#csh-remove-child-object)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.DestroyAllChildren",
      "description": "Removes all children and all children to the children on an object.",
      "params": [
        {
          "name": "qPropForThis",
          "description": "Identifier of the parent's object and property to update.\nShould be set to update the properties of the parent's object at the same time the child is created.",
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectProperties"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.DestroyAllChildren",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.SetChildArrayOrder",
      "description": "Sets the order of the children in a generic object.\n<div class=note>To change the order of the children in a generic object, the identifiers of all the children must be included in the list of the identifiers (in _qIds_ ). </div>",
      "params": [
        {
          "name": "qIds",
          "description": "List of the children identifiers.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SetChildArrayOrder",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the order of the children in a generic object](#csh-set-order-children-in-app-object)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.GetLinkedObjects",
      "description": "Lists the linked objects to a generic object, a dimension or a measure.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetLinkedObjects",
        "schema": {
          "type": "object",
          "properties": {
            "qItems": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxLinkedObjectInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the linked objects of a generic object](#csh-list-linked-object-of-generic-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.CopyFrom",
      "description": "Copies the properties of a generic object and its children.\nThe source object is specified by the parameter _qFromId_ and the destination object is referenced by its handle.\n<div class=note>The identifier of the destination object is the same as before the copy takes place.</div>",
      "params": [
        {
          "name": "qFromId",
          "description": "Identifier of the object to copy.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.CopyFrom",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Copy the properties and the children of a generic object](#csh-copy-properties-and-children-of-generic-object)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.BeginSelections",
      "description": "Begins the selection mode. The app enters the modal state. The specified object enters the selection mode and a modal window is opened. The selection mode can apply to only one object in an app at a time.\nWhen a visualization is in selection mode, selections can be made in this visualization. The visualization is not sorted until the selection mode is ended. Once the selection mode is ended and if the selections are accepted, the visualization is sorted according to the sort criteria. For more information about:\n* Ending the selection mode, see _EndSelections Method_.\n* The sort criteria, see _ListObjectDef_ or _HyperCubeDef_.\n\n### Example\nA sheet contains a list object and a chart. If the list object is in selection mode then the chart cannot be in selection mode. No selection on the chart can be made until the list object exits the selection mode.",
      "params": [
        {
          "name": "qPaths",
          "description": "List of the paths to the definition of the objects to enter selection mode.\nFor example, _/qListObjectDef_ .",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.BeginSelections",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.EndSelections",
      "description": "Ends the selection mode on a visualization. The selections are accepted or aborted when exiting the selection mode, depending on the _qAccept_ parameter value.",
      "params": [
        {
          "name": "qAccept",
          "description": "Set this parameter to true to accept the selections before exiting the selection mode.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.EndSelections",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Enter and exit the selection mode](#csh-enter-and-exit-selection-mode)",
        "[AbortModal method](#services-Doc-AbortModal)",
        "[BeginSelections method](#services-GenericObject-BeginSelections)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.ResetMadeSelections",
      "description": "Resets all selections made in selection mode.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.ResetMadeSelections",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.EmbedSnapshotObject",
      "description": "Adds a snapshot to a generic object.\n<div class=note>Only one snapshot can be embedded in a generic object.</div> <div class=note>If you embed a snapshot in an object that already contains a snapshot, the new snapshot overwrites the previous one.</div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the bookmark.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.EmbedSnapshotObject",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.GetSnapshotObject",
      "description": "Returns the type of the object and the corresponding handle.",
      "params": [],
      "result": {
        "name": "Results for GenericObject.GetSnapshotObject",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericObject.Publish",
      "description": "Publishes a generic object.\n<div class=note>This operation is not applicable for Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericObject.Publish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Publish a bookmark](#csh-publish-bookmark)",
        "[Publish an app to a stream](#csh-publish-app-to-stream)",
        "[Publish a dimension](#csh-publish-dimension)",
        "[Publish a generic object](#csh-publish-generic-object)",
        "[Publish a measure](#csh-publish-measure)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "GenericObject.UnPublish",
      "description": "Unpublishes a generic object.\n<div class=note>This operation is not applicable for Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericObject.UnPublish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "GenericObject.Approve",
      "description": "Adds the generic object to the list of approved objects\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericObject.Approve",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "approve"
      ]
    },
    {
      "name": "GenericObject.UnApprove",
      "description": "Removes the generic object from the list of approved objects\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericObject.UnApprove",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "approve"
      ]
    },
    {
      "name": "GenericObject.CreateGroup",
      "description": "You can use the CreateGroup method with any object that contains an object grouping definition.\nThis method allows you to create a new subgroup of objects directly and add it to a group's members.\nReturns the ID of the created subgroup.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example _/qNxGroupDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qGroupDef",
          "description": "Definition of the new group.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxGroupDef"
          }
        },
        {
          "name": "qTargetGroupId",
          "description": "Id of the group to create the new subgroup in (if not the called object).",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.CreateGroup",
        "schema": {
          "type": "object",
          "properties": {
            "qGroupId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "create",
        "update"
      ]
    },
    {
      "name": "GenericObject.AddGroupMembers",
      "description": "You can use the AddGroupMembers method with any object that contains an object grouping definition.\nThis method allows you to add one or more members to an existing group of objects directly.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor exampleb _/qNxGroupDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qMembers",
          "description": "Array of IDs for the objects and/or subgroups to add to the group.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxGroupObjectId"
            }
          }
        },
        {
          "name": "qTargetGroupId",
          "description": "Name of the group the Members will be added to (if not the called object).",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPosId",
          "description": "Id of the member whose position to insert into.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.AddGroupMembers",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.RemoveGroupMembers",
      "description": "You can use the RemoveGroupMembers method with any object that contains an object grouping definition.\nThis method allows you to remove one or more members from an existing group of objects directly.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example _/qNxGroupDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qMembers",
          "description": "Array of IDs for the objects and/or subgroups to remove from the group.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qTargetGroupId",
          "description": "Name of the group the Members will be removed from (if not the called object).",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.RemoveGroupMembers",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericObject.RemoveGroup",
      "description": "You can use the RemoveGroup method with any object that contains an object grouping definition.\nThis method allows you to remove a group of objects directly.\nThis action only removes the group, not any of its members.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example _/qNxGroupDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qGroupId",
          "description": "Name of the group to be removed.\nMay not be an empty string.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.RemoveGroup",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "update",
        "delete"
      ]
    },
    {
      "name": "GenericObject.SetGroupLabel",
      "description": "You can use the SetGroupLabel method with any object that contains an object grouping definition.\nThis method allows you to change the label of an existing group of objects directly.",
      "params": [
        {
          "name": "qPath",
          "description": "Path to the definition of the object to be selected.\nFor example _/qNxGroupDef_ .",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qNewLabel",
          "description": "New label for the group.\nA label starting with an '=' will be evaluated as an expression.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qTargetGroupId",
          "description": "Id of the group whose label will be set (if not the called object).",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericObject.SetGroupLabel",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericDimension.GetLayout",
      "description": "Evaluates a dimension and displays its properties, including the dynamic properties.",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.GetLayout",
        "schema": {
          "type": "object",
          "properties": {
            "qLayout": {
              "type": "object",
              "$ref": "#/components/schemas/GenericDimensionLayout"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the layout of a dimension](#csh-get-layout-dimension)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericDimension.ApplyPatches",
      "description": "Applies a patch to the properties of an object. Allows an update to some of the properties. It should not be possible to patch \"/qInfo/qId\",\nand it will be forbidden in the near future.\n<div class=tip>Applying a patch takes less time than resetting all the properties.</div>",
      "params": [
        {
          "name": "qPatches",
          "description": "Array of patches.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPatch"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericDimension.ApplyPatches",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Add some properties to an object](#csh-add-properties)",
        "[Remove some properties](#csh-remove-properties)",
        "[Update some properties of an object](#csh-update-properties)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericDimension.SetProperties",
      "description": "Sets some properties for a dimension.",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the dimension.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericDimensionProperties"
          }
        }
      ],
      "result": {
        "name": "Results for GenericDimension.SetProperties",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a bookmark](#csh-set-properties-bookmark)",
        "[Set the properties of an object](#csh-set-properties)",
        "[SetFullPropertyTree method](#services-GenericObject-SetFullPropertyTree)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericDimension.GetProperties",
      "description": "Shows the properties of an object.\nReturns the identifier and the definition of the dimension.\n<div class=note>If the member delta is set to true in the request object, only the delta is retrieved.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.GetProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProp": {
              "type": "object",
              "$ref": "#/components/schemas/GenericDimensionProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a bookmark](#csh-set-properties-bookmark)",
        "[Get the delta of properties](#csh-get-delta-properties)",
        "[Get the properties of an object](#csh-get-properties)",
        "[Set the properties of an object](#csh-set-properties)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericDimension.GetInfo",
      "description": "Returns the type and identifier of the object.",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.GetInfo",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericDimension.GetDimension",
      "description": "Returns the definition of a dimension.\n\nThe definition of the dimension is returned.",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.GetDimension",
        "schema": {
          "type": "object",
          "properties": {
            "qDim": {
              "type": "object",
              "$ref": "#/components/schemas/NxLibraryDimensionDef"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericDimension.GetLinkedObjects",
      "description": "Lists the linked objects to a generic object, a dimension or a measure.",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.GetLinkedObjects",
        "schema": {
          "type": "object",
          "properties": {
            "qItems": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxLinkedObjectInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericDimension.Publish",
      "description": "Publishes a dimension.\n<div class=note>This operation is not applicable for Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.Publish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Publish a bookmark](#csh-publish-bookmark)",
        "[Publish an app to a stream](#csh-publish-app-to-stream)",
        "[Publish a dimension](#csh-publish-dimension)",
        "[Publish a generic object](#csh-publish-generic-object)",
        "[Publish a measure](#csh-publish-measure)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "GenericDimension.UnPublish",
      "description": "Unpublishes a dimension.\n<div class=note>This operation is not applicable for Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.UnPublish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "GenericDimension.Approve",
      "description": "Adds the generic dimension to the list of approved objects\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.Approve",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "approve"
      ]
    },
    {
      "name": "GenericDimension.UnApprove",
      "description": "Removes the generic dimension from the list of approved objects\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.UnApprove",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "approve"
      ]
    },
    {
      "name": "GenericDimension.StepCycle",
      "description": "Step active field in a cyclic dimension.\n<div class=tip>This operation is only possible for cyclic dimensions.</div>",
      "params": [
        {
          "name": "qStep",
          "description": "The number of steps made through the dimension. Positive values step forward and negative values step backward.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for GenericDimension.StepCycle",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "GenericDimension.SetActiveField",
      "description": "Set a cyclic dimension's active field directly.\n<div class=tip>This operation is only possible for cyclic dimensions.</div>",
      "params": [
        {
          "name": "qIx",
          "description": "Index of the new active field.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for GenericDimension.SetActiveField",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "GenericDimension.GetActiveField",
      "description": "Get a cyclic dimension's active field.\n<div class=tip>This operation is only possible for cyclic dimensions.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericDimension.GetActiveField",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "integer"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "GenericBookmark.GetFieldValues",
      "description": "Retrieves the values of a field for the default state.\n\n### Fieldvalue\n<table>\n<tbody>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qText</td>\n<td>Text related to the field value.</td>\n<td>String</td>\n</tr>\n<tr>\n<td>qIsNumeric</td>\n<td>Is set to true if the value is a numeric.<br>Default is false.</td>\n<td>Boolean</td>\n</tr>\n<tr>\n<td>qNumber</td>\n<td>Numeric value of the field.<br>This parameter is displayed if <i>qIsNumeric</i> is set to true.</td>\n<td>Double</td>\n</tr>\n</tbody>\n</table>",
      "params": [
        {
          "name": "qField",
          "description": "Name of the field.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qGetExcludedValues",
          "description": "If set to true, only NOT-selected values are returned.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qDataPage",
          "description": "Range of returned values.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/BookmarkFieldPage"
          }
        }
      ],
      "result": {
        "name": "Results for GenericBookmark.GetFieldValues",
        "schema": {
          "type": "object",
          "properties": {
            "qFieldValues": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/FieldValue"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the handle of a field](#csh-get-handle-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericBookmark.GetFieldValuesEx",
      "description": "Retrieves the values of a field per state.\n\n### Fieldvalue\n<table>\n<tbody>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qText</td>\n<td>Text related to the field value.</td>\n<td>String</td>\n</tr>\n<tr>\n<td>qIsNumeric</td>\n<td>Is set to true if the value is a numeric.<br>Default is false.</td>\n<td>Boolean</td>\n</tr>\n<tr>\n<td>qNumber</td>\n<td>Numeric value of the field.<br>This parameter is displayed if <i>qIsNumeric</i> is set to true.</td>\n<td>Double</td>\n</tr>\n</tbody>\n</table>",
      "params": [
        {
          "name": "qField",
          "description": "Name of the field.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qGetExcludedValues",
          "description": "When to true, only NOT-selected values are returned.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qDataPages",
          "description": "Range of returned values per state, an empty array will return the values of all states. Only one page without a state name returns the values for all states, using the start and end indices of the first page.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/BookmarkStateFieldPages"
          }
        }
      ],
      "result": {
        "name": "Results for GenericBookmark.GetFieldValuesEx",
        "schema": {
          "type": "object",
          "properties": {
            "qFieldValues": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/StateFieldValues"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the handle of a field](#csh-get-handle-field)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericBookmark.GetLayout",
      "description": "Evaluates an object and displays its properties including the dynamic properties.\nIf the member _delta_ is set to true in the request object, only the delta is evaluated.",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.GetLayout",
        "schema": {
          "type": "object",
          "properties": {
            "qLayout": {
              "type": "object",
              "$ref": "#/components/schemas/GenericBookmarkLayout"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the layout of a bookmark](#csh-get-layout-bookmark)",
        "[List the dimensions in an app](#csh-list-dimensions-in-app)",
        "[List the fields in an app](#csh-list-fields-in-app)",
        "[List the measures in an app](#csh-list-measures-in-app)",
        "[Get the delta of the layout](#csh-get-delta-layout)",
        "[Get the layout of a generic object](#csh-get-layout-generic-object)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericBookmark.ApplyPatches",
      "description": "Applies a patch to the properties of an object. Allows an update to some of the properties. It should not be possible to patch \"/qInfo/qId\",\nand it will be forbidden in the near future.\n<div class=tip>Applying a patch takes less time than resetting all the properties.</div>",
      "params": [
        {
          "name": "qPatches",
          "description": "Array of patches.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPatch"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericBookmark.ApplyPatches",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Add some properties to an object](#csh-add-properties)",
        "[Remove some properties](#csh-remove-properties)",
        "[Update some properties of an object](#csh-update-properties)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericBookmark.SetProperties",
      "description": "Sets some properties for a bookmark.",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the bookmark.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericBookmarkProperties"
          }
        }
      ],
      "result": {
        "name": "Results for GenericBookmark.SetProperties",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a bookmark](#csh-set-properties-bookmark)",
        "[Set the properties of an object](#csh-set-properties)",
        "[SetFullPropertyTree method](#services-GenericObject-SetFullPropertyTree)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericBookmark.GetProperties",
      "description": "Shows the properties of an object.\n<div class=note>If the member delta is set to true in the request object, only the delta is retrieved.</div>\nThe following is always returned in the output:",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.GetProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProp": {
              "type": "object",
              "$ref": "#/components/schemas/GenericBookmarkProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a bookmark](#csh-set-properties-bookmark)",
        "[Get the delta of properties](#csh-get-delta-properties)",
        "[Get the properties of an object](#csh-get-properties)",
        "[Set the properties of an object](#csh-set-properties)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericBookmark.GetInfo",
      "description": "Returns:\n* The type of the object.\n* The identifier of the object.",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.GetInfo",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericBookmark.Apply",
      "description": "Applies a bookmark.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.Apply",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Apply a bookmark](#csh-apply-bookmark)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericBookmark.ApplyAndVerify",
      "description": "Applies a bookmark and verify result dataset against originally selected values.\n\n<div class=note>The operation is successful if **qApplySuccess** is set to true. **qWarnings** lists state and field with unmatching values </div>",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.ApplyAndVerify",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/BookmarkApplyAndVerifyResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Apply a bookmark](#csh-apply-bookmark)"
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "GenericBookmark.Publish",
      "description": "Publishes a bookmark.\n<div class=note>This operation is not applicable for Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.Publish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Publish a bookmark](#csh-publish-bookmark)",
        "[Publish an app to a stream](#csh-publish-app-to-stream)",
        "[Publish a dimension](#csh-publish-dimension)",
        "[Publish a generic object](#csh-publish-generic-object)",
        "[Publish a measure](#csh-publish-measure)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "GenericBookmark.UnPublish",
      "description": "Unpublishes a bookmark.\n<div class=note>This operation is not applicable for Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.UnPublish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "GenericBookmark.Approve",
      "description": "Adds the generic bookmark to the list of approved objects\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.Approve",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "approve"
      ]
    },
    {
      "name": "GenericBookmark.UnApprove",
      "description": "Removes the generic bookmark from the list of approved objects\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericBookmark.UnApprove",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "approve"
      ]
    },
    {
      "name": "GenericVariable.GetLayout",
      "description": "Evaluates an object and displays its properties including the dynamic properties.\nIf the member _delta_ is set to true in the request object, only the delta is evaluated.",
      "params": [],
      "result": {
        "name": "Results for GenericVariable.GetLayout",
        "schema": {
          "type": "object",
          "properties": {
            "qLayout": {
              "type": "object",
              "$ref": "#/components/schemas/GenericVariableLayout"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the layout of a variable](#csh-get-layout-variable)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericVariable.ApplyPatches",
      "description": "Applies a patch to the properties of a variable. Allows an update to some of the properties. It should not be possible to patch \"/qInfo/qId\",\nand it will be forbidden in the near future.\n<div class=tip>Applying a patch takes less time than resetting all the properties.</div>",
      "params": [
        {
          "name": "qPatches",
          "description": "Array of patches.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPatch"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericVariable.ApplyPatches",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Update the properties of a variable](#csh-update-property-variable)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericVariable.SetProperties",
      "description": "Sets some properties for a variable.\n<div class=note>The identifier of a variable cannot be modified.</div> <div class=note>You cannot update the properties of a script-defined variable using the _SetProperties method_. </div>",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the variable.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericVariableProperties"
          }
        }
      ],
      "result": {
        "name": "Results for GenericVariable.SetProperties",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Update the properties of a variable](#csh-update-property-variable)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericVariable.GetProperties",
      "description": "Shows the properties of an object.\n<div class=note>If the member **delta** is set to true in the request, only the delta is retrieved. </div>\nThe following is always returned in the output:",
      "params": [],
      "result": {
        "name": "Results for GenericVariable.GetProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProp": {
              "type": "object",
              "$ref": "#/components/schemas/GenericVariableProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the properties of a variable](#csh-get-properties-variable)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericVariable.GetInfo",
      "description": "Returns the type and identifier of the object.",
      "params": [],
      "result": {
        "name": "Results for GenericVariable.GetInfo",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the identifier of a variable](#csh-get-identifier-variable)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericVariable.SetStringValue",
      "description": "Sets a string value to a variable.\n<div class=note>These changes are not persistent. They only last the duration of the engine session.</div>",
      "params": [
        {
          "name": "qVal",
          "description": "Value of the variable. The string can contain an expression.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for GenericVariable.SetStringValue",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Update the properties of a variable](#csh-update-property-variable)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericVariable.SetNumValue",
      "description": "Sets a numerical value to a variable.\n<div class=note>These changes are not persistent. They only last the duration of the engine session.</div>",
      "params": [
        {
          "name": "qVal",
          "description": "Value of the variable.",
          "required": true,
          "schema": {
            "type": "number"
          }
        }
      ],
      "result": {
        "name": "Results for GenericVariable.SetNumValue",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Update the properties of a variable](#csh-update-property-variable)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericVariable.SetDualValue",
      "description": "Sets the value of a dual variable.\n<div class=note>These changes are not persistent. They only last the duration of the engine session.</div>",
      "params": [
        {
          "name": "qText",
          "description": "String representation of a dual value. Set this parameter to \"\", if the string representation is to be Null.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qNum",
          "description": "Numeric representation of a dual value.",
          "required": true,
          "schema": {
            "type": "number"
          }
        }
      ],
      "result": {
        "name": "Results for GenericVariable.SetDualValue",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericVariable.GetRawContent",
      "description": "Returns the raw value of a variable.",
      "params": [],
      "result": {
        "name": "Results for GenericVariable.GetRawContent",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericMeasure.GetLayout",
      "description": "Evaluates a measure and displays its properties, including the dynamic properties.",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.GetLayout",
        "schema": {
          "type": "object",
          "properties": {
            "qLayout": {
              "type": "object",
              "$ref": "#/components/schemas/GenericMeasureLayout"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the layout of a measure](#csh-get-layout-measure)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericMeasure.ApplyPatches",
      "description": "Applies a patch to the properties of an object. Allows an update to some of the properties. It should not be possible to patch \"/qInfo/qId\",\nand it will be forbidden in the near future.\n<div class=tip>Applying a patch takes less time than resetting all the properties.</div>",
      "params": [
        {
          "name": "qPatches",
          "description": "Array of patches.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxPatch"
            }
          }
        }
      ],
      "result": {
        "name": "Results for GenericMeasure.ApplyPatches",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Add some properties to an object](#csh-add-properties)",
        "[Remove some properties](#csh-remove-properties)",
        "[Update some properties of an object](#csh-update-properties)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericMeasure.SetProperties",
      "description": "Sets some properties for a measure.",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the measure.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericMeasureProperties"
          }
        }
      ],
      "result": {
        "name": "Results for GenericMeasure.SetProperties",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a bookmark](#csh-set-properties-bookmark)",
        "[Set the properties of an object](#csh-set-properties)",
        "[SetFullPropertyTree method](#services-GenericObject-SetFullPropertyTree)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "GenericMeasure.GetProperties",
      "description": "Shows the properties of an object.\nReturns the identifier and the definition of the measure.\n<div class=note>If the member delta is set to true in the request object, only the delta is retrieved.</div>\nThe following is always returned in the output:",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.GetProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProp": {
              "type": "object",
              "$ref": "#/components/schemas/GenericMeasureProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Set the properties of a bookmark](#csh-set-properties-bookmark)",
        "[Get the delta of properties](#csh-get-delta-properties)",
        "[Get the properties of an object](#csh-get-properties)",
        "[Set the properties of an object](#csh-set-properties)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericMeasure.GetInfo",
      "description": "Returns the type and identifier of the object.",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.GetInfo",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericMeasure.GetMeasure",
      "description": "Returns the definition of a measure.",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.GetMeasure",
        "schema": {
          "type": "object",
          "properties": {
            "qMeasure": {
              "type": "object",
              "$ref": "#/components/schemas/NxLibraryMeasureDef"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericMeasure.GetLinkedObjects",
      "description": "Lists the linked objects to a generic object, a dimension or a measure.",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.GetLinkedObjects",
        "schema": {
          "type": "object",
          "properties": {
            "qItems": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxLinkedObjectInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "GenericMeasure.Publish",
      "description": "Publishes a measure.\n<div class=note>This operation is not applicable for Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.Publish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Publish a bookmark](#csh-publish-bookmark)",
        "[Publish an app to a stream](#csh-publish-app-to-stream)",
        "[Publish a dimension](#csh-publish-dimension)",
        "[Publish a generic object](#csh-publish-generic-object)",
        "[Publish a measure](#csh-publish-measure)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "GenericMeasure.UnPublish",
      "description": "Unpublishes a measure.\n<div class=note>This operation is not applicable for Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.UnPublish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "GenericMeasure.Approve",
      "description": "Adds the generic measure to the list of approved objects\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.Approve",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "approve"
      ]
    },
    {
      "name": "GenericMeasure.UnApprove",
      "description": "Removes the generic measure from the list of approved objects\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for GenericMeasure.UnApprove",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "approve"
      ]
    },
    {
      "name": "Doc.GetField",
      "description": "Returns a handle to a field.",
      "params": [
        {
          "name": "qFieldName",
          "description": "Name of the field.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qStateName",
          "description": "Name of the alternate state.\nDefault state is current selections.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetField",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetFieldDescription",
      "description": "Returns the description of a field.",
      "params": [
        {
          "name": "qFieldName",
          "description": "Name of the field.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFieldDescription",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/FieldDescription"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetVariable",
      "description": "Returns a handle to a variable.",
      "params": [
        {
          "name": "qName",
          "description": "Name of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetVariable",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _Doc::GetVariableById_ method or _Doc::GetVariableByName_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetLooselyCoupledVector",
      "description": "Returns a list of table states.\n\nThe following states apply:\n* 0 The table is not loosely coupled.\n* 1 The table is loosely coupled.\n* 2 The table is loosely coupled and cannot be changed to another state using the Qlik Engine API.\n\n<div class=note>The last three values in the vector are for internal use.</div>\n<div class=note>In case of circular references, the engine automatically sets the table state to loosely coupled to avoid creating loops.</div>",
      "params": [],
      "result": {
        "name": "Results for Doc.GetLooselyCoupledVector",
        "schema": {
          "type": "object",
          "properties": {
            "qv": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "byte"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SetLooselyCoupledVector",
      "description": "Sets a list of table states, one for each table.\n\nThe following states apply:\n* 0 The table is not loosely coupled.\n* 1 The table is loosely coupled.\n* 2 The table is loosely coupled and cannot be changed to another state using the Qlik Engine API.\n\n<div class=note>The last three values in the vector are for internal use.</div>",
      "params": [
        {
          "name": "qv",
          "description": "The list of table states to set. A state will not be changed if already set to 2.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "byte"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SetLooselyCoupledVector",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.Evaluate",
      "description": "Evaluates an expression and returns the result as a string.\n\n### Example\nThe client sends:\n```\n{\n    \"handle\": 1,\n    \"method\": \"Evaluate\",\n    \"params\": {\n        \"qExpression\": \"Sum(Holes)\"\n    },\n    \"id\": 6,\n    \"jsonrpc\": \"2.0\"\n}\n```\nThe engine returns:\n```\n{\n    \"jsonrpc\": \"2.0\",\n    \"id\": 6,\n    \"result\": {\n        \"qReturn\": \"361716\"\n    }\n}\n```",
      "params": [
        {
          "name": "qExpression",
          "description": "Expression to evaluate.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.Evaluate",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.EvaluateEx",
      "description": "Evaluates an expression and returns the result as a dual.\n\n### Example\nThe client sends:\n```\n{\n    \"handle\": 1,\n    \"method\": \"EvaluateEx\",\n    \"params\": {\n        \"qExpression\": \"Sum(Holes)\"\n    },\n    \"id\": 7,\n    \"jsonrpc\": \"2.0\"\n}\n```\nThe engine returns:\n```\n{\n    \"jsonrpc\": \"2.0\",\n    \"id\": 7,\n    \"result\": {\n        \"qReturn\": \"361716\"\n    }\n}\n```",
      "params": [
        {
          "name": "qExpression",
          "description": "Expression to evaluate.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.EvaluateEx",
        "schema": {
          "type": "object",
          "properties": {
            "qValue": {
              "type": "object",
              "$ref": "#/components/schemas/FieldValue"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ClearAll",
      "description": "Clear selections in fields for current state. Locked fields are not cleared by default.",
      "params": [
        {
          "name": "qLockedAlso",
          "description": "When true, clears the selection for locked fields.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qStateName",
          "description": "Alternate state name. When set, applies to alternate state instead of current",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ClearAll",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.LockAll",
      "description": "Locks all selections in fields for current state.",
      "params": [
        {
          "name": "qStateName",
          "description": "Alternate state name. When set, applies to alternate state instead of current.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.LockAll",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.UnlockAll",
      "description": "Unlocks all selections in fields for current state.",
      "params": [
        {
          "name": "qStateName",
          "description": "Alternate state name. When set, applies to alternate state instead of current.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.UnlockAll",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.Back",
      "description": "Loads the last logical operation (if any).",
      "params": [],
      "result": {
        "name": "Results for Doc.Back",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.Forward",
      "description": "Loads the next logical operation (if any).",
      "params": [],
      "result": {
        "name": "Results for Doc.Forward",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CreateVariable",
      "description": "Creates a variable.",
      "params": [
        {
          "name": "qName",
          "description": "Name of the variable. Variable names are case sensitive.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateVariable",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _Doc::CreateVariableEx_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.RemoveVariable",
      "description": "Removes a variable.",
      "params": [
        {
          "name": "qName",
          "description": "Name of the variable. Variable names are case sensitive.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.RemoveVariable",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _Doc::DestroyVariableById_ method or _Doc::DestroyVariableByName_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.GetLocaleInfo",
      "description": "Returns locale information.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetLocaleInfo",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/LocaleInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetTablesAndKeys",
      "description": "Returns:\n* The list of tables in an app and the fields inside each table.\n* The list of derived fields.\n* The list of key fields.",
      "params": [
        {
          "name": "qWindowSize",
          "description": "Size of the window that is used to display the results.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/Size"
          }
        },
        {
          "name": "qNullSize",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/Size"
          }
        },
        {
          "name": "qCellHeight",
          "description": "Height of a cell in a table in pixels.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qSyntheticMode",
          "description": "One of:\n* _true_ for internal table viewer:\nShows a more detailed view on how the Qlik engine defines the relations between fields and the quality of the keys.\n* _false_ for source table viewer:\nShows the natural relation between fields without reference to synthetic keys and resultant linking synthetic tables. Instead synthetic keys are represented by multiple connectors between tables.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qIncludeSysVars",
          "description": "If set to true, the system variables are included.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qIncludeProfiling",
          "description": "If set to true, profiling information is included.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetTablesAndKeys",
        "schema": {
          "type": "object",
          "properties": {
            "qtr": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/TableRecord"
              }
            },
            "qk": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/SourceKeyRecord"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetViewDlgSaveInfo",
      "description": "Returns information about the position of the tables in the data model viewer.\n<div class=note>The position of the broom points and the position of the connection points cannot be retrieved in Qlik Sense.</div>",
      "params": [],
      "result": {
        "name": "Results for Doc.GetViewDlgSaveInfo",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/TableViewDlgSaveInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SetViewDlgSaveInfo",
      "description": "Sets the positions of the tables in the data model viewer.\n<div class=note>The position of the broom points and the position of the connection points cannot be set in Qlik Sense.</div>",
      "params": [
        {
          "name": "qInfo",
          "description": "Information about the table.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/TableViewDlgSaveInfo"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SetViewDlgSaveInfo",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.GetEmptyScript",
      "description": "Creates a script that contains one section. This section contains **SET** statements that give localized information from the regional settings of the computer.\n<div class=note>The computer regional settings are retrieved when the engine starts.</div>",
      "params": [
        {
          "name": "qLocalizedMainSection",
          "description": "Name of the script section.\nThe default value is _Main_ .",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetEmptyScript",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.DoReload",
      "description": "Reloads the script that is set in an app.\n\n### Logs\nWhen this method is called, audit activity logs are produced to track the user activity.\nIn the case of errors, both audit activity logs and system services logs are produced.\nThe log files are named as follows:\n<table>\n<tr>\n<th>Audit activity log</th>\n<th>System service log</th>\n</tr>\n<tr>\n<td><i>&lt;MachineName&gt;_AuditActivity_Engine.txt</i> in Qlik Sense Enterprise<br><i>&lt;MachineName&gt;_AuditActivity_Engine.log</i> in Qlik Sense Desktop</td>\n<td><i>&lt;MachineName&gt;_Service_Engine.txt</i> in Qlik Sense Enterprise<br><i>&lt;MachineName&gt;_Service_Engine.log</i> in Qlik Sense Desktop</td>\n</tr>\n</table>\n\n### Where to find the log files\nThe location of the log files depends on whether you have installed Qlik Sense Enterprise or Qlik Sense Desktop.\n<table>\n<tr>\n<th>Qlik Sense Enterprise </th>\n<th>Qlik Sense Desktop </th>\n</tr>\n<tr>\n<td><i>%ProgramData%/Qlik/Sense/Log/Engine</i></td>\n<td><i>%UserProfile%/Documents/Qlik/Sense/Log</i></td>\n</tr>\n</table>",
      "params": [
        {
          "name": "qMode",
          "description": "Error handling mode\nOne of:\n* 0: for default mode.\n* 1: for ABEND; the reload of the script ends if an error occurs.\n* 2: for ignore; the reload of the script continues even if an error is detected in the script.",
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qPartial",
          "description": "Set to true for partial reload.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qDebug",
          "description": "Set to true if debug breakpoints are to be honored. The execution of the script will be in debug mode.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DoReload",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetScriptBreakpoints",
      "description": "Lists the breakpoints in the script of an app.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetScriptBreakpoints",
        "schema": {
          "type": "object",
          "properties": {
            "qBreakpoints": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/EditorBreakpoint"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.SetScriptBreakpoints",
      "description": "Set some breakpoints in the script of an app.",
      "params": [
        {
          "name": "qBreakpoints",
          "description": "Information about the breakpoints.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EditorBreakpoint"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SetScriptBreakpoints",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetScript",
      "description": "Gets values in script.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetScript",
        "schema": {
          "type": "object",
          "properties": {
            "qScript": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetTextMacros",
      "description": "Fetches updated variables after a statement execution.\n\n<div class=note>If qRefSeqNo and qSetSeqNo are set to 0, it means that the variables were not updated.</div>",
      "params": [],
      "result": {
        "name": "Results for Doc.GetTextMacros",
        "schema": {
          "type": "object",
          "properties": {
            "qMacros": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/TextMacro"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.SetFetchLimit",
      "description": "Limits the number of rows of data to load from a data source.\nThis method works when reloading in debug mode.",
      "params": [
        {
          "name": "qLimit",
          "description": "Fetch limit.\nNumber of rows to load.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SetFetchLimit",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.DoSave",
      "description": "Saves an app. All objects and data in the data model are saved.",
      "params": [
        {
          "name": "qFileName",
          "description": "Name of the file to save.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DoSave",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.GetTableData",
      "description": "Retrieves the data of a specific table.",
      "params": [
        {
          "name": "qOffset",
          "description": "Position from the top, starting from 0.\nIf the offset is set to 0, the rows starting from the position/index 0 are shown.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qRows",
          "description": "Number of rows to show.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qSyntheticMode",
          "description": "If this parameter is set to true, the internal data/table representation is shown. Synthetic fields are present (if any).",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qTableName",
          "description": "Name of the table.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetTableData",
        "schema": {
          "type": "object",
          "properties": {
            "qData": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/TableRow"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetAppLayout",
      "description": "Evaluates an app.\nReturns dynamic properties (if any) in addition to the engine (fixed) properties.\nA data set is returned.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetAppLayout",
        "schema": {
          "type": "object",
          "properties": {
            "qLayout": {
              "type": "object",
              "$ref": "#/components/schemas/NxAppLayout"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SetAppProperties",
      "description": "Sets properties to an app.\n<div class=note>The qLastReloadTime, qMigrationHash and qSavedInProductVersion properties does not need to be set but if they are, they should match the current values in the app layout. </div>",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the properties of an app.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxAppProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SetAppProperties",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.GetAppProperties",
      "description": "Gets the properties of an app.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetAppProperties",
        "schema": {
          "type": "object",
          "properties": {
            "qProp": {
              "type": "object",
              "$ref": "#/components/schemas/NxAppProperties"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetLineage",
      "description": "Gets the lineage information of the app. The lineage information includes the LOAD and STORE statements from the data load script associated with this app.\nAn array of lineage information.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetLineage",
        "schema": {
          "type": "object",
          "properties": {
            "qLineage": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/LineageInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.CreateSessionObject",
      "description": "Creates a transient object. For example, you can use a transient object to create an app overview or a story overview.\nIt is possible to create a transient object that is linked to another object.\nA linked object is an object that points to a linking object. The linking object is defined in the properties of the linked object (in _qExtendsId_ ).\nThe linked object has the same properties as the linking object.\n<div class=note>The linking object cannot be a transient object.</div>",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the object.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateSessionObject",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.DestroySessionObject",
      "description": "Removes a transient object.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the transient object to remove.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroySessionObject",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CreateObject",
      "description": "Creates a generic object at app level. For more information on generic objects, see _Generic object_.\nIt is possible to create a generic object that is linked to another object.\nA linked object is an object that points to a linking object. The linking object is defined in the properties of the linked object (in _qExtendsId_ ).\nThe linked object has the same properties as the linking object.\n<div class=note>The linking object cannot be a transient object.</div>",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the object.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateObject",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.GetOrCreateObject",
      "description": "Get or create a generic object at app level with a specific Id and Type.\nId and Type are specified in the GenericObjectProperties passed in.\nAll other fields in this parameter serve as default properties.\nIf the object does not exist with that Id, it is created and initialized from the default properties.\nIf the object already exists, it is not changed. The properties passed in are not used.\nThe call will fail if the Id is already used for another purpose, such as for an object of a different Type.",
      "params": [
        {
          "name": "qProp",
          "description": "GenericObjectProperties with at least Info : { \"qId\": \"&lt;identifier of the new generic object&gt;\", \"qType\": \"&lt;type of the new generic object&gt;\" }",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericObjectProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetOrCreateObject",
        "schema": {
          "type": "object",
          "properties": {
            "qNewObject": {
              "type": "boolean"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.DestroyObject",
      "description": "Removes an app object.\nThe children of the object (if any) are removed as well.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the object to remove.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroyObject",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Doc.GetObject",
      "description": "Returns the type of the app object and the corresponding handle.",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the object to retrieve.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetObject",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetObjects",
      "description": "Returns all objects compatible with options.",
      "params": [
        {
          "name": "qOptions",
          "description": "Object type filter and requested properties.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxGetObjectOptions"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetObjects",
        "schema": {
          "type": "object",
          "properties": {
            "qList": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxContainerEntry"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetBookmarks",
      "description": "Returns all bookmarks compatible with options.",
      "params": [
        {
          "name": "qOptions",
          "description": "Bookmark type filter and requested properties.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxGetBookmarkOptions"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetBookmarks",
        "schema": {
          "type": "object",
          "properties": {
            "qList": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxContainerEntry"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CloneObject",
      "description": "Clones root level objects, such as sheets and stories. The CloneObject method works for both app objects and child objects.\nWhen you clone an object that contains children, the children are cloned as well.\nIf you for example want to clone a visualization, you must provide the qID of the root object, in this case the sheet since CloneObject clones root level objects.\n<div class=note>It is not possible to clone a session object.</div>\n\n<div class=note>The identifier is set by the engine.</div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the object to clone. The identifier must be a root object.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CloneObject",
        "schema": {
          "type": "object",
          "properties": {
            "qCloneId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.CreateDraft",
      "description": "Creates a draft of an object.\nThis method can be used to create a draft of a sheet or a story that is published. This is a way to continue working on a sheet or a story that is published.\nReplace the published object by the content of the draft by invoking the _CommitDraft method_.\n\n<div class=note>The identifier is set by the engine.</div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the object to create a draft from.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateDraft",
        "schema": {
          "type": "object",
          "properties": {
            "qDraftId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.CommitDraft",
      "description": "Commits the draft of an object that was previously created by invoking the _CreateDraft method_.\nCommitting a draft replaces the corresponding published object.",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the draft to commit.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CommitDraft",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.DestroyDraft",
      "description": "Removes the draft of an object.\nThe children of the draft object (if any) are removed as well.\nThis method can be used to cancel the work on the draft of an object. For example, if you had created a draft of a sheet that is published, you might not want anymore to replace the published sheet.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the draft object to remove.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSourceId",
          "description": "Identifier of the source object (the object from which a draft was created).",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroyDraft",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Doc.Undo",
      "description": "Undoes the previous operation.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [],
      "result": {
        "name": "Results for Doc.Undo",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.Redo",
      "description": "Redoes the previous operation.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [],
      "result": {
        "name": "Results for Doc.Redo",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ClearUndoBuffer",
      "description": "Clears entirely the undo and redo buffer.",
      "params": [],
      "result": {
        "name": "Results for Doc.ClearUndoBuffer",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CreateDimension",
      "description": "Creates a master dimension.\nA master dimension is stored in the library of an app and can be used in many objects. Several generic objects can contain the same dimension.",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the properties.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericDimensionProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateDimension",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.DestroyDimension",
      "description": "Removes a dimension.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the dimension to remove.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroyDimension",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Doc.GetDimension",
      "description": "Returns the handle of a dimension.",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the dimension.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetDimension",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CloneDimension",
      "description": "Clones a dimension.\n\n<div class=note>The identifier is set by the engine.</div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the object to clone.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CloneDimension",
        "schema": {
          "type": "object",
          "properties": {
            "qCloneId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.CreateMeasure",
      "description": "Creates a master measure.\nA master measure is stored in the library of an app and can be used in many objects. Several generic objects can contain the same measure.",
      "params": [
        {
          "name": "qProp",
          "description": "Information about the properties.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericMeasureProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateMeasure",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.DestroyMeasure",
      "description": "Removes a generic measure.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the measure to remove.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroyMeasure",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Doc.GetMeasure",
      "description": "Returns the handle of a measure.",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the measure.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetMeasure",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CloneMeasure",
      "description": "Clones a measure.\n\n<div class=note>The identifier is set by the engine.</div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the object to clone.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CloneMeasure",
        "schema": {
          "type": "object",
          "properties": {
            "qCloneId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.CreateSessionVariable",
      "description": "Creates a transient variable.\n<div class=note>To set some properties to the variable, use the _SetProperties method_. </div>\n\n### Definition\nA variable in Qlik Sense is a named entity, containing a data value. This value can be static or be the result of a calculation. A variable acquires its value at the same time that the variable is created or after when updating the properties of the variable. Variables can be used in bookmarks and can contain numeric or alphanumeric data. Any change made to the variable is applied everywhere the variable is used.\nWhen a variable is used in an expression, it is substituted by its value or the variable's definition.\n\n### Example\nThe variable _x_ contains the text string _Sum(Sales)_ .\nIn a chart, you define the expression _$(x)/12_ . The effect is exactly the same as having the chart expression _Sum(Sales)/12_ .\nHowever, if you change the value of the variable _x_ to _Sum(Budget)_ , the data in the chart are immediately recalculated with the expression interpreted as _Sum(Budget)/12_ .",
      "params": [
        {
          "name": "qProp",
          "description": "Name of the variable. Variable names are case sensitive.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericVariableProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateSessionVariable",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.DestroySessionVariable",
      "description": "Removes a transient variable.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroySessionVariable",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CreateVariableEx",
      "description": "Creates a variable.\nTo create a variable via a script, you need to use the _SetScript method_. For more information, see _Create a variable_.\n<div class=note>To set some properties to the variable, use the _SetProperties method_. </div> <div class=note>In a published app, only transient variables can be created. See _CreateSessionVariable method_. </div>\n\n### Definition\nA variable in Qlik Sense is a named entity, containing a data value. This value can be static or be the result of a calculation. A variable acquires its value at the same time that the variable is created or after when updating the properties of the variable. Variables can be used in bookmarks and can contain numeric or alphanumeric data. Any change made to the variable is applied everywhere the variable is used.\nWhen a variable is used in an expression, it is substituted by its value or the variable's definition.\n\n### Example\nThe variable _x_ contains the text string _Sum(Sales)_ .\nIn a chart, you define the expression _$(x)/12_ . The effect is exactly the same as having the chart expression _Sum(Sales)/12_ .\nHowever, if you change the value of the variable _x_ to _Sum(Budget)_ , the data in the chart are immediately recalculated with the expression interpreted as _Sum(Budget)/12_ .",
      "params": [
        {
          "name": "qProp",
          "description": "Name of the variable. Variable names are case sensitive and must be unique.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericVariableProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateVariableEx",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.DestroyVariableById",
      "description": "Removes a variable.\nScript-defined variables cannot be removed using the _DestroyVariableById method_ or the _DestroyVariableByName method_. For more information, see _Remove a variable_.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroyVariableById",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Doc.DestroyVariableByName",
      "description": "Removes a variable.\nScript-defined variables cannot be removed using the _DestroyVariableById method_ or the _DestroyVariableByName method_. For more information, see _Remove a variable_.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qName",
          "description": "Name of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroyVariableByName",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Doc.GetVariableById",
      "description": "Gets the handle of a variable.",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetVariableById",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetVariableByName",
      "description": "Gets the handle of a variable.",
      "params": [
        {
          "name": "qName",
          "description": "Name of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetVariableByName",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CheckExpression",
      "description": "Checks if a given expression is valid.\n<div class=note>The expression is correct if the parameters _qErrorMsg_ , _qBadFieldNames_ and _qDangerousFieldNames_ are empty. </div>",
      "params": [
        {
          "name": "qExpr",
          "description": "Expression to check.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qLabels",
          "description": "List of labels.",
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CheckExpression",
        "schema": {
          "type": "object",
          "properties": {
            "qErrorMsg": {
              "type": "string"
            },
            "qBadFieldNames": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxRange"
              }
            },
            "qDangerousFieldNames": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxRange"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CheckNumberOrExpression",
      "description": "Checks if:\n* A given expression is valid.\n* A number is correct according to the locale.",
      "params": [
        {
          "name": "qExpr",
          "description": "Expression to check.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CheckNumberOrExpression",
        "schema": {
          "type": "object",
          "properties": {
            "qErrorMsg": {
              "type": "string"
            },
            "qBadFieldNames": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxRange"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.AddAlternateState",
      "description": "Adds an alternate state in the app.\nYou can create multiple states within a Qlik Sense app and apply these states to specific objects within the app. Objects in a given state are not affected by user selections in the other states.",
      "params": [
        {
          "name": "qStateName",
          "description": "Name of the alternate state.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.AddAlternateState",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Add an alternate state](#csh-add-alternate-state)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.RemoveAlternateState",
      "description": "Removes an alternate state in the app.",
      "params": [
        {
          "name": "qStateName",
          "description": "Name of the alternate state.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.RemoveAlternateState",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.AddSessionAlternateState",
      "description": "Adds an session alternate state in the app.\nYou can create multiple states within a Qlik Sense app and apply these states to specific objects within the app. Objects in a given state are not affected by user selections in the other states.\nA session alternate state is not persisted and is not included in the StateNames array in the AppLayout.\nYou can use the optional second parameter to choose any other state to get the initial selection on the new state from",
      "params": [
        {
          "name": "qStateName",
          "description": "Name of the alternate state.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSourceStateName",
          "description": "Name of existing state to copy the initial selections from",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.AddSessionAlternateState",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.RemoveSessionAlternateState",
      "description": "Removes an session alternate state in the app.\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qStateName",
          "description": "Name of the alternate state.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.RemoveSessionAlternateState",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CreateBookmark",
      "description": "Creates a bookmark.",
      "params": [
        {
          "name": "qProp",
          "description": "Properties for the object.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericBookmarkProperties"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.DestroyBookmark",
      "description": "Removes a bookmark.\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the bookmark.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroyBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Doc.GetBookmark",
      "description": "Returns the handle of a bookmark.",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the bookmark.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ApplyBookmark",
      "description": "Applies a bookmark.\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the bookmark.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ApplyBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ApplyAndVerifyBookmark",
      "description": "Applies a bookmark and verifies result dataset against originally selected values.\n<div class=note>The operation is successful if **qApplySuccess** is set to true. **qWarnings** lists state and field with unmatching values </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the bookmark.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ApplyAndVerifyBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/BookmarkApplyAndVerifyResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.CloneBookmark",
      "description": "Clones a bookmark.\n<div class=note>The identifier is set by the engine.</div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the object to clone.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CloneBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qCloneId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.AddFieldFromExpression",
      "description": "Adds a field on the fly.\n<div class=note>The expression of a field on the fly is persisted but not its values. </div>\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qName",
          "description": "Name of the field.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qExpr",
          "description": "Expression value.\nIt is not possible to use all aggregation functions. For example, you cannot add a field on the fly with an expression that uses the _Sum_ or _Count_ aggregation functions.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.AddFieldFromExpression",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetFieldOnTheFlyByName",
      "description": "Find the field-on-the-fly by passing its readable name.",
      "params": [
        {
          "name": "qReadableName",
          "description": "Readable name of the field-on-the-fly.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFieldOnTheFlyByName",
        "schema": {
          "type": "object",
          "properties": {
            "qName": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetAllInfos",
      "description": "Returns the identifier and the type of any generic object in the app.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetAllInfos",
        "schema": {
          "type": "object",
          "properties": {
            "qInfos": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.Resume",
      "description": "Resumes the app as the user left it.",
      "params": [],
      "result": {
        "name": "Results for Doc.Resume",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.AbortModal",
      "description": "Aborts any selection mode in an app. For more information about selection mode, see _BeginSelections method_.",
      "params": [
        {
          "name": "qAccept",
          "description": "Set this parameter to true to accept the selections before exiting the selection mode.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.AbortModal",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.Publish",
      "description": "Publishes an app.\nAll app objects are published. Generic objects, bookmarks, dimensions and measures inside the app are published.\n<div class=note>An app can only be published once and cannot be published to more than one stream.</div>",
      "params": [
        {
          "name": "qStreamId",
          "description": "Identifier of the stream.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qName",
          "description": "Name of the published app.\nIf this parameter is not set, the engine automatically gives a new name to the published app.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.Publish",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "Doc.GetMatchingFields",
      "description": "Retrieves any fields that match all of the specified tags or just one of them in the data model of an app.\n<div class=note>Tags set by Qlik Sense are prefixed by the _$_ sign.  </div>",
      "params": [
        {
          "name": "qTags",
          "description": "List of tags.\nThe _GetMatchingFields_ method looks for fields that match one or all of the tags in this list, depending on the value of _qMatchingFieldMode_ .",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qMatchingFieldMode",
          "description": "Matching field mode.\nThe default value is MATCHINGFIELDMODE_MATCH_ALL.\n\nOne of:\n* MATCHINGFIELDMODE_MATCH_ALL\n* MATCHINGFIELDMODE_MATCH_ONE",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetMatchingFields",
        "schema": {
          "type": "object",
          "properties": {
            "qFieldNames": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxMatchingFieldInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.FindMatchingFields",
      "description": "Retrieves any fields that belong to the same archipelago as the specified field and that match at least one of the specified tags.\n<div class=note>Tags set by Qlik Sense are prefixed by the _$_ sign.  </div>",
      "params": [
        {
          "name": "qFieldName",
          "description": "Name of the field.\nThis method looks for fields that belong to the same archipelago as this specified field.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qTags",
          "description": "List of tags.\nThis method looks for fields that match at least one of the tags in this list.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.FindMatchingFields",
        "schema": {
          "type": "object",
          "properties": {
            "qFieldNames": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxMatchingFieldInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.Scramble",
      "description": "Scrambles a field so the data is not recognizable. Some properties are retained to help debugging. For example, special characters are not changed, and small numbers are scrambled to another small number.\n<div class=note>Update access is required to use the function in Qlik Sense Enterprise.</div>",
      "params": [
        {
          "name": "qFieldName",
          "description": "Name of the field to scramble.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.Scramble",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.SaveObjects",
      "description": "Saves all objects that were modified in the app.\n<div class=note>Data from the data model are not saved.</div> <div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [],
      "result": {
        "name": "Results for Doc.SaveObjects",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.GetAssociationScores",
      "description": "Computes a set of association scores for each pair of fields between two given tables that have been loaded in an app.\nWhen a table contains some synthetic keys, all fields in the synthetic key tables are analyzed against fields in other tables. To denote that a field is a synthetic key, the field name is prefixed by _[Synthetic Key]:_ .",
      "params": [
        {
          "name": "qTable1",
          "description": "Name of the first table.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qTable2",
          "description": "Name of the second table.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetAssociationScores",
        "schema": {
          "type": "object",
          "properties": {
            "qScore": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/AssociationScore"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetMediaList",
      "description": "Lists the media files.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetMediaList",
        "schema": {
          "type": "object",
          "properties": {
            "qList": {
              "type": "object",
              "$ref": "#/components/schemas/MediaList"
            },
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _GetLibraryContent_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetContentLibraries",
      "description": "Lists the content libraries.\nTo differentiate a global content library from an app specific content library, you can check the property _qAppSpecific_ . If this property is set to true, it means that the content library is app specific.\n<div class=note>There is always one specific content library per app.</div>\n\n### Qlik Sense\nReturns the global content libraries and the app specific content library.\nWhen using Qlik Sense, you can have more than one global content library. The global content libraries are common to all apps in the Qlik Sense repository.\nBy default, there is one global content library named _Default_ .\n\n### Qlik Sense Desktop\nReturns the global content library and the app specific content library from the disk.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetContentLibraries",
        "schema": {
          "type": "object",
          "properties": {
            "qList": {
              "type": "object",
              "$ref": "#/components/schemas/ContentLibraryList"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetLibraryContent",
      "description": "Returns the content of a library.\n\n### Global content library\nIn Qlik Sense Desktop, the content files are retrieved from:\n_%userprofile%\\Documents\\Qlik\\Sense\\Content\\Default_\nIn Qlik Sense Enterprise, the content files are retrieved from the Qlik Sense repository.\n\n### App specific content library\nThe embedded files are returned.",
      "params": [
        {
          "name": "qName",
          "description": "Name of the content library.\nIt corresponds to the property _qContentLibraryListItem/qName_ returned by the _GetContentLibraries method_.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetLibraryContent",
        "schema": {
          "type": "object",
          "properties": {
            "qList": {
              "type": "object",
              "$ref": "#/components/schemas/StaticContentList"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.DoReloadEx",
      "description": "Reloads the script that is set in an app and returns the path to the script log file.\n<div class=note>A log file is created per reload.</div>\n\n### Logs\nWhen this method is called, audit activity logs are produced to track the user activity.\nIn the case of errors, both audit activity logs and system services logs are produced.\nThe log files are named as follows:\n<table>\n<tbody>\n<tr>\n<th>Audit activity log</th>\n<th>System service log</th>\n</tr>\n<tr>\n<td><i>&lt; MachineName&gt;</i>AuditActivity<i>Engine.txt</i> in Qlik Sense Enterprise<br><i>&lt; MachineName&gt;</i>AuditActivity<i>Engine.log</i> in Qlik Sense Desktop</td>\n<td><i>&lt; MachineName&gt;</i>Service<i>Engine.txt</i> in Qlik Sense Enterprise<br><i>&lt; MachineName&gt;</i>Service<i>Engine.log</i> in Qlik Sense Desktop</td>\n</tr>\n</tbody>\n</table>\n\n### Where to find the log files\nThe location of the log files depends on whether you have installed Qlik Sense Enterprise or Qlik Sense Desktop.\n<table>\n<tbody>\n<tr>\n<th>Qlik Sense Enterprise </th>\n<th>Qlik Sense Desktop </th>\n</tr>\n<tr>\n<td><i>%ProgramData%/Qlik/Sense/Log/Engine</i></td>\n<td><i>%UserProfile%/Documents/Qlik/Sense/Log</i></td>\n</tr>\n</tbody>\n</table>\n\n### DoReloadExParams\n<table>\n<tbody>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qMode</td>\n<td>Error handling mode<br>One of:<br>\n<ul>\n<li>0: for default mode.</li>\n<li>1: for ABEND; the reload of the script ends if an error occurs.</li>\n<li>2: for ignore; the reload of the script continues even if an error is detected in the script.</li>\n</ul>\n</td>\n<td>Integer</td>\n</tr>\n<tr>\n<td>qPartial</td>\n<td>Set to true for partial reload.<br>The default value is false.</td>\n<td>Boolean</td>\n</tr>\n<tr>\n<td>qDebug</td>\n<td>Set to true if debug breakpoints are to be honored. The execution of the script will be in debug mode.<br>The default value is false.</td>\n<td>Boolean</td>\n</tr>\n</tbody>\n</table>\n\n### DoReloadExResult\n<table>\n<tbody>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qSuccess</td>\n<td>The operation is successful if <i>qSuccess</i> is set to True.</td>\n<td>Boolean</td>\n</tr>\n<tr>\n<td>qScriptLogFile</td>\n<td>Path to the script log file.</td>\n<td>String</td>\n</tr>\n</tbody>\n</table>\n\nIf the data load has successfully finished, no matter how the indexing behaves, _true_ is returned. This happens even if there is a timeout, a memory limit is reached or any other error occurs during the indexing.",
      "params": [
        {
          "name": "qParams",
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/DoReloadExParams"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DoReloadEx",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/DoReloadExResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.BackCount",
      "description": "Returns the number of entries on the back stack.",
      "params": [],
      "result": {
        "name": "Results for Doc.BackCount",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "integer"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ForwardCount",
      "description": "Returns the number of entries on the Forward stack.",
      "params": [],
      "result": {
        "name": "Results for Doc.ForwardCount",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "integer"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ExportReducedData",
      "description": "Applies a bookmark to reduce (slice) the data on. Returns a url and file size to the reduced application. Section Access is always applied.\n<div class=note>This API is only available on Sense Enterprise on Windows</div>",
      "params": [
        {
          "name": "qOptions",
          "description": "BookmarkId used to reduced the app on and an expire time.",
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxDownloadOptions"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ExportReducedData",
        "schema": {
          "type": "object",
          "properties": {
            "qDownloadInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxDownloadInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetSetAnalysis",
      "description": "Returns a set analysis expression from active selections or from a saved bookmark. Fields on the fly and Calculated dimensions will not be included in the generated expressions, instead a message indicating 'missing fields' will provided within the expression.\n|                       | BookmarkId empty                     | BookmarkId set                                     |\n|-----------------------|--------------------------------------|----------------------------------------------------|\n|StateName empty (or $) | Default selections state is returned.| Default state ($) in bookmark with id is returned. |\n|StateName set          | State selections is returned.        | State in bookmark with id is returned.             |",
      "params": [
        {
          "name": "qStateName",
          "description": "Optional. The name of the state to get set analysis expression for. If left empty, the default state will be retrieved.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qBookmarkId",
          "description": "Optional. The Id of the bookmark to get the set analysis expression for. If left empty, the current selection will be retrieved.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetSetAnalysis",
        "schema": {
          "type": "object",
          "properties": {
            "qSetExpression": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SetScript",
      "description": "Sets values in script.",
      "params": [
        {
          "name": "qScript",
          "description": "Script content.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SetScript",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.CheckScriptSyntax",
      "description": "Checks the syntax of a script.\n\n### Example\n\"result\": { \"qErrors\": [ { \"qErrLen\": 3, \"qTabIx\": 0, \"qLineInTab\": 0, \"qColInLine\": 0, \"qTextPos\": 0 }, { \"qErrLen\": 5, \"qTabIx\": 0, \"qLineInTab\": 0, \"qColInLine\": 1, \"qTextPos\": 4, \"qSecondaryFailure\": true } ] }\n<div class=note>The first area is the primary error area, the second area is the secondary error area. The second area is optional and is shown only if qSecondaryFailure is set to true. The second area ends when the next statement in the script begins.</div>\nThe list of syntax errors in the script.\nIf there are no errors, the engine returns:\nIf there are errors, the engine returns the following properties in the response:\n<table>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qErrLen</td>\n<td>Length of the word where the error is located.</td>\n<td>Integer</td>\n</tr>\n<tr>\n<td>qTabIx</td>\n<td>Number of the faulty section.</td>\n<td>Integer</td>\n</tr>\n<tr>\n<td>qLineInTab</td>\n<td>Line number in the section where the error is located.</td>\n<td>Integer</td>\n</tr>\n<tr>\n<td>qColInLine</td>\n<td>Position of the erroneous text from the beginning of the line.</td>\n<td>Integer</td>\n</tr>\n<tr>\n<td>qTextPos</td>\n<td>Position of the erroneous text from the beginning of the script.</td>\n<td>Integer</td>\n</tr>\n<tr>\n<td>qSecondaryFailure</td>\n<td>The default value is false.</td>\n<td>Boolean</td>\n</tr>\n</table>",
      "params": [],
      "result": {
        "name": "Results for Doc.CheckScriptSyntax",
        "schema": {
          "type": "object",
          "properties": {
            "qErrors": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ScriptSyntaxError"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetFavoriteVariables",
      "description": "Retrieves the variables that are tagged as favorite.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetFavoriteVariables",
        "schema": {
          "type": "object",
          "properties": {
            "qNames": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.SetFavoriteVariables",
      "description": "Set some variables as favorite.",
      "params": [
        {
          "name": "qNames",
          "description": "Variables to set as favorite.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SetFavoriteVariables",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetIncludeFileContent",
      "description": "Gets the content of a file.",
      "params": [
        {
          "name": "qPath",
          "description": "[\"lib://CONNECTION_NAME\\\\\\&lt;the name of the file you want to use&gt;.txt\"]\nOR\n[\"lib://Connection_Name\\\\\\&lt;Folder under your connection&gt;\\\\\\&lt;the name of the file you want to use&gt;.txt\"]\n[ ] should be used when the first variable contains a lib reference.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetIncludeFileContent",
        "schema": {
          "type": "object",
          "properties": {
            "qContent": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.CreateConnection",
      "description": "Creates a connection.\nA connection indicates from which data source the data should be taken.",
      "params": [
        {
          "name": "qConnection",
          "description": "Information about the connection.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/Connection"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateConnection",
        "schema": {
          "type": "object",
          "properties": {
            "qConnectionId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.ModifyConnection",
      "description": "Updates a connection.\n<div class=note>The identifier of a connection cannot be updated. qType cannot be modified with the ModifyConnection method.</div>",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qConnection",
          "description": "Information about the connection.\nProperties that can be updated.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/Connection"
          }
        },
        {
          "name": "qOverrideCredentials",
          "description": "Set this parameter to true to override the user name and password.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ModifyConnection",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.DeleteConnection",
      "description": "Deletes a connection.\n<div class=note>In Qlik Sense Enterprise, there is an additional file connection named _AttachedFiles_ . The AttachedFiles connection can only be removed by the administrator of the system. </div>",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection to remove.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DeleteConnection",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Doc.GetConnection",
      "description": "Retrieves a connection and returns:\n* The creation time of the connection.\n* The identifier of the connection.\n* The type of the connection.\n* The name of the connection.\n* The connection string.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetConnection",
        "schema": {
          "type": "object",
          "properties": {
            "qConnection": {
              "type": "object",
              "$ref": "#/components/schemas/Connection"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetConnections",
      "description": "Lists the connections in an app.\n<div class=note>In Qlik Sense Enterprise, there is an additional file connection named _AttachedFiles_ . This connection is stored in the Qlik Sense repository. </div>",
      "params": [],
      "result": {
        "name": "Results for Doc.GetConnections",
        "schema": {
          "type": "object",
          "properties": {
            "qConnections": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Connection"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetDatabaseInfo",
      "description": "Gives information about an ODBC, OLEDB or CUSTOM connection. See _Outputs_ for more details.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Name of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetDatabaseInfo",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/DatabaseInfo"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetDatabases",
      "description": "Lists the databases inside a ODBC, OLEDB or CUSTOM data source.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetDatabases",
        "schema": {
          "type": "object",
          "properties": {
            "qDatabases": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Database"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetDatabaseOwners",
      "description": "Lists the owners of a database for a ODBC, OLEDB or CUSTOM connection.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDatabase",
          "description": "Name of the database.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetDatabaseOwners",
        "schema": {
          "type": "object",
          "properties": {
            "qOwners": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DatabaseOwner"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetDatabaseTables",
      "description": "Lists the tables inside a database for a ODBC, OLEDB or CUSTOM connection.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDatabase",
          "description": "Name of the database.\nIf _qDatabase_ is not set then _qOwner_ must be set.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qOwner",
          "description": "Owner of the database.\nIf _qOwner_ is not set then _qDatabase_ must be set.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetDatabaseTables",
        "schema": {
          "type": "object",
          "properties": {
            "qTables": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DataTable"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetDatabaseTableFields",
      "description": "Lists the fields inside a table of a database for a ODBC, OLEDB or CUSTOM connection.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDatabase",
          "description": "Name of the database.\nIf _qDatabase_ is not set then _qOwner_ must be set.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qOwner",
          "description": "Owner of the database.\nIf _qOwner_ is not set then _qDatabase_ must be set.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qTable",
          "description": "Name of the table.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetDatabaseTableFields",
        "schema": {
          "type": "object",
          "properties": {
            "qFields": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DataField"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetDatabaseTablePreview",
      "description": "Retrieves the values of the specified table of a database for a ODBC, OLEDB or CUSTOM connection.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDatabase",
          "description": "Name of the database.\nIf _qDatabase_ is not set then _qOwner_ must be set.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qOwner",
          "description": "Owner of the database.\nIf _qOwner_ is not set then _qDatabase_ must be set.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qTable",
          "description": "Name of the table.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qConditions",
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/FilterInfo"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetDatabaseTablePreview",
        "schema": {
          "type": "object",
          "properties": {
            "qPreview": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DataRecord"
              }
            },
            "qRowCount": {
              "type": "integer"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetFolderItemsForConnection",
      "description": "Lists the items for a folder connection.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRelativePath",
          "description": "Relative path of the connection.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFolderItemsForConnection",
        "schema": {
          "type": "object",
          "properties": {
            "qFolderItems": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/FolderItem"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GuessFileType",
      "description": "Guesses the data format for a given file.\nRecognized file formats are:\n* _CSV_ for Delimited\n* _FIX_ for Fixed Record\n* _DIF_ for Data Interchange Format\n* _EXCEL_BIFF_ for Microsoft Excel (XLS)\n* _EXCEL_OOXML_ for Microsoft Excel (XLSX)\n* _HTML_ for HTML\n* _QVD_ for QVD file\n* _XML_ for XML\n* _QVX_ for QVX file\n* _JSON_ for JSON format\n* _KML_ for KML file\n* _PARQUET_ for PARQUET file\n\n### FileType\nRecognized file formats are:\n* _CSV_ for Delimited\n* _FIX_ for Fixed Record\n* _DIF_ for Data Interchange Format\n* _EXCEL_BIFF_ for Microsoft Excel (XLS)\n* _EXCEL_OOXML_ for Microsoft Excel (XLSX)\n* _HTML_ for HTML\n* _QVD_ for QVD file\n* _XML_ for XML\n* _QVX_ for QVX file\n* _JSON_ for JSON format\n* _KML_ for KML file\n* _PARQUET_ for PARQUET file",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection file.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRelativePath",
          "description": "Path of the connection file.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GuessFileType",
        "schema": {
          "type": "object",
          "properties": {
            "qDataFormat": {
              "type": "object",
              "$ref": "#/components/schemas/FileDataFormat"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetFileTables",
      "description": "Lists the tables for a folder connection.\n\n### FileType\nRecognized file formats are:\n* _CSV_ for Delimited\n* _FIX_ for Fixed Record\n* _DIF_ for Data Interchange Format\n* _EXCEL_BIFF_ for Microsoft Excel (XLS)\n* _EXCEL_OOXML_ for Microsoft Excel (XLSX)\n* _HTML_ for HTML\n* _QVD_ for QVD file\n* _XML_ for XML\n* _QVX_ for QVX file\n* _JSON_ for JSON format\n* _KML_ for KML file\n* _PARQUET_ for PARQUET file",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRelativePath",
          "description": "Path of the connection file.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDataFormat",
          "description": "Type of the file.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/FileDataFormat"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFileTables",
        "schema": {
          "type": "object",
          "properties": {
            "qTables": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DataTable"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetFileTableFields",
      "description": "Lists the fields of a table for a folder connection.\n\n### FileType\nRecognized file formats are:\n* _CSV_ for Delimited\n* _FIX_ for Fixed Record\n* _DIF_ for Data Interchange Format\n* _EXCEL_BIFF_ for Microsoft Excel (XLS)\n* _EXCEL_OOXML_ for Microsoft Excel (XLSX)\n* _HTML_ for HTML\n* _QVD_ for QVD file\n* _XML_ for XML\n* _QVX_ for QVX file\n* _JSON_ for JSON format\n* _KML_ for KML file\n* _PARQUET_ for PARQUET file",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRelativePath",
          "description": "Path of the connection file.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDataFormat",
          "description": "Type of the file.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/FileDataFormat"
          }
        },
        {
          "name": "qTable",
          "description": "Name of the table.\nThis parameter must be set for _XLS_ , _XLSX_ , _HTML  _ and _XML_ files.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFileTableFields",
        "schema": {
          "type": "object",
          "properties": {
            "qFields": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DataField"
              }
            },
            "qFormatSpec": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetFileTablePreview",
      "description": "Lists the values in a table for a folder connection.\n\n### FileType\nRecognized file formats are:\n* _CSV_ for Delimited\n* _FIX_ for Fixed Record\n* _DIF_ for Data Interchange Format\n* _EXCEL_BIFF_ for Microsoft Excel (XLS)\n* _EXCEL_OOXML_ for Microsoft Excel (XLSX)\n* _HTML_ for HTML\n* _QVD_ for QVD file\n* _XML_ for XML\n* _QVX_ for QVX file\n* _JSON_ for JSON format\n* _KML_ for KML file\n* _PARQUET_ for PARQUET file",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRelativePath",
          "description": "Path of the connection file.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDataFormat",
          "description": "Type of the file.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/FileDataFormat"
          }
        },
        {
          "name": "qTable",
          "description": "Name of the table.\nThis parameter must be set for _XLS_ , _XLSX_ , _HTML  _ and _XML_ files.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFileTablePreview",
        "schema": {
          "type": "object",
          "properties": {
            "qPreview": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DataRecord"
              }
            },
            "qFormatSpec": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.GetFileTablesEx",
      "description": "Lists the tables and fields of a JSON or XML file for a folder connection.",
      "params": [
        {
          "name": "qConnectionId",
          "description": "Identifier of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qRelativePath",
          "description": "Path of the connection file.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qDataFormat",
          "description": "Type of the file.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/FileDataFormat"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFileTablesEx",
        "schema": {
          "type": "object",
          "properties": {
            "qTables": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DataTableEx"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.SendGenericCommandToCustomConnector",
      "description": "Sends a generic command to a custom connector.\nFor more information on the commands that can be sent to a custom connector, see the QVX SDK help.",
      "params": [
        {
          "name": "qProvider",
          "description": "Connector file name.\nCommand to be executed by the connector.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qCommand",
          "description": "One of:\n* JsonRequest\n* GetCustomCaption\n* IsConnected\n* DisableQlikViewSelectButton\n* HaveStarField",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qMethod",
          "description": "Method name to be used within the command.\nThe available methods depend on the chosen connector.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qParameters",
          "description": "Parameters of the command.\nNo parameters are required.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qAppendConnection",
          "description": "Name of the connection.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SendGenericCommandToCustomConnector",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Doc.SearchSuggest",
      "description": "Returns search terms suggestions.",
      "params": [
        {
          "name": "qOptions",
          "description": "Information about the search combinations.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchCombinationOptions"
          }
        },
        {
          "name": "qTerms",
          "description": "Terms to search for.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SearchSuggest",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/SearchSuggestionResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SearchAssociations",
      "description": "Returns the search matches for one or more search terms.\nThe search results depend on the search context.\n_SearchCombinationOptions_\n\n### SearchMatchCombinations\n<table>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qSearchMatchCombinations</td>\n<td>Array of search combinations.</td>\n<td>Array of <i>SearchMatchCombination</i> </td>\n</tr>\n</table>",
      "params": [
        {
          "name": "qOptions",
          "description": "Information about the search fields and the search context.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchCombinationOptions"
          }
        },
        {
          "name": "qTerms",
          "description": "List of terms to search for.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qPage",
          "description": "Array of pages to retrieve.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchPage"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SearchAssociations",
        "schema": {
          "type": "object",
          "properties": {
            "qResults": {
              "type": "object",
              "$ref": "#/components/schemas/SearchAssociationResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _SearchResults_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SelectAssociations",
      "description": "Selects all search hits for a specified group.\nThe results depend on the search context.\n_SearchCombinationOptions_.",
      "params": [
        {
          "name": "qOptions",
          "description": "Information about the search fields and the search context.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchCombinationOptions"
          }
        },
        {
          "name": "qTerms",
          "description": "List of terms to search for.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qMatchIx",
          "description": "Index (value of _qId_ ) of the search result to select.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qSoftLock",
          "description": "This parameter is deprecated and should not be set.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SelectAssociations",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SearchResults",
      "description": "Returns the search matches for one or more search terms.\nSearch results are organized in search groups. The type of search group indicates where the search matches come from (from data for example).\nEach search group contains search results that correspond to a combination of search terms.\nFor example, if the search terms are _organic_ , _pasta_ , and _America_ , the possible combination of search groups are:\n* organic\n* pasta\n* America\n* organic, pasta, America\n* organic, pasta\n* organic, America\n* pasta, America\n\nFor every search group, there are one or more search group items. Each subgroup item contains results that correspond to an item type (for example a field).\nFor every search group item, there are one or several search matches. The position of the match in each search result is given.",
      "params": [
        {
          "name": "qOptions",
          "description": "Information about the search combinations.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchCombinationOptions"
          }
        },
        {
          "name": "qTerms",
          "description": "Terms to search for.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qPage",
          "description": "Array of pages to retrieve.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchPage"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SearchResults",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/SearchResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SearchObjects",
      "description": "Returns the generic objects corresponding to one or more search terms. The search is performed within the title, subtitle, footnote and type. In addition, associated dimension values are also searched in. For example, if the country “Japan” is selected and the object contains the dimension City, the object will appear in the results for “Osaka” but not for “Johannesburg”. The generic objects with the following types will never appear in the results: _slideitem_ , _sheet_ , _story_ , _slide_ , _masterobject_ , _snapshot_ , _LoadModel_ , _appprops_ and _searchhistory_ .",
      "params": [
        {
          "name": "qOptions",
          "description": "Information about attributes.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchObjectOptions"
          }
        },
        {
          "name": "qTerms",
          "description": "Terms to search for.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qPage",
          "description": "Array of pages to retrieve.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchPage"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SearchObjects",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/SearchResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetFieldAndColumnSamples",
      "description": "Get sample values from either a column in a table or from a field.\nSupports wildcard matches in tables or field names:\n- '*' for zero or more characters.\n- '?' for one character.",
      "params": [
        {
          "name": "qFieldsOrColumnsWithWildcards",
          "description": "Pairs of table (optionally) and field names. Support wildcard matches.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldOrColumn"
            }
          }
        },
        {
          "name": "qMaxNumberOfValues",
          "description": "Max number of sample values returned. Depending on the column or field size the number of returned samples can be less than MaxNumberOfValues. If MaxNumberOfValues is negative all sample values are returned.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qRandSeed",
          "description": "Optional. Sets the random number seed. Should only be set for test purposes.",
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFieldAndColumnSamples",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/SampleResult"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetScriptEx",
      "description": "Gets script and script meta-data.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetScriptEx",
        "schema": {
          "type": "object",
          "properties": {
            "qScript": {
              "type": "object",
              "$ref": "#/components/schemas/AppScript"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "read"
      ]
    },
    {
      "name": "Doc.GetVariables",
      "description": "",
      "params": [
        {
          "name": "qListDef",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/VariableListDef"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetVariables",
        "schema": {
          "type": "object",
          "properties": {
            "qList": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxVariableListItem"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ExpandExpression",
      "description": "Expands the expression.",
      "params": [
        {
          "name": "qExpression",
          "description": "The expression string to expand.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ExpandExpression",
        "schema": {
          "type": "object",
          "properties": {
            "qExpandedExpression": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.DestroySessionVariableById",
      "description": "Removes a transient variable.\n\n<div class=note>**qSuccess** is set to true if the operation is successful. </div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroySessionVariableById",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.DestroySessionVariableByName",
      "description": "Removes a transient variable.\n\n<div class=note>**qSuccess** is set to true if the operation is successful. </div>",
      "params": [
        {
          "name": "qName",
          "description": "Name of the variable.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.DestroySessionVariableByName",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetGroupStates",
      "description": "",
      "params": [],
      "result": {
        "name": "Results for Doc.GetGroupStates",
        "schema": {
          "type": "object",
          "properties": {
            "qGroupStates": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/GroupState"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.ApplyGroupStates",
      "description": "",
      "params": [
        {
          "name": "qGroupStates",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GroupState"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ApplyGroupStates",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/ApplyGroupStatesResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.CreateBookmarkEx",
      "description": "Creates a bookmark with softpatches.",
      "params": [
        {
          "name": "qProp",
          "description": "Properties for the object.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/GenericBookmarkProperties"
          }
        },
        {
          "name": "qObjectIdsToPatch",
          "description": "Add softpatches for this objects if available. If empty all softpatches are added to the bookmark.",
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateBookmarkEx",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.SaveAs",
      "description": "Save a copy of an app with a different name.\nCan be used to save a session app as an ordinary app.",
      "params": [
        {
          "name": "qNewAppName",
          "description": "&lt;Name of the saved app&gt;",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SaveAs",
        "schema": {
          "type": "object",
          "properties": {
            "qNewAppId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Doc.StoreTempSelectionState",
      "description": "Store current selection state temporarily.\n<div class=note>The temporary selection state will be stored for 30min by default if TTL parameter is not present or positive. </div>\n<div class=note>StoreTempSelectionState method is only supported in SaaS Editions of Qlik Sense.</div>",
      "params": [
        {
          "name": "qTTLOfTempState",
          "description": "Time to live in seconds for stored selection state",
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.StoreTempSelectionState",
        "schema": {
          "type": "object",
          "properties": {
            "qId": {
              "type": "string"
            },
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.RestoreTempSelectionState",
      "description": "Restore a temporary selection state identified by Id.\n<div class=note>RestoreTempSelectionState method is only supported in SaaS Editions of Qlik Sense.</div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the temporary selection state",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.RestoreTempSelectionState",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ChangeSessionAppOwner",
      "description": "Change the owner of a session app.\n<div class=note>Can be used by a privileged user when creating a session app to be consumed by another user.\nOnly useful in environments where it is possible to reconnect to a session app, currently only in cloud deployments. </div>",
      "params": [
        {
          "name": "qNewOwnerId",
          "description": "Identifier of the new app owner.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ChangeSessionAppOwner",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "change_owner"
      ]
    },
    {
      "name": "Doc.ChangeSessionAppSpace",
      "description": "Add a session app to a space.\n<div class=note>Can be used by a privileged user when creating a session app to be consumed by other users.\nOnly useful in environments where it is possible to reconnect to a session app, currently only in cloud deployments. </div>",
      "params": [
        {
          "name": "qSpaceId",
          "description": "Identifier of the new space.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ChangeSessionAppSpace",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.GetTableProfileData",
      "description": "Returns profile data for a given table.",
      "params": [
        {
          "name": "qTableName",
          "description": "Name of the table",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetTableProfileData",
        "schema": {
          "type": "object",
          "properties": {
            "qProfiling": {
              "type": "object",
              "$ref": "#/components/schemas/TableProfilingData"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.GetMeasureWithLabel",
      "description": "Returns the handle of a measure with a label.\nIf multiple measures has the same label the first is returned.",
      "params": [
        {
          "name": "qLabel",
          "description": "is the label of the measure to be returned.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetMeasureWithLabel",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.SearchValues",
      "description": "",
      "params": [
        {
          "name": "qOptions",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchValueOptions"
          }
        },
        {
          "name": "qTerms",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qPage",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/SearchValuePage"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SearchValues",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/SearchValueResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.GetFieldsFromExpression",
      "description": "Retrives any fields from an expression.",
      "params": [
        {
          "name": "qExpr",
          "description": "Expression to get fields from.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFieldsFromExpression",
        "schema": {
          "type": "object",
          "properties": {
            "qFieldNames": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetFieldsResourceIds",
      "description": "Returns a list of resource ids (QRI) for fields that belongs to the datamodel.\nKey fields (that belongs to multiple tables), returns one resource identifier per table.\n<div class=note>GetFieldsResourceIds method is only supported in SaaS Editions of Qlik Sense.</div>",
      "params": [
        {
          "name": "qFieldNames",
          "description": "List of fields names that resource ids should be returned from.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.GetFieldsResourceIds",
        "schema": {
          "type": "object",
          "properties": {
            "qFields": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxFieldResourceId"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetExpressionBNF",
      "description": "Gets the current Backus-Naur Form (BNF) grammar of the Qlik chart expressions supported within a given App.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetExpressionBNF",
        "schema": {
          "type": "object",
          "properties": {
            "qBnfDefs": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/BNFDef"
              }
            },
            "qBnfHash": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[GetExpressionBNF method](#services-Doc-GetExpressionBNF)"
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.GetExpressionBNFHash",
      "description": "Gets a string hash calculated from the current Backus-Naur Form (BNF) grammar  of the Qlik chart expressions supported within a given App.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetExpressionBNFHash",
        "schema": {
          "type": "object",
          "properties": {
            "qBnfHash": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[GetExpressionBNFHash method](#services-Doc-GetExpressionBNFHash)"
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.SetProhibitBinaryLoad",
      "description": "Prohibit binary load of this app.\nAn app with prohibit binary load set cannot be loaded binary. For the setting to have effect a save is required.",
      "params": [
        {
          "name": "qProhibit",
          "description": "True or false.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.SetProhibitBinaryLoad",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.TransformApp",
      "description": "Transform current app into an instance of the targeted mode",
      "params": [
        {
          "name": "qDstParameters",
          "description": "Attributes that should be set in the new app.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/TransformAppParameters"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.TransformApp",
        "schema": {
          "type": "object",
          "properties": {
            "qResult": {
              "type": "object",
              "$ref": "#/components/schemas/TransformAppResult"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.CreateTemporaryBookmark",
      "description": "Create temporary bookmark\n<div class=note>CreateTemporaryBookmark method is only supported in SaaS Editions of Qlik Sense.</div>",
      "params": [
        {
          "name": "qOptions",
          "description": "Options for the temporary bookmark",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/NxTempBookmarkOptions"
          }
        },
        {
          "name": "qObjectIdsToPatch",
          "description": "Add softpatches for these objects to the bookmark if available. If IncludePatches is true, softpatches are included for all objects.\nAny session objects included are also added to the bookmark. IncludePatches has no effect on the patching of session objects.",
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CreateTemporaryBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qId": {
              "type": "string"
            },
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.ApplyTemporaryBookmark",
      "description": "Apply temporary bookmark identified by Id.\n<div class=note>ApplyTemporaryBookmark method is only supported in SaaS Editions of Qlik Sense.</div>",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the temporary selection state",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ApplyTemporaryBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Doc.GetScriptMeta",
      "description": "Gets script meta-data.",
      "params": [],
      "result": {
        "name": "Results for Doc.GetScriptMeta",
        "schema": {
          "type": "object",
          "properties": {
            "qMeta": {
              "type": "object",
              "$ref": "#/components/schemas/AppScriptMeta"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "read"
      ]
    },
    {
      "name": "Doc.ReplaceBookmark",
      "description": "Replace a bookmark. Optional inparams to change the original bookmarks properties, original are kept if left out.",
      "params": [
        {
          "name": "qId",
          "description": "Identifier of the bookmark.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qIgnorePatches",
          "description": "Set to true to exclude patches from the bookmark. Default is false.",
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qObjectIdsToPatch",
          "description": "Add softpatches for this objects if available. If empty all softpatches are added to the bookmark. Ignored if IgnorePatches is set to true.",
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Doc.ReplaceBookmark",
        "schema": {
          "type": "object",
          "properties": {
            "qInfo": {
              "type": "object",
              "$ref": "#/components/schemas/NxInfo"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Doc.ClearAllSoftPatches",
      "description": "Clear the soft properties of all generic objects in the app",
      "params": [],
      "result": {
        "name": "Results for Doc.ClearAllSoftPatches",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental"
    },
    {
      "name": "Doc.CommitScript",
      "description": "Commits the current script version so that any future changes will be part of a new version.",
      "params": [
        {
          "name": "qCommitMessage",
          "description": "Name of the version.\n<div class=note> Only applicable to QCS. </div>",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Doc.CommitScript",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "experimental",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Global.AbortRequest",
      "description": "Sets an abort flag on a specific request in the current engine session.\n* If an abort flag is set on a pending request, the request is aborted.\n* If an abort flag is set on an ongoing request, the engine checks to see if it is possible to abort the request.",
      "params": [
        {
          "name": "qRequestId",
          "description": "Identifier of request to abort.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Global.AbortRequest",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.AbortAll",
      "description": "Sets an abort flag on all pending and ongoing requests in the current engine session.\n* If an abort flag is set on a pending request, the request is aborted.\n* If an abort flag is set on an ongoing request, the engine checks to see if it is possible to abort the request.",
      "params": [],
      "result": {
        "name": "Results for Global.AbortAll",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetProgress",
      "description": "Gives information about the progress of the _DoReload_ and _DoSave_ calls.\n<div class=note>For more information on DoReload and DoSave, see the _DoReload Method_ and _DoSave Method_. </div>",
      "params": [
        {
          "name": "qRequestId",
          "description": "Identifier of the _DoReload_ or _DoSave_ request or 0.\nComplete information is returned if the identifier of the request is given.\nIf the identifier is 0, less information is given. Progress messages and error messages are returned but information like when the request started and finished is not returned.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetProgress",
        "schema": {
          "type": "object",
          "properties": {
            "qProgressData": {
              "type": "object",
              "$ref": "#/components/schemas/ProgressData"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Migrate an app](#csh-migrate-app)",
        "[Open an app](#csh-open-app)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.QvVersion",
      "description": "Returns the Qlik Sense version number.",
      "params": [],
      "result": {
        "name": "Results for Global.QvVersion",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use the _EngineVersion_ method instead",
      "x-qlik-see-also": [
        "[Get the version of Qlik Sense](#csh-get-product-version)"
      ],
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.OSVersion",
      "description": "Returns the version number of the operating system.",
      "params": [],
      "result": {
        "name": "Results for Global.OSVersion",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the version of the operating system](#csh-get-OS-version)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.OSName",
      "description": "Returns the name of the operating system.",
      "params": [],
      "result": {
        "name": "Results for Global.OSName",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the name of the operating system](#csh-get-OS-name)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.QTProduct",
      "description": "Returns the Qlik product name.",
      "params": [],
      "result": {
        "name": "Results for Global.QTProduct",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the name of the Qlik product](#csh-get-QT-product)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetDocList",
      "description": "Returns the list of apps.\n\n**In Qlik Sense Enterprise:**\n\nThe list is generated by the QRS. The GetDocList method only returns documents the current user is allowed to access.\n\n**In Qlik Sense Desktop:**\n\nThe apps are located in _C:\\Users\\&lt;user name&gt;\\Documents\\Qlik\\Sense\\Apps_.",
      "params": [],
      "result": {
        "name": "Results for Global.GetDocList",
        "schema": {
          "type": "object",
          "properties": {
            "qDocList": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DocListEntry"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List available apps](#csh-list-apps)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetInteract",
      "description": "Retrieves information on the user interaction that is requested by the engine.\nEngine can request user interactions only during script reload and when the reload is performed in debug mode ( _qDebug_ is set to true when using the _DoReload method_ ).\nWhen running reload in debug mode, the engine pauses the script execution to receive data about user interaction. The engine can pause:\n* Before executing a new script statement.\n* When an error occurs while executing the script.\n* When the script execution is finished.\n\nTo know if the engine is paused and waits for a response to an interaction request, the _GetProgress method_ should be used. The engine waits for a response if the property _qUserInteractionWanted_ is set to true in the response of the _GetProgress_ request.",
      "params": [
        {
          "name": "qRequestId",
          "description": "Identifier of the request.\nCorresponds to the identifier of the _DoReload_ request.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetInteract",
        "schema": {
          "type": "object",
          "properties": {
            "qDef": {
              "type": "object",
              "$ref": "#/components/schemas/InteractDef"
            },
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[InteractDone method](#services-Global-InteractDone)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.InteractDone",
      "description": "Informs the engine that a user interaction (which was earlier requested by the engine) was performed and indicates to the engine what to do next.",
      "params": [
        {
          "name": "qRequestId",
          "description": "Identifier of the request.\nCorresponds to the identifier of the _DoReload_ request.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        },
        {
          "name": "qDef",
          "description": "User response to the current interaction.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/InteractDef"
          }
        }
      ],
      "result": {
        "name": "Results for Global.InteractDone",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[GetInteract method](#services-Global-GetInteract)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetAuthenticatedUser",
      "description": "Retrieves information about the authenticated user.",
      "params": [],
      "result": {
        "name": "Results for Global.GetAuthenticatedUser",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get information about the authenticated user](#csh-get-information-about-authenticated-user)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.CreateDocEx",
      "description": "Creates an app and opens an engine session.\n<div class=note>This operation is possible only in Qlik Sense Desktop.</div>",
      "params": [
        {
          "name": "qDocName",
          "description": "Name of the app.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qUserName",
          "description": "Name of the user.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPassword",
          "description": "Password of the user.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSerial",
          "description": "Current Qlik Sense serial number.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qLocalizedScriptMainSection",
          "description": "Name of the first section in the script editor.\nThe default value is _Main_.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.CreateDocEx",
        "schema": {
          "type": "object",
          "properties": {
            "qDocId": {
              "type": "string"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Create and open an app](#csh-create-and-open-app)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Global.GetActiveDoc",
      "description": "Returns the handle of the current app.",
      "params": [],
      "result": {
        "name": "Results for Global.GetActiveDoc",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Create and open an app](#csh-create-and-open-app)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.AllowCreateApp",
      "description": "Indicates whether or not a user is able to create an app.",
      "params": [],
      "result": {
        "name": "Results for Global.AllowCreateApp",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.CreateApp",
      "description": "Creates an app.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>\n\n### Logs\nWhen this method is called, audit activity logs are produced to track the user activity.\nIn the case of errors, both audit activity logs and system services logs are produced.\nThe log files are named as follows:\n<table>\n<tbody>\n<tr>\n<th>Audit activity log</th>\n<th>System service log</th>\n</tr>\n<tr>\n<td><i>&lt;MachineName&gt;_AuditActivity_Engine.txt</i> in Qlik Sense Enterprise <br/><i>&lt;MachineName&gt;_AuditActivity_Engine.log<i/> in Qlik Sense Desktop</td>\n<td><i>&lt;MachineName&gt;_ServiceEngine.txt</i> in Qlik Sense Enterprise <br/><i>&lt;MachineName&gt;_ServiceEngine.log<i/> in Qlik Sense Desktop</td>\n</tr>\n</tbody>\n</table>\n\n### Where to find the log files\nThe location of the log files depends on whether you have installed Qlik Sense Enterprise or Qlik Sense Desktop.\n<table>\n<tbody>\n<tr>\n<th>Qlik Sense Enterprise </th>\n<th>Qlik Sense Desktop </th>\n</tr>\n<tr>\n<td>%ProgramData%/Qlik/Sense/Log/Engine</td>\n<td>%UserProfile%/Documents/Qlik/Sense/Log</td>\n</tr>\n</tbody>\n</table>",
      "params": [
        {
          "name": "qAppName",
          "description": "Name of the app.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qLocalizedScriptMainSection",
          "description": "Name of the first section in the script editor.\nThe default value is _Main_.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qLocale",
          "description": "Set custom locale for the app instead of system default.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.CreateApp",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            },
            "qAppId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Create an app](#csh-create-app)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Global.DeleteApp",
      "description": "Deletes an app from the Qlik Sense repository or from the file system.\n\n#### Qlik Sense Enterprise\nIn addition to being removed from the repository, the app is removed from the directory as well:\n*&lt;installation_directory&gt;\\Qlik\\Sense\\Apps*\nThe default installation directory is _ProgramData_.\n\n#### Qlik Sense Desktop\nThe app is deleted from the directory _%userprofile%\\Documents\\Qlik\\ \\Apps_.\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>\n\n#### Logs\nWhen this method is called, audit activity logs are produced to track the user activity.\nIn the case of errors, both audit activity logs and system services logs are produced.\nThe log files are named as follows:\n<table>\n<tbody>\n<tr>\n<th>Audit activity log</th>\n<th>System service log</th>\n</tr>\n<tr>\n<td>&lt;MachineName&gt;AuditActivityEngine.txt in Qlik Sense Enterprise &lt;MachineName&gt;AuditActivityEngine.log in Qlik Sense Desktop</td>\n<td>&lt;MachineName&gt;ServiceEngine.txt in Qlik Sense Enterprise &lt;MachineName&gt;ServiceEngine.log in Qlik Sense Desktop</td>\n</tr>\n</tbody>\n</table>\n\n#### Where to find the log files\nThe location of the log files depends on whether you have installed Qlik Sense Enterprise or Qlik Sense Desktop.\n<table>\n<tbody>\n<tr>\n<th>Qlik Sense Enterprise </th>\n<th>Qlik Sense Desktop </th>\n</tr>\n<tr>\n<td>%ProgramData%/Qlik/Sense/Log/Engine</td>\n<td>%UserProfile%/Documents/Qlik/Sense/Log</td>\n</tr>\n</tbody>\n</table>",
      "params": [
        {
          "name": "qAppId",
          "description": "Identifier of the app to delete.\nIn Qlik Sense Enterprise, the identifier of the app is a GUID in the Qlik Sense repository.\nIn Qlik Sense Desktop, the identifier of the app is the name of the app, as defined in the apps folder _%userprofile%\\Documents\\Qlik\\Sense\\Apps_.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.DeleteApp",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Delete an app](#csh-delete-app)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "delete"
      ]
    },
    {
      "name": "Global.IsDesktopMode",
      "description": "Indicates whether the user is working in Qlik Sense Desktop.",
      "params": [],
      "result": {
        "name": "Results for Global.IsDesktopMode",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Is the user working in Qlik Sense Desktop?](#csh-is-user-working-in-Desktop-mode)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.CancelRequest",
      "description": "Cancels an ongoing request. The request is stopped.",
      "params": [
        {
          "name": "qRequestId",
          "description": "Identifier of the request to stop.",
          "required": true,
          "schema": {
            "type": "integer"
          }
        }
      ],
      "result": {
        "name": "Results for Global.CancelRequest",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Cancel a request](#csh-cancel-request)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.ShutdownProcess",
      "description": "Shuts down the Qlik engine.\n<div class=note>This operation is possible only in Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for Global.ShutdownProcess",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Shut down the Qlik engine](#csh-shutdown-process)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.ReloadExtensionList",
      "description": "Reloads the list of extensions.",
      "params": [],
      "result": {
        "name": "Results for Global.ReloadExtensionList",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.ReplaceAppFromID",
      "description": "Replaces objects of a target app with the objects from a source app.\nThe list of objects in the app to be replaced must be defined in _qIds_.\n<div class=note>The data model of the app cannot be updated. </div> <div class=note>This operation is possible only in Qlik Sense Enterprise.</div>\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>",
      "params": [
        {
          "name": "qTargetAppId",
          "description": "Identifier (GUID) of the target app.\nThe target app is the app to be replaced.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSrcAppID",
          "description": "Identifier (GUID) of the source app.\nThe objects in the source app will replace the objects in the target app.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qIds",
          "description": "QRS identifiers (GUID) of the objects in the target app to be replaced. Only QRS-approved GUIDs are applicable.\nAn object that is QRS-approved, is for example an object that has been published (for example, not private anymore).\nIf an object is private, it should not be included in this list.\nIf the array of identifiers contains objects that are not present in the source app, the objects related to these identifiers are removed from the target app.\nIf _qIds_ is empty, no objects are deleted in the target app.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Global.ReplaceAppFromID",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "update"
      ]
    },
    {
      "name": "Global.CopyApp",
      "description": "Copies an app that is in the Qlik Sense repository.\nThe engine copies the app into an app entity that was previously created by the repository.\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>",
      "params": [
        {
          "name": "qTargetAppId",
          "description": "Identifier (GUID) of the app entity in the Qlik Sense repository.\nThe app entity must have been previously created by the Qlik Sense Repository Service (QRS) API.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSrcAppId",
          "description": "Identifier (GUID) of the source app in the Qlik Sense repository.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qIds",
          "description": "Array of QRS identifiers.\nThe list of all objects in the app to be copied must be given. This list must contain the GUIDs of all these objects.\nIf the list of the QRS identifiers is empty, the _CopyApp_ method copies all objects to the target app.\nScript-defined variables are automatically copied when copying an app. To be able to copy variables not created via script, the GUID of each variable must be provided in the list of QRS identifiers.\nTo get the QRS identifiers of the objects in an app, you can use the QRS API. The GET method (from the QRS API) returns the identifiers of the objects in the app.\nThe following example returns the QRS identifiers of all the objects in a specified app:\nGET /qrs/app/9c3f8634-6191-4a34-a114-a39102058d13\nWhere\n_9c3f8634-6191-4a34-a114-a39102058d13_ is the identifier of the app.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      ],
      "result": {
        "name": "Results for Global.CopyApp",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Copy an app](#csh-copy-app)",
        "[See the Qlik Sense Repository Service API for more information](#csh-RepositoryServiceAPI-Introduction)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "duplicate"
      ]
    },
    {
      "name": "Global.ExportApp",
      "description": "Exports an app from the Qlik Sense repository to the file system.\n<div class=note>This operation is possible only in Qlik Sense Enterprise.</div>\n\n<div class=note>The operation is successful if **qSuccess** is set to true. </div>\n\n#### Logs\nWhen this method is called, audit activity logs are produced to track the user activity.\nIn the case of errors, both audit activity logs and system services logs are produced.\nThe log files are named as follows:\n<table>\n<tbody>\n<tr>\n<th>Audit activity log</th>\n<th>System service log</th>\n</tr>\n<tr>\n<td>*&lt;MachineName&gt;_AuditActivityEngine.txt*</td>\n<td>*&lt;MachineName&gt;_ServiceEngine.txt*</td>\n</tr>\n</tbody>\n</table>\n\nThe log files are located in:\n_%ProgramData%/Qlik/Sense/Log/Engine_",
      "params": [
        {
          "name": "qTargetPath",
          "description": "Path and name of the target app.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSrcAppId",
          "description": "Identifier of the source app. The identifier is a GUID from the Qlik Sense repository.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qIds",
          "description": "Array of identifiers.\nThe list of all the objects in the app to be exported must be given. This list must contain the GUIDs of all these objects.",
          "required": true,
          "schema": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        {
          "name": "qNoData",
          "description": "Set this parameter to true if the data should be omitted in the exported app.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Global.ExportApp",
        "schema": {
          "type": "object",
          "properties": {
            "qSuccess": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Export an app](#csh-export-app)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.PublishApp",
      "description": "Publishes an app to the supplied stream.",
      "params": [
        {
          "name": "qAppId",
          "description": "The Id of the app to publish.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qName",
          "description": "The name of the app to publish.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qStreamId",
          "description": "The stream Id of the app to publish.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.PublishApp",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "publish"
      ]
    },
    {
      "name": "Global.IsPersonalMode",
      "description": "Indicates whether or not the user is working in personal mode (Qlik Sense Desktop).",
      "params": [],
      "result": {
        "name": "Results for Global.IsPersonalMode",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _IsDesktopMode_ method instead",
      "x-qlik-see-also": [
        "[Is the user working in personal mode?](#csh-is-user-working-in-Personal-mode)"
      ],
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetUniqueID",
      "description": "Returns the unique identifier of the endpoint for the current user in the current app.\n<div class=note>This unique identifier can be used for logging purposes.</div>",
      "params": [],
      "result": {
        "name": "Results for Global.GetUniqueID",
        "schema": {
          "type": "object",
          "properties": {
            "qUniqueID": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the identifier of the endpoint](#csh-get-unique-ID)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.OpenDoc",
      "description": "Opens an app and checks if the app needs to be migrated (if the app is deprecated).\nThe _OpenDoc method_ compares the version of the app with the version of Qlik Sense and migrates the app to the current version of Qlik Sense if necessary. Once the migration is done, the app is opened.\nIf no migration is needed, the app is opened immediately.\nThe following applies:\n* The app version is lower than 0.95: no migration is done. Apps older than the version 0.95 are not supported.\n* The app version is at least 0.95 and less than the Qlik Sense version: the app is migrated and then opened.\n* Qlik Sense and the app have the same version: the app is opened, no migration is needed.\n\n<div class=note>If the app is read-only, the app migration cannot occur. An error message is sent.</div>\n\n#### Backups\nIn Qlik Sense Desktop, apps are automatically backed up before a migration.\nThe backup files are located in _%userprofile%\\Documents\\Qlik\\Sense\\AppsBackup\\&lt;Qlik Sense Desktop version&gt;_.\nIn Qlik Sense Enterprise, no automatic back up is run. The back up should be done manually.",
      "params": [
        {
          "name": "qDocName",
          "description": "The GUID (in Qlik Sense Enterprise) or Name (in Qlik Sense Desktop) of the app to retrieve.",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qUserName",
          "description": "Name of the user that opens the app.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qPassword",
          "description": "Password of the user.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qSerial",
          "description": "Current Qlik Sense serial number.",
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "qNoData",
          "description": "Set this parameter to true to be able to open an app without loading its data.\nWhen this parameter is set to true, the objects in the app are present but contain no data. The script can be edited and reloaded.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Global.OpenDoc",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.CreateSessionApp",
      "description": "Creates an empty session app.\nThe following applies:\n* The name of a session app cannot be chosen. The engine automatically assigns a unique identifier to the session app.\n* A session app is not persisted and cannot be saved. Everything created during a session app is non-persisted; for example: objects, data connections.",
      "params": [],
      "result": {
        "name": "Results for Global.CreateSessionApp",
        "schema": {
          "type": "object",
          "properties": {
            "qSessionAppId": {
              "type": "string"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Create an app](#csh-create-app)",
        "[CreateSessionAppFromApp method](#services-Global-CreateSessionAppFromApp)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Global.CreateSessionAppFromApp",
      "description": "Creates a session app from a source app.\nThe following applies:\n* The objects in the source app are copied into the session app.\n* There is no data in the session app, unless it is reloaded.\n* The script of the session app can be edited and reloaded.\n* The name of a session app cannot be chosen. The engine automatically assigns a unique identifier to the session app.\n* A session app is not persisted and cannot be saved. Everything created during a session app is non-persisted; for example: objects, data connections.",
      "params": [
        {
          "name": "qSrcAppId",
          "description": "App identifier of the source app.\nIt corresponds to _qAppId_ returned by the _CreateApp method_ when creating the source app.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.CreateSessionAppFromApp",
        "schema": {
          "type": "object",
          "properties": {
            "qSessionAppId": {
              "type": "string"
            },
            "qReturn": {
              "type": "object",
              "$ref": "#/components/schemas/ObjectInterface"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Create an app](#csh-create-app)",
        "[CreateSessionApp method](#services-Global-CreateSessionApp)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    },
    {
      "name": "Global.ProductVersion",
      "description": "Returns the Qlik Sense version number.",
      "params": [],
      "result": {
        "name": "Results for Global.ProductVersion",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use _EngineVersion_ method instead",
      "x-qlik-see-also": [
        "[Get the version of Qlik Sense](#csh-get-product-version)"
      ],
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetAppEntry",
      "description": "Retrieves the meta data of an app.",
      "params": [
        {
          "name": "qAppID",
          "description": "Identifier of the app, as returned by the _CreateApp method_.\nOne of:\n* Path and name of the app (Qlik Sense Desktop)\n* GUID (Qlik Sense Enterprise)",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetAppEntry",
        "schema": {
          "type": "object",
          "properties": {
            "qEntry": {
              "type": "object",
              "$ref": "#/components/schemas/AppEntry"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.ConfigureReload",
      "description": "Configures the engine's behavior during a reload.\n<div class=note>The _ConfigureReload method_ should be run before the _DoReload method_. </div>",
      "params": [
        {
          "name": "qCancelOnScriptError",
          "description": "If set to true, the script execution is halted on error.\nOtherwise, the engine continues the script execution.\nThis parameter is relevant only if the variable _ErrorMode_ is set to 1.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qUseErrorData",
          "description": "If set to true, any script execution error is returned in _qErrorData_ by the _GetProgress method_.",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        },
        {
          "name": "qInteractOnError",
          "description": "If set to true, the script execution is halted on error and the engine is waiting for an interaction to be performed. If the result from the interaction is 1 (_qDef.qResult_ is 1), the engine continues the script execution otherwise the execution is halted.\nThis parameter is relevant only if the variable _ErrorMode_ is set to 1 and the script is run in debug mode (_qDebug_ is set to true when calling the _DoReload method_).",
          "required": true,
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Global.ConfigureReload",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Configure the reload of a script](#csh-configure-reload-script)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.CancelReload",
      "description": "Cancels an ongoing reload. The reload of the app is stopped. The indexation can be canceled and _true_ is still the return value of the reload task.",
      "params": [
        {
          "name": "qReason",
          "description": "Reason for why the reload was cancelled. This will be echoed back to the user in the script log.",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.CancelReload",
        "schema": {
          "type": "object"
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Cancel the reload of an app](#csh-cancel-reload)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetBNF",
      "description": "Gets the current Backus-Naur Form (BNF) grammar of the Qlik engine scripting language. The BNF rules define the syntax for the script statements and the script or chart functions.\nIn the Qlik engine BNF grammar, a token is a string of one or more characters that is significant as a group. For example, a token could be a function name, a number, a letter, a parenthesis, and so on.",
      "params": [
        {
          "name": "qBnfType",
          "description": "Returns a set of rules defining the syntax for:\n* The script statements and the script functions if _qBnfType_ is set to S.\n* The chart functions if _qBnfType_ is set to E.\n\nOne of:\n* S or SCRIPT_TEXT_SCRIPT\n* E or SCRIPT_TEXT_EXPRESSION",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetBNF",
        "schema": {
          "type": "object",
          "properties": {
            "qBnfDefs": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/BNFDef"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use the _GetBaseBNF_ method instead",
      "x-qlik-see-also": [
        "[Get the Qlik Sense script syntax grammar](#csh-get-script-syntax-grammar)"
      ],
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetFunctions",
      "description": "Gets the list of all the script functions.",
      "params": [
        {
          "name": "qGroup",
          "description": "Name of the group.\nDefault is all groups.\n\nOne of:\n* ALL or FUNC_GROUP_ALL\n* U or FUNC_GROUP_UNKNOWN\n* NONE or FUNC_GROUP_NONE\n* AGGR or FUNC_GROUP_AGGR\n* NUM or FUNC_GROUP_NUMERIC\n* RNG or FUNC_GROUP_RANGE\n* EXP or FUNC_GROUP_EXPONENTIAL_AND_LOGARITHMIC\n* TRIG or FUNC_GROUP_TRIGONOMETRIC_AND_HYPERBOLIC\n* FIN or FUNC_GROUP_FINANCIAL\n* MATH or FUNC_GROUP_MATH_CONSTANT_AND_PARAM_FREE\n* COUNT or FUNC_GROUP_COUNTER\n* STR or FUNC_GROUP_STRING\n* MAPP or FUNC_GROUP_MAPPING\n* RCRD or FUNC_GROUP_INTER_RECORD\n* CND or FUNC_GROUP_CONDITIONAL\n* LOG or FUNC_GROUP_LOGICAL\n* NULL or FUNC_GROUP_NULL\n* SYS or FUNC_GROUP_SYSTEM\n* FILE or FUNC_GROUP_FILE\n* TBL or FUNC_GROUP_TABLE\n* DATE or FUNC_GROUP_DATE_AND_TIME\n* NUMI or FUNC_GROUP_NUMBER_INTERPRET\n* FRMT or FUNC_GROUP_FORMATTING\n* CLR or FUNC_GROUP_COLOR\n* RNK or FUNC_GROUP_RANKING\n* GEO or FUNC_GROUP_GEO\n* EXT or FUNC_GROUP_EXTERNAL\n* PROB or FUNC_GROUP_PROBABILITY\n* ARRAY or FUNC_GROUP_ARRAY\n* LEG or FUNC_GROUP_LEGACY\n* DB or FUNC_GROUP_DB_NATIVE\n* WINDOW or FUNC_GROUP_WINDOW",
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetFunctions",
        "schema": {
          "type": "object",
          "properties": {
            "qFunctions": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Function"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the functions](#csh-list-functions)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetOdbcDsns",
      "description": "Returns the list of the ODBC connectors that are installed in the system.",
      "params": [],
      "result": {
        "name": "Results for Global.GetOdbcDsns",
        "schema": {
          "type": "object",
          "properties": {
            "qOdbcDsns": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/OdbcDsn"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the ODBC connections](#csh-list-ODBC-connections)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetOleDbProviders",
      "description": "Returns the list of the OLEDB providers installed on the system.",
      "params": [],
      "result": {
        "name": "Results for Global.GetOleDbProviders",
        "schema": {
          "type": "object",
          "properties": {
            "qOleDbProviders": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/OleDbProvider"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the OLEDB providers](#csh-list-OLEDB-providers)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetDatabasesFromConnectionString",
      "description": "Lists the databases in a ODBC, OLEDB or CUSTOM data source.",
      "params": [
        {
          "name": "qConnection",
          "description": "Information about the connection.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/Connection"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetDatabasesFromConnectionString",
        "schema": {
          "type": "object",
          "properties": {
            "qDatabases": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Database"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the databases of a ODBC, OLEDB or CUSTOM connection](#csh-list-databases-Odbc-Oledb-custom-connection)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.IsValidConnectionString",
      "description": "Checks if a connection string is valid.",
      "params": [
        {
          "name": "qConnection",
          "description": "Information about the connection.",
          "required": true,
          "schema": {
            "type": "object",
            "$ref": "#/components/schemas/Connection"
          }
        }
      ],
      "result": {
        "name": "Results for Global.IsValidConnectionString",
        "schema": {
          "type": "object",
          "properties": {
            "qReturn": {
              "type": "boolean"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetDefaultAppFolder",
      "description": "Returns the folder where the apps are stored.\n<div class=note>This method applies only if running Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for Global.GetDefaultAppFolder",
        "schema": {
          "type": "object",
          "properties": {
            "qPath": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[Get the apps folder](#csh-get-app-folder)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetLogicalDriveStrings",
      "description": "Lists the logical drives in the system.\n<div class=note>This method applies only if running Qlik Sense Desktop.</div>",
      "params": [],
      "result": {
        "name": "Results for Global.GetLogicalDriveStrings",
        "schema": {
          "type": "object",
          "properties": {
            "qDrives": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DriveInfo"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the drives in the system](#csh-list-drives-in-system)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetFolderItemsForPath",
      "description": "Returns the files and folders located at a specified path.",
      "params": [
        {
          "name": "qPath",
          "description": "Absolute or relative path.\nRelative paths are relative to the default _Apps_ folder.\n\n**In Qlik Sense Enterprise:**\n\nThe list is generated by the QRS. The GetDocList method only returns documents the current user is allowed to access.\n\n**In Qlik Sense Desktop:**\n\nThe apps are located in _C:\\Users\\&lt;user name&gt;\\Documents\\Qlik\\Sense\\Apps_.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetFolderItemsForPath",
        "schema": {
          "type": "object",
          "properties": {
            "qFolderItems": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/FolderItem"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the files and folders in a specified path](#csh-list-files-and-folders-in-a-path)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetSupportedCodePages",
      "description": "Lists the supported code pages.",
      "params": [],
      "result": {
        "name": "Results for Global.GetSupportedCodePages",
        "schema": {
          "type": "object",
          "properties": {
            "qCodePages": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/CodePage"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the supported code pages](#csh-list-supported-code-pages)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetCustomConnectors",
      "description": "List the custom connectors available in the system.",
      "params": [
        {
          "name": "qReloadList",
          "description": "Sets if the list of custom connectors should be reloaded or not.\nIf set to false, only the connectors that were returned the previous time are returned. If new connectors have been added since the last call to the _GetCustomConnectors_ method was made, the new connectors are not returned.\nIf set to true, the _GetCustomConnectors_ method looks for new connectors in the file system.\nThe default value is false.",
          "schema": {
            "type": "boolean"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetCustomConnectors",
        "schema": {
          "type": "object",
          "properties": {
            "qConnectors": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/CustomConnector"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[List the custom connectors](#csh-list-custom-connectors)"
      ],
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "reload"
      ]
    },
    {
      "name": "Global.GetStreamList",
      "description": "Lists the streams.",
      "params": [],
      "result": {
        "name": "Results for Global.GetStreamList",
        "schema": {
          "type": "object",
          "properties": {
            "qStreamList": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/NxStreamListEntry"
              }
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use general purpose endpoint in [QRS API: GET qrs/stream/](/Subsystems/RepositoryServiceAPI/Content/Sense_RepositoryServiceAPI/RepositoryServiceAPI-Get.htm) instead.",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.EngineVersion",
      "description": "Returns the version number of the Qlik engine component.",
      "params": [],
      "result": {
        "name": "Results for Global.EngineVersion",
        "schema": {
          "type": "object",
          "properties": {
            "qVersion": {
              "type": "object",
              "$ref": "#/components/schemas/NxEngineVersion"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetBaseBNF",
      "description": "Gets the current Backus-Naur Form (BNF) grammar of the Qlik engine scripting language, as well as a string hash calculated from that grammar. The BNF rules define the syntax for the script statements and the script or chart functions. If the hash changes between subsequent calls to this method, this indicates that the BNF has changed.\nIn the Qlik engine grammars, a token is a string of one or more characters that is significant as a group. For example, a token could be a function name, a number, a letter, a parenthesis, and so on.",
      "params": [
        {
          "name": "qBnfType",
          "description": "The type of grammar to return:\n* The script statements and the script functions if _qBnfType_ is set to S.\n* The chart functions if _qBnfType_ is set to E.\n\nOne of:\n* S or SCRIPT_TEXT_SCRIPT\n* E or SCRIPT_TEXT_EXPRESSION",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetBaseBNF",
        "schema": {
          "type": "object",
          "properties": {
            "qBnfDefs": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/BNFDef"
              }
            },
            "qBnfHash": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[GetBaseBNFHash method](#services-Global-GetBaseBNFHash)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetBaseBNFHash",
      "description": "Gets a string hash calculated from the current Backus-Naur Form (BNF) grammar of the Qlik engine scripting language. If the hash changes between subsequent calls to this method, this indicates that the BNF grammar has changed.",
      "params": [
        {
          "name": "qBnfType",
          "description": "The type of grammar to return:\n* The script statements and the script functions if _qBnfType_ is set to S.\n* The chart functions if _qBnfType_ is set to E.\n\nOne of:\n* S or SCRIPT_TEXT_SCRIPT\n* E or SCRIPT_TEXT_EXPRESSION",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetBaseBNFHash",
        "schema": {
          "type": "object",
          "properties": {
            "qBnfHash": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-see-also": [
        "[GetBaseBNF method](#services-Global-GetBaseBNF)"
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.GetBaseBNFString",
      "description": "Gets the current Backus-Naur Form (BNF) grammar of the Qlik engine scripting language, as well as a string hash calculated from that grammar. The BNF rules define the syntax for the script statements and the script or chart functions. If the hash changes between subsequent calls to this method, this indicates that the BNF has changed.\nIn the Qlik engine grammars, a token is a string of one or more characters that is significant as a group. For example, a token could be a function name, a number, a letter, a parenthesis, and so on.",
      "params": [
        {
          "name": "qBnfType",
          "description": "The type of grammar to return:\n* S: returns the script statements and the script functions.\n* E: returns the chart functions.\n\nOne of:\n* S or SCRIPT_TEXT_SCRIPT\n* E or SCRIPT_TEXT_EXPRESSION",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.GetBaseBNFString",
        "schema": {
          "type": "object",
          "properties": {
            "qBnfStr": {
              "type": "string"
            },
            "qBnfHash": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-stability": "locked"
    },
    {
      "name": "Global.SaveAs",
      "description": "Save a copy of an app with a different name.\nCan be used to save a session app as an ordinary app.",
      "params": [
        {
          "name": "qNewAppName",
          "description": "&lt;Name of the saved app&gt;",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "result": {
        "name": "Results for Global.SaveAs",
        "schema": {
          "type": "object",
          "properties": {
            "qNewAppId": {
              "type": "string"
            }
          }
        }
      },
      "errors": [
        {
          "$ref": "#/components/errors/GenericErrors"
        }
      ],
      "x-qlik-deprecation-description": "Use Document _SaveAs_ method instead",
      "x-qlik-deprecated": true,
      "x-qlik-stability": "locked",
      "x-qlik-access-control": [
        "create"
      ]
    }
  ],
  "components": {
    "schemas": {
      "NxLocalizedErrorCode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": -128,
            "title": "LOCERR_INTERNAL_ERROR"
          },
          {
            "x-qlik-const": -1,
            "title": "LOCERR_GENERIC_UNKNOWN"
          },
          {
            "x-qlik-const": 0,
            "title": "LOCERR_GENERIC_OK"
          },
          {
            "x-qlik-const": 1,
            "title": "LOCERR_GENERIC_NOT_SET"
          },
          {
            "x-qlik-const": 2,
            "title": "LOCERR_GENERIC_NOT_FOUND"
          },
          {
            "x-qlik-const": 3,
            "title": "LOCERR_GENERIC_ALREADY_EXISTS"
          },
          {
            "x-qlik-const": 4,
            "title": "LOCERR_GENERIC_INVALID_PATH"
          },
          {
            "x-qlik-const": 5,
            "title": "LOCERR_GENERIC_ACCESS_DENIED"
          },
          {
            "x-qlik-const": 6,
            "title": "LOCERR_GENERIC_OUT_OF_MEMORY"
          },
          {
            "x-qlik-const": 7,
            "title": "LOCERR_GENERIC_NOT_INITIALIZED"
          },
          {
            "x-qlik-const": 8,
            "title": "LOCERR_GENERIC_INVALID_PARAMETERS"
          },
          {
            "x-qlik-const": 9,
            "title": "LOCERR_GENERIC_EMPTY_PARAMETERS"
          },
          {
            "x-qlik-const": 10,
            "title": "LOCERR_GENERIC_INTERNAL_ERROR"
          },
          {
            "x-qlik-const": 11,
            "title": "LOCERR_GENERIC_CORRUPT_DATA"
          },
          {
            "x-qlik-const": 12,
            "title": "LOCERR_GENERIC_MEMORY_INCONSISTENCY"
          },
          {
            "x-qlik-const": 13,
            "title": "LOCERR_GENERIC_INVISIBLE_OWNER_ABORT"
          },
          {
            "x-qlik-const": 14,
            "title": "LOCERR_GENERIC_PROHIBIT_VALIDATE"
          },
          {
            "x-qlik-const": 15,
            "title": "LOCERR_GENERIC_ABORTED"
          },
          {
            "x-qlik-const": 16,
            "title": "LOCERR_GENERIC_CONNECTION_LOST"
          },
          {
            "x-qlik-const": 17,
            "title": "LOCERR_GENERIC_UNSUPPORTED_IN_PRODUCT_VERSION"
          },
          {
            "x-qlik-const": 18,
            "title": "LOCERR_GENERIC_REST_CONNECTION_FAILURE"
          },
          {
            "x-qlik-const": 19,
            "title": "LOCERR_GENERIC_MEMORY_LIMIT_REACHED"
          },
          {
            "x-qlik-const": 20,
            "title": "LOCERR_GENERIC_NOT_IMPLEMENTED"
          },
          {
            "x-qlik-const": 21,
            "title": "LOCERR_GENERIC_ENGINE_TERMINATED"
          },
          {
            "x-qlik-const": 22,
            "title": "LOCERR_GENERIC_WRITE_OPERATIONS_LIMIT_REACHED"
          },
          {
            "x-qlik-const": 400,
            "title": "LOCERR_HTTP_400"
          },
          {
            "x-qlik-const": 401,
            "title": "LOCERR_HTTP_401"
          },
          {
            "x-qlik-const": 402,
            "title": "LOCERR_HTTP_402"
          },
          {
            "x-qlik-const": 403,
            "title": "LOCERR_HTTP_403"
          },
          {
            "x-qlik-const": 404,
            "title": "LOCERR_HTTP_404"
          },
          {
            "x-qlik-const": 405,
            "title": "LOCERR_HTTP_405"
          },
          {
            "x-qlik-const": 406,
            "title": "LOCERR_HTTP_406"
          },
          {
            "x-qlik-const": 407,
            "title": "LOCERR_HTTP_407"
          },
          {
            "x-qlik-const": 408,
            "title": "LOCERR_HTTP_408"
          },
          {
            "x-qlik-const": 409,
            "title": "LOCERR_HTTP_409"
          },
          {
            "x-qlik-const": 410,
            "title": "LOCERR_HTTP_410"
          },
          {
            "x-qlik-const": 411,
            "title": "LOCERR_HTTP_411"
          },
          {
            "x-qlik-const": 412,
            "title": "LOCERR_HTTP_412"
          },
          {
            "x-qlik-const": 413,
            "title": "LOCERR_HTTP_413"
          },
          {
            "x-qlik-const": 414,
            "title": "LOCERR_HTTP_414"
          },
          {
            "x-qlik-const": 415,
            "title": "LOCERR_HTTP_415"
          },
          {
            "x-qlik-const": 416,
            "title": "LOCERR_HTTP_416"
          },
          {
            "x-qlik-const": 417,
            "title": "LOCERR_HTTP_417"
          },
          {
            "x-qlik-const": 422,
            "title": "LOCERR_HTTP_422"
          },
          {
            "x-qlik-const": 423,
            "title": "LOCERR_HTTP_423"
          },
          {
            "x-qlik-const": 429,
            "title": "LOCERR_HTTP_429"
          },
          {
            "x-qlik-const": 500,
            "title": "LOCERR_HTTP_500"
          },
          {
            "x-qlik-const": 501,
            "title": "LOCERR_HTTP_501"
          },
          {
            "x-qlik-const": 502,
            "title": "LOCERR_HTTP_502"
          },
          {
            "x-qlik-const": 503,
            "title": "LOCERR_HTTP_503"
          },
          {
            "x-qlik-const": 504,
            "title": "LOCERR_HTTP_504"
          },
          {
            "x-qlik-const": 505,
            "title": "LOCERR_HTTP_505"
          },
          {
            "x-qlik-const": 509,
            "title": "LOCERR_HTTP_509"
          },
          {
            "x-qlik-const": 700,
            "title": "LOCERR_HTTP_COULD_NOT_RESOLVE_HOST"
          },
          {
            "x-qlik-const": 1000,
            "title": "LOCERR_APP_ALREADY_EXISTS"
          },
          {
            "x-qlik-const": 1001,
            "title": "LOCERR_APP_INVALID_NAME"
          },
          {
            "x-qlik-const": 1002,
            "title": "LOCERR_APP_ALREADY_OPEN"
          },
          {
            "x-qlik-const": 1003,
            "title": "LOCERR_APP_NOT_FOUND"
          },
          {
            "x-qlik-const": 1004,
            "title": "LOCERR_APP_IMPORT_FAILED"
          },
          {
            "x-qlik-const": 1005,
            "title": "LOCERR_APP_SAVE_FAILED"
          },
          {
            "x-qlik-const": 1006,
            "title": "LOCERR_APP_CREATE_FAILED"
          },
          {
            "x-qlik-const": 1007,
            "title": "LOCERR_APP_INVALID"
          },
          {
            "x-qlik-const": 1008,
            "title": "LOCERR_APP_CONNECT_FAILED"
          },
          {
            "x-qlik-const": 1009,
            "title": "LOCERR_APP_ALREADY_OPEN_IN_DIFFERENT_MODE"
          },
          {
            "x-qlik-const": 1010,
            "title": "LOCERR_APP_MIGRATION_COULD_NOT_CONTACT_MIGRATION_SERVICE"
          },
          {
            "x-qlik-const": 1011,
            "title": "LOCERR_APP_MIGRATION_COULD_NOT_START_MIGRATION"
          },
          {
            "x-qlik-const": 1012,
            "title": "LOCERR_APP_MIGRATION_FAILURE"
          },
          {
            "x-qlik-const": 1013,
            "title": "LOCERR_APP_SCRIPT_MISSING"
          },
          {
            "x-qlik-const": 1014,
            "title": "LOCERR_APP_EXPORT_FAILED"
          },
          {
            "x-qlik-const": 1015,
            "title": "LOCERR_APP_SIZE_EXCEEDED"
          },
          {
            "x-qlik-const": 1016,
            "title": "LOCERR_APP_DIRECT_QUERY_WORKLOAD_NOT_SUPPORTED"
          },
          {
            "x-qlik-const": 1017,
            "title": "LOCERR_APP_NOT_OPEN"
          },
          {
            "x-qlik-const": 1018,
            "title": "LOCERR_APP_EVENT_SOURCE_TIMEOUT"
          },
          {
            "x-qlik-const": 2000,
            "title": "LOCERR_CONNECTION_ALREADY_EXISTS"
          },
          {
            "x-qlik-const": 2001,
            "title": "LOCERR_CONNECTION_NOT_FOUND"
          },
          {
            "x-qlik-const": 2002,
            "title": "LOCERR_CONNECTION_FAILED_TO_LOAD"
          },
          {
            "x-qlik-const": 2003,
            "title": "LOCERR_CONNECTION_FAILED_TO_IMPORT"
          },
          {
            "x-qlik-const": 2004,
            "title": "LOCERR_CONNECTION_NAME_IS_INVALID"
          },
          {
            "x-qlik-const": 2005,
            "title": "LOCERR_CONNECTION_MISSING_CREDENTIALS"
          },
          {
            "x-qlik-const": 2300,
            "title": "LOCERR_CONNECTOR_NO_FILE_STREAMING_SUPPORT"
          },
          {
            "x-qlik-const": 2301,
            "title": "LOCERR_CONNECTOR_FILESIZE_EXCEEDED_BUFFER_SIZE"
          },
          {
            "x-qlik-const": 3000,
            "title": "LOCERR_FILE_ACCESS_DENIED"
          },
          {
            "x-qlik-const": 3001,
            "title": "LOCERR_FILE_NAME_INVALID"
          },
          {
            "x-qlik-const": 3002,
            "title": "LOCERR_FILE_CORRUPT"
          },
          {
            "x-qlik-const": 3003,
            "title": "LOCERR_FILE_NOT_FOUND"
          },
          {
            "x-qlik-const": 3004,
            "title": "LOCERR_FILE_FORMAT_UNSUPPORTED"
          },
          {
            "x-qlik-const": 3005,
            "title": "LOCERR_FILE_OPENED_IN_UNSUPPORTED_MODE"
          },
          {
            "x-qlik-const": 3006,
            "title": "LOCERR_FILE_TABLE_NOT_FOUND"
          },
          {
            "x-qlik-const": 4000,
            "title": "LOCERR_USER_ACCESS_DENIED"
          },
          {
            "x-qlik-const": 4001,
            "title": "LOCERR_USER_IMPERSONATION_FAILED"
          },
          {
            "x-qlik-const": 5000,
            "title": "LOCERR_SERVER_OUT_OF_SESSION_AND_USER_CALS"
          },
          {
            "x-qlik-const": 5001,
            "title": "LOCERR_SERVER_OUT_OF_SESSION_CALS"
          },
          {
            "x-qlik-const": 5002,
            "title": "LOCERR_SERVER_OUT_OF_USAGE_CALS"
          },
          {
            "x-qlik-const": 5003,
            "title": "LOCERR_SERVER_OUT_OF_CALS"
          },
          {
            "x-qlik-const": 5004,
            "title": "LOCERR_SERVER_OUT_OF_NAMED_CALS"
          },
          {
            "x-qlik-const": 5005,
            "title": "LOCERR_SERVER_OFF_DUTY"
          },
          {
            "x-qlik-const": 5006,
            "title": "LOCERR_SERVER_BUSY"
          },
          {
            "x-qlik-const": 5007,
            "title": "LOCERR_SERVER_LICENSE_EXPIRED"
          },
          {
            "x-qlik-const": 5008,
            "title": "LOCERR_SERVER_AJAX_DISABLED"
          },
          {
            "x-qlik-const": 5009,
            "title": "LOCERR_SERVER_NO_TOKEN"
          },
          {
            "x-qlik-const": 6000,
            "title": "LOCERR_HC_INVALID_OBJECT"
          },
          {
            "x-qlik-const": 6001,
            "title": "LOCERR_HC_RESULT_TOO_LARGE"
          },
          {
            "x-qlik-const": 6002,
            "title": "LOCERR_HC_INVALID_OBJECT_STATE"
          },
          {
            "x-qlik-const": 6003,
            "title": "LOCERR_HC_MODAL_OBJECT_ERROR"
          },
          {
            "x-qlik-const": 7000,
            "title": "LOCERR_CALC_INVALID_DEF"
          },
          {
            "x-qlik-const": 7001,
            "title": "LOCERR_CALC_NOT_IN_LIB"
          },
          {
            "x-qlik-const": 7002,
            "title": "LOCERR_CALC_HEAP_ERROR"
          },
          {
            "x-qlik-const": 7003,
            "title": "LOCERR_CALC_TOO_LARGE"
          },
          {
            "x-qlik-const": 7004,
            "title": "LOCERR_CALC_TIMEOUT"
          },
          {
            "x-qlik-const": 7005,
            "title": "LOCERR_CALC_EVAL_CONDITION_FAILED"
          },
          {
            "x-qlik-const": 7006,
            "title": "LOCERR_CALC_MIXED_LINKED_AGGREGATION"
          },
          {
            "x-qlik-const": 7007,
            "title": "LOCERR_CALC_MISSING_LINKED"
          },
          {
            "x-qlik-const": 7008,
            "title": "LOCERR_CALC_INVALID_COL_SORT"
          },
          {
            "x-qlik-const": 7009,
            "title": "LOCERR_CALC_PAGES_TOO_LARGE"
          },
          {
            "x-qlik-const": 7010,
            "title": "LOCERR_CALC_SEMANTIC_FIELD_NOT_ALLOWED"
          },
          {
            "x-qlik-const": 7011,
            "title": "LOCERR_CALC_VALIDATION_STATE_INVALID"
          },
          {
            "x-qlik-const": 7012,
            "title": "LOCERR_CALC_PIVOT_DIMENSIONS_ALREADY_EXISTS"
          },
          {
            "x-qlik-const": 7013,
            "title": "LOCERR_CALC_MISSING_LINKED_FIELD"
          },
          {
            "x-qlik-const": 7014,
            "title": "LOCERR_CALC_NOT_CALCULATED"
          },
          {
            "x-qlik-const": 8000,
            "title": "LOCERR_LAYOUT_EXTENDS_INVALID_ID"
          },
          {
            "x-qlik-const": 8001,
            "title": "LOCERR_LAYOUT_LINKED_OBJECT_NOT_FOUND"
          },
          {
            "x-qlik-const": 8002,
            "title": "LOCERR_LAYOUT_LINKED_OBJECT_INVALID"
          },
          {
            "x-qlik-const": 9000,
            "title": "LOCERR_PERSISTENCE_WRITE_FAILED"
          },
          {
            "x-qlik-const": 9001,
            "title": "LOCERR_PERSISTENCE_READ_FAILED"
          },
          {
            "x-qlik-const": 9002,
            "title": "LOCERR_PERSISTENCE_DELETE_FAILED"
          },
          {
            "x-qlik-const": 9003,
            "title": "LOCERR_PERSISTENCE_NOT_FOUND"
          },
          {
            "x-qlik-const": 9004,
            "title": "LOCERR_PERSISTENCE_UNSUPPORTED_VERSION"
          },
          {
            "x-qlik-const": 9005,
            "title": "LOCERR_PERSISTENCE_MIGRATION_FAILED_READ_ONLY"
          },
          {
            "x-qlik-const": 9006,
            "title": "LOCERR_PERSISTENCE_MIGRATION_CANCELLED"
          },
          {
            "x-qlik-const": 9007,
            "title": "LOCERR_PERSISTENCE_MIGRATION_BACKUP_FAILED"
          },
          {
            "x-qlik-const": 9008,
            "title": "LOCERR_PERSISTENCE_DISK_FULL"
          },
          {
            "x-qlik-const": 9009,
            "title": "LOCERR_PERSISTENCE_NOT_SUPPORTED_FOR_SESSION_APP"
          },
          {
            "x-qlik-const": 9010,
            "title": "LOCERR_PERSISTENCE_MOVE_FAILED"
          },
          {
            "x-qlik-const": 9011,
            "title": "LOCERR_PERSISTENCE_OBJECT_LOCKED"
          },
          {
            "x-qlik-const": 9012,
            "title": "LOCERR_PERSISTENCE_ENCRYPTION_KEY_MIGRATION_ONGOING"
          },
          {
            "x-qlik-const": 9510,
            "title": "LOCERR_PERSISTENCE_SYNC_SET_CHUNK_INVALID_PARAMETERS"
          },
          {
            "x-qlik-const": 9511,
            "title": "LOCERR_PERSISTENCE_SYNC_GET_CHUNK_INVALID_PARAMETERS"
          },
          {
            "x-qlik-const": 10000,
            "title": "LOCERR_SCRIPT_DATASOURCE_ACCESS_DENIED"
          },
          {
            "x-qlik-const": 11000,
            "title": "LOCERR_RELOAD_IN_PROGRESS"
          },
          {
            "x-qlik-const": 11001,
            "title": "LOCERR_RELOAD_TABLE_X_NOT_FOUND"
          },
          {
            "x-qlik-const": 11002,
            "title": "LOCERR_RELOAD_UNKNOWN_STATEMENT"
          },
          {
            "x-qlik-const": 11003,
            "title": "LOCERR_RELOAD_EXPECTED_SOMETHING_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11004,
            "title": "LOCERR_RELOAD_EXPECTED_NOTHING_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11005,
            "title": "LOCERR_RELOAD_EXPECTED_ONE_OF_1_TOKENS_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11006,
            "title": "LOCERR_RELOAD_EXPECTED_ONE_OF_2_TOKENS_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11007,
            "title": "LOCERR_RELOAD_EXPECTED_ONE_OF_3_TOKENS_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11008,
            "title": "LOCERR_RELOAD_EXPECTED_ONE_OF_4_TOKENS_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11009,
            "title": "LOCERR_RELOAD_EXPECTED_ONE_OF_5_TOKENS_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11010,
            "title": "LOCERR_RELOAD_EXPECTED_ONE_OF_6_TOKENS_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11011,
            "title": "LOCERR_RELOAD_EXPECTED_ONE_OF_7_TOKENS_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11012,
            "title": "LOCERR_RELOAD_EXPECTED_ONE_OF_8_OR_MORE_TOKENS_FOUND_UNKNOWN"
          },
          {
            "x-qlik-const": 11013,
            "title": "LOCERR_RELOAD_FIELD_X_NOT_FOUND"
          },
          {
            "x-qlik-const": 11014,
            "title": "LOCERR_RELOAD_MAPPING_TABLE_X_NOT_FOUND"
          },
          {
            "x-qlik-const": 11015,
            "title": "LOCERR_RELOAD_LIB_CONNECTION_X_NOT_FOUND"
          },
          {
            "x-qlik-const": 11016,
            "title": "LOCERR_RELOAD_NAME_ALREADY_TAKEN"
          },
          {
            "x-qlik-const": 11017,
            "title": "LOCERR_RELOAD_WRONG_FILE_FORMAT_DIF"
          },
          {
            "x-qlik-const": 11018,
            "title": "LOCERR_RELOAD_WRONG_FILE_FORMAT_BIFF"
          },
          {
            "x-qlik-const": 11019,
            "title": "LOCERR_RELOAD_WRONG_FILE_FORMAT_ENCRYPTED"
          },
          {
            "x-qlik-const": 11020,
            "title": "LOCERR_RELOAD_OPEN_FILE_ERROR"
          },
          {
            "x-qlik-const": 11021,
            "title": "LOCERR_RELOAD_AUTO_GENERATE_COUNT"
          },
          {
            "x-qlik-const": 11022,
            "title": "LOCERR_RELOAD_PE_ILLEGAL_PREFIX_COMB"
          },
          {
            "x-qlik-const": 11023,
            "title": "LOCERR_RELOAD_MATCHING_CONTROL_STATEMENT_ERROR"
          },
          {
            "x-qlik-const": 11024,
            "title": "LOCERR_RELOAD_MATCHING_LIBPATH_X_NOT_FOUND"
          },
          {
            "x-qlik-const": 11025,
            "title": "LOCERR_RELOAD_MATCHING_LIBPATH_X_INVALID"
          },
          {
            "x-qlik-const": 11026,
            "title": "LOCERR_RELOAD_MATCHING_LIBPATH_X_OUTSIDE"
          },
          {
            "x-qlik-const": 11027,
            "title": "LOCERR_RELOAD_NO_QUALIFIED_PATH_FOR_FILE"
          },
          {
            "x-qlik-const": 11028,
            "title": "LOCERR_RELOAD_MODE_STATEMENT_ONLY_FOR_LIB_PATHS"
          },
          {
            "x-qlik-const": 11029,
            "title": "LOCERR_RELOAD_INCONSISTENT_USE_OF_SEMANTIC_FIELDS"
          },
          {
            "x-qlik-const": 11030,
            "title": "LOCERR_RELOAD_NO_OPEN_DATABASE"
          },
          {
            "x-qlik-const": 11031,
            "title": "LOCERR_RELOAD_AGGREGATION_REQUIRED_BY_GROUP_BY"
          },
          {
            "x-qlik-const": 11032,
            "title": "LOCERR_RELOAD_CONNECT_MUST_USE_LIB_PREFIX_IN_THIS_MODE"
          },
          {
            "x-qlik-const": 11033,
            "title": "LOCERR_RELOAD_ODBC_CONNECT_FAILED"
          },
          {
            "x-qlik-const": 11034,
            "title": "LOCERR_RELOAD_OLEDB_CONNECT_FAILED"
          },
          {
            "x-qlik-const": 11035,
            "title": "LOCERR_RELOAD_CUSTOM_CONNECT_FAILED"
          },
          {
            "x-qlik-const": 11036,
            "title": "LOCERR_RELOAD_ODBC_READ_FAILED"
          },
          {
            "x-qlik-const": 11037,
            "title": "LOCERR_RELOAD_OLEDB_READ_FAILED"
          },
          {
            "x-qlik-const": 11038,
            "title": "LOCERR_RELOAD_CUSTOM_READ_FAILED"
          },
          {
            "x-qlik-const": 11039,
            "title": "LOCERR_RELOAD_BINARY_LOAD_PROHIBITED"
          },
          {
            "x-qlik-const": 11040,
            "title": "LOCERR_RELOAD_CONNECTOR_START_FAILED"
          },
          {
            "x-qlik-const": 11041,
            "title": "LOCERR_RELOAD_CONNECTOR_NOT_RESPONDING"
          },
          {
            "x-qlik-const": 11042,
            "title": "LOCERR_RELOAD_CONNECTOR_REPLY_ERROR"
          },
          {
            "x-qlik-const": 11043,
            "title": "LOCERR_RELOAD_CONNECTOR_CONNECT_ERROR"
          },
          {
            "x-qlik-const": 11044,
            "title": "LOCERR_RELOAD_CONNECTOR_NOT_FOUND_ERROR"
          },
          {
            "x-qlik-const": 11045,
            "title": "LOCERR_RELOAD_INPUT_FIELD_WITH_DUPLICATE_KEYS"
          },
          {
            "x-qlik-const": 11046,
            "title": "LOCERR_RELOAD_CONCATENATE_LOAD_NO_PREVIOUS_TABLE"
          },
          {
            "x-qlik-const": 11047,
            "title": "LOCERR_RELOAD_WRONG_FILE_FORMAT_QVD"
          },
          {
            "x-qlik-const": 11048,
            "title": "LOCERR_RELOAD_ACTION_BLOCKED_ENTITLEMENT"
          },
          {
            "x-qlik-const": 12000,
            "title": "LOCERR_PERSONAL_NEW_VERSION_AVAILABLE"
          },
          {
            "x-qlik-const": 12001,
            "title": "LOCERR_PERSONAL_VERSION_EXPIRED"
          },
          {
            "x-qlik-const": 12002,
            "title": "LOCERR_PERSONAL_SECTION_ACCESS_DETECTED"
          },
          {
            "x-qlik-const": 12003,
            "title": "LOCERR_PERSONAL_APP_DELETION_FAILED"
          },
          {
            "x-qlik-const": 12004,
            "title": "LOCERR_USER_AUTHENTICATION_FAILURE"
          },
          {
            "x-qlik-const": 13000,
            "title": "LOCERR_EXPORT_OUT_OF_MEMORY"
          },
          {
            "x-qlik-const": 13001,
            "title": "LOCERR_EXPORT_NO_DATA"
          },
          {
            "x-qlik-const": 14000,
            "title": "LOCERR_SYNC_INVALID_OFFSET"
          },
          {
            "x-qlik-const": 15000,
            "title": "LOCERR_SEARCH_TIMEOUT"
          },
          {
            "x-qlik-const": 16000,
            "title": "LOCERR_DIRECT_DISCOVERY_LINKED_EXPRESSION_FAIL"
          },
          {
            "x-qlik-const": 16001,
            "title": "LOCERR_DIRECT_DISCOVERY_ROWCOUNT_OVERFLOW"
          },
          {
            "x-qlik-const": 16002,
            "title": "LOCERR_DIRECT_DISCOVERY_EMPTY_RESULT"
          },
          {
            "x-qlik-const": 16003,
            "title": "LOCERR_DIRECT_DISCOVERY_DB_CONNECTION_FAILED"
          },
          {
            "x-qlik-const": 16004,
            "title": "LOCERR_DIRECT_DISCOVERY_MEASURE_NOT_ALLOWED"
          },
          {
            "x-qlik-const": 16005,
            "title": "LOCERR_DIRECT_DISCOVERY_DETAIL_NOT_ALLOWED"
          },
          {
            "x-qlik-const": 16006,
            "title": "LOCERR_DIRECT_DISCOVERY_NOT_SYNTH_CIRCULAR_ALLOWED"
          },
          {
            "x-qlik-const": 16007,
            "title": "LOCERR_DIRECT_DISCOVERY_ONLY_ONE_DD_TABLE_ALLOWED"
          },
          {
            "x-qlik-const": 16008,
            "title": "LOCERR_DIRECT_DISCOVERY_DB_AUTHORIZATION_FAILED"
          },
          {
            "x-qlik-const": 17000,
            "title": "LOCERR_SMART_LOAD_TABLE_NOT_FOUND"
          },
          {
            "x-qlik-const": 17001,
            "title": "LOCERR_SMART_LOAD_TABLE_DUPLICATED"
          },
          {
            "x-qlik-const": 18000,
            "title": "LOCERR_VARIABLE_NO_NAME"
          },
          {
            "x-qlik-const": 18001,
            "title": "LOCERR_VARIABLE_DUPLICATE_NAME"
          },
          {
            "x-qlik-const": 18002,
            "title": "LOCERR_VARIABLE_INCONSISTENCY"
          },
          {
            "x-qlik-const": 18003,
            "title": "LOCERR_VARIABLE_CONSTRAINT_INCONSISTENCY"
          },
          {
            "x-qlik-const": 18004,
            "title": "LOCERR_VARIABLE_CONSTRAINT_FAILED"
          },
          {
            "x-qlik-const": 19000,
            "title": "LOCERR_MEDIA_LIBRARY_LIST_FAILED"
          },
          {
            "x-qlik-const": 19001,
            "title": "LOCERR_MEDIA_LIBRARY_CONTENT_FAILED"
          },
          {
            "x-qlik-const": 19002,
            "title": "LOCERR_MEDIA_BUNDLING_FAILED"
          },
          {
            "x-qlik-const": 19003,
            "title": "LOCERR_MEDIA_UNBUNDLING_FAILED"
          },
          {
            "x-qlik-const": 19004,
            "title": "LOCERR_MEDIA_LIBRARY_NOT_FOUND"
          },
          {
            "x-qlik-const": 20000,
            "title": "LOCERR_FEATURE_DISABLED"
          },
          {
            "x-qlik-const": 21000,
            "title": "LOCERR_LOAD_TOO_MANY_FIELDS"
          },
          {
            "x-qlik-const": 21001,
            "title": "LOCERR_LOAD_TOO_MANY_TABLES"
          },
          {
            "x-qlik-const": -32600,
            "title": "LOCERR_JSON_RPC_INVALID_REQUEST"
          },
          {
            "x-qlik-const": -32601,
            "title": "LOCERR_JSON_RPC_METHOD_NOT_FOUND"
          },
          {
            "x-qlik-const": -32602,
            "title": "LOCERR_JSON_RPC_INVALID_PARAMETERS"
          },
          {
            "x-qlik-const": -32603,
            "title": "LOCERR_JSON_RPC_INTERNAL_ERROR"
          },
          {
            "x-qlik-const": -32604,
            "title": "LOCERR_JSON_RPC_RESPONSE_TOO_LARGE"
          },
          {
            "x-qlik-const": -32700,
            "title": "LOCERR_JSON_RPC_PARSE_ERROR"
          },
          {
            "x-qlik-const": 33000,
            "title": "LOCERR_MQ_SOCKET_CONNECT_FAILURE"
          },
          {
            "x-qlik-const": 33001,
            "title": "LOCERR_MQ_SOCKET_OPEN_FAILURE"
          },
          {
            "x-qlik-const": 33002,
            "title": "LOCERR_MQ_PROTOCOL_NO_RESPONE"
          },
          {
            "x-qlik-const": 33003,
            "title": "LOCERR_MQ_PROTOCOL_LIBRARY_EXCEPTION"
          },
          {
            "x-qlik-const": 33004,
            "title": "LOCERR_MQ_PROTOCOL_CONNECTION_CLOSED"
          },
          {
            "x-qlik-const": 33005,
            "title": "LOCERR_MQ_PROTOCOL_CHANNEL_CLOSED"
          },
          {
            "x-qlik-const": 33006,
            "title": "LOCERR_MQ_PROTOCOL_UNKNOWN_ERROR"
          },
          {
            "x-qlik-const": 33007,
            "title": "LOCERR_MQ_PROTOCOL_INVALID_STATUS"
          },
          {
            "x-qlik-const": 22000,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_OK"
          },
          {
            "x-qlik-const": 22001,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_CANCELLED"
          },
          {
            "x-qlik-const": 22002,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_UNKNOWN"
          },
          {
            "x-qlik-const": 22003,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_INVALID_ARGUMENT"
          },
          {
            "x-qlik-const": 22004,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_DEADLINE_EXCEEDED"
          },
          {
            "x-qlik-const": 22005,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_NOT_FOUND"
          },
          {
            "x-qlik-const": 22006,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_ALREADY_EXISTS"
          },
          {
            "x-qlik-const": 22007,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_PERMISSION_DENIED"
          },
          {
            "x-qlik-const": 22008,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_RESOURCE_EXHAUSTED"
          },
          {
            "x-qlik-const": 22009,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_FAILED_PRECONDITION"
          },
          {
            "x-qlik-const": 22010,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_ABORTED"
          },
          {
            "x-qlik-const": 22011,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_OUT_OF_RANGE"
          },
          {
            "x-qlik-const": 22012,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_UNIMPLEMENTED"
          },
          {
            "x-qlik-const": 22013,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_INTERNAL"
          },
          {
            "x-qlik-const": 22014,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_UNAVAILABLE"
          },
          {
            "x-qlik-const": 22015,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_DATA_LOSS"
          },
          {
            "x-qlik-const": 22016,
            "title": "LOCERR_EXTENGINE_GRPC_STATUS_UNAUTHENTICATED"
          },
          {
            "x-qlik-const": 23001,
            "title": "LOCERR_LXW_INVALID_OBJ"
          },
          {
            "x-qlik-const": 23002,
            "title": "LOCERR_LXW_INVALID_FILE"
          },
          {
            "x-qlik-const": 23003,
            "title": "LOCERR_LXW_INVALID_SHEET"
          },
          {
            "x-qlik-const": 23004,
            "title": "LOCERR_LXW_INVALID_EXPORT_RANGE"
          },
          {
            "x-qlik-const": 23005,
            "title": "LOCERR_LXW_ERROR"
          },
          {
            "x-qlik-const": 23006,
            "title": "LOCERR_LXW_ERROR_MEMORY_MALLOC_FAILED"
          },
          {
            "x-qlik-const": 23007,
            "title": "LOCERR_LXW_ERROR_CREATING_XLSX_FILE"
          },
          {
            "x-qlik-const": 23008,
            "title": "LOCERR_LXW_ERROR_CREATING_TMPFILE"
          },
          {
            "x-qlik-const": 23009,
            "title": "LOCERR_LXW_ERROR_ZIP_FILE_OPERATION"
          },
          {
            "x-qlik-const": 23010,
            "title": "LOCERR_LXW_ERROR_ZIP_FILE_ADD"
          },
          {
            "x-qlik-const": 23011,
            "title": "LOCERR_LXW_ERROR_ZIP_CLOSE"
          },
          {
            "x-qlik-const": 23012,
            "title": "LOCERR_LXW_ERROR_NULL_PARAMETER_IGNORED"
          },
          {
            "x-qlik-const": 23013,
            "title": "LOCERR_LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED"
          },
          {
            "x-qlik-const": 23014,
            "title": "LOCERR_LXW_ERROR_255_STRING_LENGTH_EXCEEDED"
          },
          {
            "x-qlik-const": 23015,
            "title": "LOCERR_LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND"
          },
          {
            "x-qlik-const": 23016,
            "title": "LOCERR_LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE"
          },
          {
            "x-qlik-const": 23017,
            "title": "LOCERR_LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED"
          },
          {
            "x-qlik-const": 24000,
            "title": "LOCERR_BDI_STATUS_OK"
          },
          {
            "x-qlik-const": 24001,
            "title": "LOCERR_BDI_GENERIC_ERROR_NOT_TRANSLATED"
          },
          {
            "x-qlik-const": 25000,
            "title": "LOCERR_TRENDLINE_INVALID_DEF"
          },
          {
            "x-qlik-const": 25001,
            "title": "LOCERR_TRENDLINE_INVALID_MATH_ERROR"
          },
          {
            "x-qlik-const": 30000,
            "title": "LOCERR_CURL_UNSUPPORTED_PROTOCOL"
          },
          {
            "x-qlik-const": 30001,
            "title": "LOCERR_CURL_COULDNT_RESOLVE_PROXY"
          },
          {
            "x-qlik-const": 30002,
            "title": "LOCERR_CURL_COULDNT_CONNECT"
          },
          {
            "x-qlik-const": 30003,
            "title": "LOCERR_CURL_REMOTE_ACCESS_DENIED"
          },
          {
            "x-qlik-const": 30004,
            "title": "LOCERR_CURL_FTP_ACCEPT_FAILED"
          },
          {
            "x-qlik-const": 30005,
            "title": "LOCERR_CURL_FTP_ACCEPT_TIMEOUT"
          },
          {
            "x-qlik-const": 30006,
            "title": "LOCERR_CURL_FTP_CANT_GET_HOST"
          },
          {
            "x-qlik-const": 30007,
            "title": "LOCERR_CURL_PARTIAL_FILE"
          },
          {
            "x-qlik-const": 30008,
            "title": "LOCERR_CURL_QUOTE_ERROR"
          },
          {
            "x-qlik-const": 30009,
            "title": "LOCERR_CURL_WRITE_ERROR"
          },
          {
            "x-qlik-const": 30010,
            "title": "LOCERR_CURL_UPLOAD_FAILED"
          },
          {
            "x-qlik-const": 30011,
            "title": "LOCERR_CURL_OUT_OF_MEMORY"
          },
          {
            "x-qlik-const": 30012,
            "title": "LOCERR_CURL_OPERATION_TIMEDOUT"
          },
          {
            "x-qlik-const": 30013,
            "title": "LOCERR_CURL_FTP_COULDNT_USE_REST"
          },
          {
            "x-qlik-const": 30014,
            "title": "LOCERR_CURL_HTTP_POST_ERROR"
          },
          {
            "x-qlik-const": 30015,
            "title": "LOCERR_CURL_SSL_CONNECT_ERROR"
          },
          {
            "x-qlik-const": 30016,
            "title": "LOCERR_CURL_FILE_COULDNT_READ_FILE"
          },
          {
            "x-qlik-const": 30017,
            "title": "LOCERR_CURL_LDAP_CANNOT_BIND"
          },
          {
            "x-qlik-const": 30018,
            "title": "LOCERR_CURL_LDAP_SEARCH_FAILED"
          },
          {
            "x-qlik-const": 30019,
            "title": "LOCERR_CURL_TOO_MANY_REDIRECTS"
          },
          {
            "x-qlik-const": 30020,
            "title": "LOCERR_CURL_PEER_FAILED_VERIFICATION"
          },
          {
            "x-qlik-const": 30021,
            "title": "LOCERR_CURL_GOT_NOTHING"
          },
          {
            "x-qlik-const": 30022,
            "title": "LOCERR_CURL_SSL_ENGINE_NOTFOUND"
          },
          {
            "x-qlik-const": 30023,
            "title": "LOCERR_CURL_SSL_ENGINE_SETFAILED"
          },
          {
            "x-qlik-const": 30024,
            "title": "LOCERR_CURL_SSL_CERTPROBLEM"
          },
          {
            "x-qlik-const": 30025,
            "title": "LOCERR_CURL_SSL_CIPHER"
          },
          {
            "x-qlik-const": 30026,
            "title": "LOCERR_CURL_SSL_CACERT"
          },
          {
            "x-qlik-const": 30027,
            "title": "LOCERR_CURL_BAD_CONTENT_ENCODING"
          },
          {
            "x-qlik-const": 30028,
            "title": "LOCERR_CURL_LDAP_INVALID_URL"
          },
          {
            "x-qlik-const": 30029,
            "title": "LOCERR_CURL_USE_SSL_FAILED"
          },
          {
            "x-qlik-const": 30030,
            "title": "LOCERR_CURL_SSL_ENGINE_INITFAILED"
          },
          {
            "x-qlik-const": 30031,
            "title": "LOCERR_CURL_LOGIN_DENIED"
          },
          {
            "x-qlik-const": 30032,
            "title": "LOCERR_CURL_TFTP_NOTFOUND"
          },
          {
            "x-qlik-const": 30033,
            "title": "LOCERR_CURL_TFTP_ILLEGAL"
          },
          {
            "x-qlik-const": 30034,
            "title": "LOCERR_CURL_SSH"
          },
          {
            "x-qlik-const": 30100,
            "title": "LOCERR_SETEXPRESSION_TOO_LARGE"
          },
          {
            "x-qlik-const": 30101,
            "title": "LOCERR_RELOAD_MERGE_LOAD_ERROR"
          },
          {
            "x-qlik-const": 30200,
            "title": "LOCERR_WIN_FTP_DROPPED"
          },
          {
            "x-qlik-const": 30201,
            "title": "LOCERR_WIN_FTP_NO_PASSIVE_MODE"
          },
          {
            "x-qlik-const": 30210,
            "title": "LOCERR_WIN_HTTP_DOWNLEVEL_SERVER"
          },
          {
            "x-qlik-const": 30211,
            "title": "LOCERR_WIN_HTTP_INVALID_SERVER_RESPONSE"
          },
          {
            "x-qlik-const": 30212,
            "title": "LOCERR_WIN_HTTP_REDIRECT_NEEDS_CONFIRMATION"
          },
          {
            "x-qlik-const": 30220,
            "title": "LOCERR_WIN_INTERNET_FORCE_RETRY"
          },
          {
            "x-qlik-const": 30221,
            "title": "LOCERR_WIN_INTERNET_CANNOT_CONNECT"
          },
          {
            "x-qlik-const": 30222,
            "title": "LOCERR_WIN_INTERNET_CONNECTION_ABORTED"
          },
          {
            "x-qlik-const": 30223,
            "title": "LOCERR_WIN_INTERNET_CONNECTION_RESET"
          },
          {
            "x-qlik-const": 30224,
            "title": "LOCERR_WIN_INTERNET_DISCONNECTED"
          },
          {
            "x-qlik-const": 30225,
            "title": "LOCERR_WIN_INTERNET_INCORRECT_FORMAT"
          },
          {
            "x-qlik-const": 30226,
            "title": "LOCERR_WIN_INTERNET_INVALID_CA"
          },
          {
            "x-qlik-const": 30227,
            "title": "LOCERR_WIN_INTERNET_INVALID_OPERATION"
          },
          {
            "x-qlik-const": 30228,
            "title": "LOCERR_WIN_INTERNET_INVALID_URL"
          },
          {
            "x-qlik-const": 30229,
            "title": "LOCERR_WIN_INTERNET_ITEM_NOT_FOUND"
          },
          {
            "x-qlik-const": 30230,
            "title": "LOCERR_WIN_INTERNET_LOGIN_FAILURE"
          },
          {
            "x-qlik-const": 30231,
            "title": "LOCERR_WIN_INTERNET_NAME_NOT_RESOLVED"
          },
          {
            "x-qlik-const": 30232,
            "title": "LOCERR_WIN_INTERNET_NEED_UI"
          },
          {
            "x-qlik-const": 30233,
            "title": "LOCERR_WIN_INTERNET_SEC_CERT_CN_INVALID"
          },
          {
            "x-qlik-const": 30234,
            "title": "LOCERR_WIN_INTERNET_SEC_CERT_DATE_INVALID"
          },
          {
            "x-qlik-const": 30235,
            "title": "LOCERR_WIN_INTERNET_SEC_CERT_ERRORS"
          },
          {
            "x-qlik-const": 30236,
            "title": "LOCERR_WIN_INTERNET_SEC_INVALID_CERT"
          },
          {
            "x-qlik-const": 30237,
            "title": "LOCERR_WIN_INTERNET_SERVER_UNREACHABLE"
          },
          {
            "x-qlik-const": 31000,
            "title": "LOCERR_BM_RESULT_TOO_LARGE"
          }
        ]
      },
      "NxLocalizedWarningCode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "LOCWARN_PERSONAL_RELOAD_REQUIRED"
          },
          {
            "x-qlik-const": 1,
            "title": "LOCWARN_PERSONAL_VERSION_EXPIRES_SOON"
          },
          {
            "x-qlik-const": 1000,
            "title": "LOCWARN_EXPORT_DATA_TRUNCATED"
          },
          {
            "x-qlik-const": 2000,
            "title": "LOCWARN_COULD_NOT_OPEN_ALL_OBJECTS"
          },
          {
            "x-qlik-const": 3000,
            "title": "LOCWARN_SEARCH_INVALID_SEARCHFIELD_DETECTED"
          }
        ]
      },
      "FieldValue": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Text related to the field value.\nThis parameter is optional."
          },
          "qIsNumeric": {
            "type": "boolean",
            "description": "Is set to true if the value is a numeric.\nThis parameter is optional. Default is false."
          },
          "qNumber": {
            "type": "number",
            "description": "Numeric value of the field.\nThis parameter is displayed if _qIsNumeric_ is set to true.\nThis parameter is optional.",
            "format": "double"
          }
        }
      },
      "NxFieldProperties": {
        "type": "object",
        "properties": {
          "qOneAndOnlyOne": {
            "type": "boolean",
            "description": "This parameter is set to true, if the field has one and only one selection (not 0 and not more than 1).\nIf this property is set to true, the field cannot be cleared anymore and no more selections can be performed in that field.\n<div class=note>The property _OneAndOnlyOne_ can be set to true if one and only value has been selected in the field prior to setting the property. </div>"
          }
        }
      },
      "AlfaNumString": {
        "type": "object",
        "properties": {
          "qString": {
            "type": "string",
            "description": "Calculated value."
          },
          "qIsNum": {
            "type": "boolean",
            "description": "Is set to true if the value is a numeric."
          }
        },
        "x-qlik-deprecated": true
      },
      "NxVariableProperties": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the variable."
          },
          "qNumberPresentation": {
            "type": "object",
            "description": "Defines the format of the value of a variable.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qIncludeInBookmark": {
            "type": "boolean",
            "description": "Set this property to true to update the variable when applying a bookmark.\nThe value of a variable can affect the state of the selections.\nThe default value is false.",
            "default": false
          },
          "qUsePredefListedValues": {
            "type": "boolean",
            "description": "The value of a variable can be an enumeration.\nSet this property to true to reflect the predefined values in an enumeration."
          },
          "qPreDefinedList": {
            "type": "array",
            "description": "List of enumerations.\nThis property is used if _qUsePredefListedValues_ is set to true.",
            "items": {
              "type": "string"
            }
          }
        },
        "x-qlik-deprecated": true
      },
      "FieldAttributes": {
        "type": "object",
        "description": "Sets the formatting of a field.\nThe properties of _qFieldAttributes_ and the formatting mechanism are described below.\n\n### Formatting mechanism\nThe formatting mechanism depends on the type set in _qType,_ as shown below:\n<div class=note>In case of inconsistencies between the type and the format pattern, the format pattern takes precedence over the type.</div>\n\n### Type is DATE, TIME, TIMESTAMP or INTERVAL\nThe following applies:\n* If a format pattern is defined in _qFmt_ , the formatting is as defined in _qFmt_ .\n* If _qFmt_ is empty, the formatting is defined by the number interpretation variables included at the top of the script ( _TimeFormat_ , _DateFormat_ , _TimeStampFormat_ ).\n* The properties _qDec_ , _qThou_ , _qnDec_ , _qUseThou_ are not used.\n\n### Type is INTEGER\nThe following applies:\n* If a format pattern is defined in _qFmt_ , the engine looks at the values set in _qDec_ and _qThou_ . If these properties are not defined, the formatting mechanism uses the number interpretation variables included at the top of the script ( _DecimalSep_ and _ThousandSep_ ).\n* If no format pattern is defined in _qFmt_ , no formatting is applied. The properties _qDec_ , _qThou_ , _qnDec_ , _qUseThou_ and the number interpretation variables defined in the script are not used .\n\n### Type is REAL\nThe following applies:\n* If a format pattern is defined in _qFmt_ , the engine looks at the values set in _qDec_ and _qThou_ . If these properties are not defined, the engine uses the number interpretation variables included at the top of the script ( _DecimalSep_ and _ThousandSep_ ).\n* If no format pattern is defined in _qFmt_ , and if the value is almost an integer value (for example, 14,000012), the value is formatted as an integer. The properties _qDec_ , _qThou_ , _qnDec_ , _qUseThou_ are not used.\n* If no format pattern is defined in _qFmt_ , and if _qnDec_ is defined and not 0, the property _qDec_ is used. If _qDec_ is not defined, the variable _DecimalSep_ defined at the top of the script is used.\n* If no format pattern is defined in _qFmt_ , and if _qnDec_ is 0, the number of decimals is 14 and the property _qDec_ is used. If _qDec_ is not defined, the variable _DecimalSep_ defined at the top of the script is used.\n\n### Type is FIX\nThe following applies:\n* If a format pattern is defined in _qFmt_ , the engine looks at the values set in _qDec_ and _qThou_ . If these properties are not defined, the engine uses the number interpretation variables included at the top of the script ( _DecimalSep_ and _ThousandSep_ ).\n* If no format pattern is defined in _qFmt_ , the properties _qDec_ and _qnDec_ are used. If _qDec_ is not defined, the variable _DecimalSep_ defined at the top of the script is used.\n\n### Type is MONEY\nThe following applies:\n* If a format pattern is defined in _qFmt_ , the engine looks at the values set in _qDec_ and _qThou_ . If these properties are not defined, the engine uses the number interpretation variables included at the top of any script ( _MoneyDecimalSep_ and _MoneyThousandSep_ ).\n* If no format pattern is defined in _qFmt_ , the engine uses the number interpretation variables included at the top of the script ( _MoneyDecimalSep_ and _MoneyThousandSep_ ).\n\n### Type is ASCII\nNo formatting, _qFmt_ is ignored.",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of the field.\nDefault is U.\n\nOne of:\n* U or UNKNOWN\n* A or ASCII\n* I or INTEGER\n* R or REAL\n* F or FIX\n* M or MONEY\n* D or DATE\n* T or TIME\n* TS or TIMESTAMP\n* IV or INTERVAL",
            "default": "UNKNOWN",
            "$ref": "#/components/schemas/FieldAttrType"
          },
          "qnDec": {
            "type": "integer",
            "description": "Number of decimals.\nDefault is 10.",
            "format": "int32",
            "default": 10
          },
          "qUseThou": {
            "type": "integer",
            "description": "Defines whether or not a thousands separator must be used.\nDefault is 0.",
            "format": "int32",
            "default": 0
          },
          "qFmt": {
            "type": "string",
            "description": "Defines the format pattern that applies to _qText_ .\nIs used in connection to the type of the field (parameter **qType** ).\nFor more information, see _Formatting mechanism_.\nExample: _YYYY-MM-DD_ for a date."
          },
          "qDec": {
            "type": "string",
            "description": "Defines the decimal separator.\nExample: **.**"
          },
          "qThou": {
            "type": "string",
            "description": "Defines the thousand separator (if any).\nIs used if **qUseThou** is set to 1.\nExample: **,**"
          }
        }
      },
      "FieldAttrType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "U",
            "description": "UNKNOWN"
          },
          {
            "x-qlik-const": 1,
            "title": "A",
            "description": "ASCII"
          },
          {
            "x-qlik-const": 10,
            "title": "I",
            "description": "INTEGER"
          },
          {
            "x-qlik-const": 2,
            "title": "R",
            "description": "REAL"
          },
          {
            "x-qlik-const": 11,
            "title": "F",
            "description": "FIX"
          },
          {
            "x-qlik-const": 12,
            "title": "M",
            "description": "MONEY"
          },
          {
            "x-qlik-const": 3,
            "title": "D",
            "description": "DATE"
          },
          {
            "x-qlik-const": 4,
            "title": "T",
            "description": "TIME"
          },
          {
            "x-qlik-const": 5,
            "title": "TS",
            "description": "TIMESTAMP"
          },
          {
            "x-qlik-const": 6,
            "title": "IV",
            "description": "INTERVAL"
          }
        ]
      },
      "GenericObjectLayout": {
        "type": "object",
        "description": "Is the layout for _GenericObjectProperties_.",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Identifier and type of the generic object.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMeta": {
            "type": "object",
            "description": "Information about publishing and permissions.\nThis parameter is optional.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qExtendsId": {
            "type": "string",
            "description": "Should be set to create an object that is linked to another object. Enter the identifier of the object you want to link to.\nIf you do not want to link your object, set this parameter to an empty string."
          },
          "qHasSoftPatches": {
            "type": "boolean",
            "description": "Is set to true if the generic object contains some properties that are not persistent (a soft patch was applied)."
          },
          "qError": {
            "type": "object",
            "description": "Gives information on the error.\nThis parameter is optional.",
            "$ref": "#/components/schemas/NxLayoutErrors"
          },
          "qSelectionInfo": {
            "type": "object",
            "description": "Information about the selections.",
            "$ref": "#/components/schemas/NxSelectionInfo"
          },
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          }
        },
        "additionalProperties": {
          "anyOf": [
            {
              "name": "qAppObjectList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/AppObjectList"
              }
            },
            {
              "name": "qBookmarkList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/BookmarkList"
              }
            },
            {
              "name": "qChildList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/ChildList"
              }
            },
            {
              "name": "qDimensionList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/DimensionList"
              }
            },
            {
              "name": "qEmbeddedSnapshot",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/EmbeddedSnapshot"
              }
            },
            {
              "name": "qExtensionList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/ExtensionList"
              }
            },
            {
              "name": "qFieldList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/FieldList"
              }
            },
            {
              "name": "qHyperCube",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/HyperCube"
              }
            },
            {
              "name": "qListObject",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/ListObject"
              }
            },
            {
              "name": "qMeasureList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/MeasureList"
              }
            },
            {
              "name": "qMediaList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/MediaList"
              }
            },
            {
              "name": "qNxLibraryDimension",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/NxLibraryDimension"
              }
            },
            {
              "name": "qNxLibraryMeasure",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/NxLibraryMeasure"
              }
            },
            {
              "name": "qSelectionObject",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/SelectionObject"
              }
            },
            {
              "name": "qStaticContentUrl",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/StaticContentUrl"
              }
            },
            {
              "name": "qTreeData",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/TreeData"
              }
            },
            {
              "name": "qUndoInfo",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/UndoInfo"
              }
            },
            {
              "name": "qVariableList",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/VariableList"
              }
            }
          ]
        }
      },
      "NxInfo": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "string",
            "description": "Identifier of the object.\nIf the chosen identifier is already in use, the engine automatically sets another one.\nIf an identifier is not set, the engine automatically sets one.\nThis parameter is optional."
          },
          "qType": {
            "type": "string",
            "description": "Type of the object.\nThis parameter is mandatory."
          }
        }
      },
      "NxMeta": {
        "type": "object",
        "description": "Layout for _NxMetaDef_.",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name.\nThis property is optional."
          }
        }
      },
      "NxLayoutErrors": {
        "type": "object",
        "properties": {
          "qErrorCode": {
            "type": "integer",
            "description": "Error code.",
            "format": "int32"
          }
        }
      },
      "NxSelectionInfo": {
        "type": "object",
        "properties": {
          "qInSelections": {
            "type": "boolean",
            "description": "Is set to true if the visualization is in selection mode.\nFor more information about the selection mode, see _BeginSelections Method_."
          },
          "qMadeSelections": {
            "type": "boolean",
            "description": "Is set to true if the visualization is in selection mode and if some selections have been made while in selection mode.\nFor more information about the selection mode, see _BeginSelections Method_."
          }
        }
      },
      "NxPage": {
        "type": "object",
        "properties": {
          "qLeft": {
            "type": "integer",
            "description": "Position from the left.\nCorresponds to the first column.",
            "format": "int32"
          },
          "qTop": {
            "type": "integer",
            "description": "Position from the top.\nCorresponds to the first row.",
            "format": "int32"
          },
          "qWidth": {
            "type": "integer",
            "description": "Number of columns in the page. The indexing of the columns may vary depending on whether the cells are expanded or not (parameter _qAlwaysFullyExpanded_ in _HyperCubeDef_ ).",
            "format": "int32"
          },
          "qHeight": {
            "type": "integer",
            "description": "Number of rows or elements in the page. The indexing of the rows may vary depending on whether the cells are expanded or not (parameter _qAlwaysFullyExpanded_ in _HyperCubeDef_ ).",
            "format": "int32"
          }
        }
      },
      "NxDataPage": {
        "type": "object",
        "properties": {
          "qMatrix": {
            "type": "array",
            "description": "Array of data.",
            "items": {
              "$ref": "#/components/schemas/NxCellRows"
            }
          },
          "qTails": {
            "type": "array",
            "description": "Array of tails.\nIs used for hypercube objects with multiple dimensions. It might happen that due to the window size some elements in a group cannot be displayed in the same page as the other elements of the group. Elements of a group of dimensions can be part of the previous or the next tail.\nIf there is no tail, the array is empty _[ ]_ .",
            "items": {
              "$ref": "#/components/schemas/NxGroupTail"
            }
          },
          "qArea": {
            "type": "object",
            "description": "Size and offset of the data in the matrix.",
            "$ref": "#/components/schemas/Rect"
          },
          "qIsReduced": {
            "type": "boolean",
            "description": "Is set to true, if the data have been reduced.\nThe default value is false.",
            "default": false
          }
        }
      },
      "NxCellRows": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/NxCell"
        }
      },
      "NxCell": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Some text.\nThis parameter is optional."
          },
          "qNum": {
            "type": "number",
            "description": "A value.\nThis parameter is optional.",
            "format": "double"
          },
          "qElemNumber": {
            "type": "integer",
            "description": "Rank number of the value, starting from 0.\nIf the element number is a negative number, it means that the returned value is not an element number.\nYou can get the following negative values:\n* -1: the cell is a _Total_ cell. It shows a total.\n* -2: the cell is a _Null_ cell.\n* -3: the cell belongs to the group _Others_ .\n* -4: the cell is empty. Applies to pivot tables.",
            "format": "int32"
          },
          "qState": {
            "type": "string",
            "description": "State of the value.\nThe default state for a measure is L.\n\nOne of:\n* L or LOCKED\n* S or SELECTED\n* O or OPTION\n* D or DESELECTED\n* A or ALTERNATIVE\n* X or EXCLUDED\n* XS or EXCL_SELECTED\n* XL or EXCL_LOCKED\n* NSTATES",
            "$ref": "#/components/schemas/StateEnumType"
          },
          "qIsEmpty": {
            "type": "boolean",
            "description": "Is set to _true_ , if **qText** and **qNum** are empty.\nThis parameter is optional. The default value is _false_ ."
          },
          "qIsTotalCell": {
            "type": "boolean",
            "description": "Is set to _true_ if a total is displayed in the cell.\nThis parameter is optional. The default value is _false_ .\nNot applicable to list objects."
          },
          "qIsOtherCell": {
            "type": "boolean",
            "description": "Is set to _true_ if the cell belongs to the group _Others_ .\nDimension values can be set as _Others_ depending on what has been defined in **OtherTotalSpecProp** .\nThis parameter is optional. The default value is _false_ .\nNot applicable to list objects."
          },
          "qFrequency": {
            "type": "string",
            "description": "Frequency of the value.\nThis parameter is optional."
          },
          "qHighlightRanges": {
            "type": "object",
            "description": "Search hits.\nThe search hits are highlighted.\nThis parameter is optional.",
            "$ref": "#/components/schemas/NxHighlightRanges"
          },
          "qAttrExps": {
            "type": "object",
            "description": "Attribute expression values.",
            "$ref": "#/components/schemas/NxAttributeExpressionValues"
          },
          "qAttrDims": {
            "type": "object",
            "description": "Attribute dimensions values.",
            "$ref": "#/components/schemas/NxAttributeDimValues"
          },
          "qIsNull": {
            "type": "boolean",
            "description": "Is set to _true_ if the value is Null."
          },
          "qMiniChart": {
            "type": "object",
            "$ref": "#/components/schemas/NxMiniChartData"
          },
          "qInExtRow": {
            "type": "boolean"
          }
        }
      },
      "StateEnumType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "L",
            "description": "LOCKED"
          },
          {
            "x-qlik-const": 1,
            "title": "S",
            "description": "SELECTED"
          },
          {
            "x-qlik-const": 2,
            "title": "O",
            "description": "OPTION"
          },
          {
            "x-qlik-const": 3,
            "title": "D",
            "description": "DESELECTED"
          },
          {
            "x-qlik-const": 4,
            "title": "A",
            "description": "ALTERNATIVE"
          },
          {
            "x-qlik-const": 5,
            "title": "X",
            "description": "EXCLUDED"
          },
          {
            "x-qlik-const": 6,
            "title": "XS",
            "description": "EXCL_SELECTED"
          },
          {
            "x-qlik-const": 7,
            "title": "XL",
            "description": "EXCL_LOCKED"
          },
          {
            "x-qlik-const": 8,
            "title": "NSTATES"
          }
        ]
      },
      "NxHighlightRanges": {
        "type": "object",
        "properties": {
          "qRanges": {
            "type": "array",
            "description": "Ranges of highlighted values.",
            "items": {
              "$ref": "#/components/schemas/CharRange"
            }
          }
        }
      },
      "CharRange": {
        "type": "object",
        "properties": {
          "qCharPos": {
            "type": "integer",
            "description": "Position of the first search occurrence.",
            "format": "int32"
          },
          "qCharCount": {
            "type": "integer",
            "description": "Number of occurrences found.",
            "format": "int32"
          }
        }
      },
      "NxAttributeExpressionValues": {
        "type": "object",
        "properties": {
          "qValues": {
            "type": "array",
            "description": "List of attribute expressions values.",
            "items": {
              "$ref": "#/components/schemas/NxSimpleValue"
            }
          }
        }
      },
      "NxSimpleValue": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Text related to the attribute expression value."
          },
          "qNum": {
            "type": "number",
            "description": "Numeric value of the attribute expression.\nSet to NaN (Not a Number) if the attribute expression value is not numeric.",
            "format": "double"
          }
        }
      },
      "NxAttributeDimValues": {
        "type": "object",
        "properties": {
          "qValues": {
            "type": "array",
            "description": "List of values.",
            "items": {
              "$ref": "#/components/schemas/NxSimpleDimValue"
            }
          }
        }
      },
      "NxSimpleDimValue": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Text related to the attribute expression value.\nThis property is optional. No text is returned if the attribute expression value is a numeric."
          },
          "qElemNo": {
            "type": "integer",
            "description": "Element number.",
            "format": "int32"
          }
        }
      },
      "NxMiniChartData": {
        "type": "object",
        "properties": {
          "qMatrix": {
            "type": "array",
            "description": "Array of data.",
            "items": {
              "$ref": "#/components/schemas/NxMiniChartRows"
            }
          },
          "qMin": {
            "type": "number",
            "format": "double"
          },
          "qMax": {
            "type": "number",
            "format": "double"
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional and is displayed in case of error.",
            "$ref": "#/components/schemas/NxValidationError"
          }
        }
      },
      "NxMiniChartRows": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/NxMiniChartCell"
        }
      },
      "NxMiniChartCell": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Some text."
          },
          "qNum": {
            "type": "number",
            "description": "A value.\nThis parameter is optional.",
            "format": "double"
          },
          "qElemNumber": {
            "type": "integer",
            "description": "Rank number of the value, starting from 0.\nIf the element number is a negative number, it means that the returned value is not an element number.\nYou can get the following negative values:\n* -1: the cell is a _Total_ cell. It shows a total.\n* -2: the cell is a _Null_ cell.\n* -3: the cell belongs to the group _Others_ .\n* -4: the cell is empty. Applies to pivot tables.",
            "format": "int32"
          },
          "qAttrExps": {
            "type": "object",
            "description": "Attribute expressions values.",
            "$ref": "#/components/schemas/NxAttributeExpressionValues"
          }
        }
      },
      "NxValidationError": {
        "type": "object",
        "properties": {
          "qErrorCode": {
            "type": "integer",
            "description": "Error code.\nThis parameter is always displayed in case of error.",
            "format": "int32"
          },
          "qContext": {
            "type": "string",
            "description": "Context related to the error, from the user app domain.\nIt can be the identifier of an object, a field name, a table name.\nThis parameter is optional."
          },
          "qExtendedMessage": {
            "type": "string",
            "description": "Internal information from the server.\nThis parameter is optional."
          }
        }
      },
      "NxGroupTail": {
        "type": "object",
        "properties": {
          "qUp": {
            "type": "integer",
            "description": "Number of elements that are part of the previous tail.\nThis number depends on the paging, more particularly it depends on the values defined in _qTop_ and _qHeight_ .\nIs not shown if the value is 0.\nThis parameter is optional.",
            "format": "int32"
          },
          "qDown": {
            "type": "integer",
            "description": "Number of elements that are part of the next tail.\nThis number depends on the paging, more particularly it depends on the values defined in _qTop_ and _qHeight_\nIs not shown if the value is 0.\nThis parameter is optional.",
            "format": "int32"
          }
        }
      },
      "Rect": {
        "type": "object",
        "properties": {
          "qLeft": {
            "type": "integer",
            "description": "Position from the left.\nCorresponds to the first column.",
            "format": "int32"
          },
          "qTop": {
            "type": "integer",
            "description": "Position from the top.\nCorresponds to the first row.",
            "format": "int32"
          },
          "qWidth": {
            "type": "integer",
            "description": "Number of columns in the page. The indexing of the columns may vary depending on whether the cells are expanded or not (parameter _qAlwaysFullyExpanded_ in _HyperCubeDef_ ).",
            "format": "int32"
          },
          "qHeight": {
            "type": "integer",
            "description": "Number of rows or elements in the page. The indexing of the rows may vary depending on whether the cells are expanded or not (parameter _qAlwaysFullyExpanded_ in _HyperCubeDef_ ).",
            "format": "int32"
          }
        }
      },
      "NxDataReductionMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "N",
            "description": "DATA_REDUCTION_NONE"
          },
          {
            "x-qlik-const": 1,
            "title": "D1",
            "description": "DATA_REDUCTION_ONEDIM"
          },
          {
            "x-qlik-const": 2,
            "title": "S",
            "description": "DATA_REDUCTION_SCATTERED"
          },
          {
            "x-qlik-const": 3,
            "title": "C",
            "description": "DATA_REDUCTION_CLUSTERED"
          },
          {
            "x-qlik-const": 4,
            "title": "ST",
            "description": "DATA_REDUCTION_STACKED"
          }
        ]
      },
      "NxPivotPage": {
        "type": "object",
        "properties": {
          "qLeft": {
            "type": "array",
            "description": "Information about the left dimension values of a pivot table.",
            "items": {
              "$ref": "#/components/schemas/NxPivotDimensionCell"
            }
          },
          "qTop": {
            "type": "array",
            "description": "Information about the top dimension values of a pivot table. If there is no top dimension in the pivot table, information about the measures are given.",
            "items": {
              "$ref": "#/components/schemas/NxPivotDimensionCell"
            }
          },
          "qData": {
            "type": "array",
            "description": "Array of data.",
            "items": {
              "$ref": "#/components/schemas/ArrayOfNxValuePoint"
            }
          },
          "qArea": {
            "type": "object",
            "description": "Size and offset of the data in the matrix.",
            "$ref": "#/components/schemas/Rect"
          }
        }
      },
      "NxPivotDimensionCell": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Some text."
          },
          "qElemNo": {
            "type": "integer",
            "description": "Rank number of the value.\nIf set to -1, it means that the value is not an element number.",
            "format": "int32"
          },
          "qValue": {
            "type": "number",
            "description": "Value of the cell.\nIs set to _NaN_ , if the value is not a number.",
            "format": "double"
          },
          "qCanExpand": {
            "type": "boolean",
            "description": "If set to true, it means that the cell can be expanded.\nThis parameter is not returned if it is set to false."
          },
          "qCanCollapse": {
            "type": "boolean",
            "description": "If set to true, it means that the cell can be collapsed.\nThis parameter is not returned if it is set to false."
          },
          "qType": {
            "type": "string",
            "description": "Type of the cell.\n\nOne of:\n* V or NX_DIM_CELL_VALUE\n* E or NX_DIM_CELL_EMPTY\n* N or NX_DIM_CELL_NORMAL\n* T or NX_DIM_CELL_TOTAL\n* O or NX_DIM_CELL_OTHER\n* A or NX_DIM_CELL_AGGR\n* P or NX_DIM_CELL_PSEUDO\n* R or NX_DIM_CELL_ROOT\n* U or NX_DIM_CELL_NULL\n* G or NX_DIM_CELL_GENERATED",
            "$ref": "#/components/schemas/NxDimCellType"
          },
          "qUp": {
            "type": "integer",
            "description": "Number of elements that are part of the previous tail.\nThis number depends on the paging, more particularly it depends on the values defined in _qTop_ and _qHeight_ .",
            "format": "int32"
          },
          "qDown": {
            "type": "integer",
            "description": "Number of elements that are part of the next tail.\nThis number depends on the paging, more particularly it depends on the values defined in _qTop_ and _qHeight_ .",
            "format": "int32"
          },
          "qSubNodes": {
            "type": "array",
            "description": "Information about sub nodes (or sub cells).\nThe array is empty _[ ]_ when there is no sub nodes.",
            "items": {
              "$ref": "#/components/schemas/NxPivotDimensionCell"
            }
          },
          "qAttrExps": {
            "type": "object",
            "description": "Information about attribute expressions.\nThe array is empty _[ ]_ when there is no attribute expressions.",
            "$ref": "#/components/schemas/NxAttributeExpressionValues"
          },
          "qAttrDims": {
            "type": "object",
            "description": "Information about attribute dimensions.",
            "$ref": "#/components/schemas/NxAttributeDimValues"
          }
        }
      },
      "NxDimCellType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "V",
            "description": "NX_DIM_CELL_VALUE"
          },
          {
            "x-qlik-const": 1,
            "title": "E",
            "description": "NX_DIM_CELL_EMPTY"
          },
          {
            "x-qlik-const": 2,
            "title": "N",
            "description": "NX_DIM_CELL_NORMAL"
          },
          {
            "x-qlik-const": 3,
            "title": "T",
            "description": "NX_DIM_CELL_TOTAL"
          },
          {
            "x-qlik-const": 4,
            "title": "O",
            "description": "NX_DIM_CELL_OTHER"
          },
          {
            "x-qlik-const": 5,
            "title": "A",
            "description": "NX_DIM_CELL_AGGR"
          },
          {
            "x-qlik-const": 6,
            "title": "P",
            "description": "NX_DIM_CELL_PSEUDO"
          },
          {
            "x-qlik-const": 7,
            "title": "R",
            "description": "NX_DIM_CELL_ROOT"
          },
          {
            "x-qlik-const": 8,
            "title": "U",
            "description": "NX_DIM_CELL_NULL"
          },
          {
            "x-qlik-const": 9,
            "title": "G",
            "description": "NX_DIM_CELL_GENERATED"
          }
        ]
      },
      "ArrayOfNxValuePoint": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/NxPivotValuePoint"
        }
      },
      "NxPivotValuePoint": {
        "type": "object",
        "properties": {
          "qLabel": {
            "type": "string",
            "description": "Label of the cell.\nThis parameter is optional."
          },
          "qText": {
            "type": "string",
            "description": "Some text related to the cell."
          },
          "qNum": {
            "type": "number",
            "description": "Value of the cell.",
            "format": "double"
          },
          "qType": {
            "type": "string",
            "description": "Type of the cell.\n\nOne of:\n* V or NX_DIM_CELL_VALUE\n* E or NX_DIM_CELL_EMPTY\n* N or NX_DIM_CELL_NORMAL\n* T or NX_DIM_CELL_TOTAL\n* O or NX_DIM_CELL_OTHER\n* A or NX_DIM_CELL_AGGR\n* P or NX_DIM_CELL_PSEUDO\n* R or NX_DIM_CELL_ROOT\n* U or NX_DIM_CELL_NULL\n* G or NX_DIM_CELL_GENERATED",
            "$ref": "#/components/schemas/NxDimCellType"
          },
          "qAttrExps": {
            "type": "object",
            "description": "Attribute expressions values.",
            "$ref": "#/components/schemas/NxAttributeExpressionValues"
          },
          "qAttrDims": {
            "type": "object",
            "$ref": "#/components/schemas/NxAttributeDimValues"
          }
        }
      },
      "NxStackPage": {
        "type": "object",
        "properties": {
          "qData": {
            "type": "array",
            "description": "Array of data.",
            "items": {
              "$ref": "#/components/schemas/NxStackedPivotCell"
            }
          },
          "qArea": {
            "type": "object",
            "description": "Size and offset of the data in the matrix.",
            "$ref": "#/components/schemas/Rect"
          }
        }
      },
      "NxStackedPivotCell": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Some text."
          },
          "qElemNo": {
            "type": "integer",
            "description": "Rank number of the value.\nIf set to -1, it means that the value is not an element number.",
            "format": "int32"
          },
          "qValue": {
            "type": "number",
            "description": "Value of the cell.\nIs set to _NaN_ , if the value is not a number.",
            "format": "double"
          },
          "qCanExpand": {
            "type": "boolean",
            "description": "If set to true, it means that the cell can be expanded.\nThis parameter is not returned if it is set to false."
          },
          "qCanCollapse": {
            "type": "boolean",
            "description": "If set to true, it means that the cell can be collapsed.\nThis parameter is not returned if it is set to false."
          },
          "qType": {
            "type": "string",
            "description": "Type of the cell.\n\nOne of:\n* V or NX_DIM_CELL_VALUE\n* E or NX_DIM_CELL_EMPTY\n* N or NX_DIM_CELL_NORMAL\n* T or NX_DIM_CELL_TOTAL\n* O or NX_DIM_CELL_OTHER\n* A or NX_DIM_CELL_AGGR\n* P or NX_DIM_CELL_PSEUDO\n* R or NX_DIM_CELL_ROOT\n* U or NX_DIM_CELL_NULL\n* G or NX_DIM_CELL_GENERATED",
            "$ref": "#/components/schemas/NxDimCellType"
          },
          "qMaxPos": {
            "type": "number",
            "description": "Total of the positive values in the current group of cells.",
            "format": "double"
          },
          "qMinNeg": {
            "type": "number",
            "description": "Total of the negative values in the current group of cells.",
            "format": "double"
          },
          "qUp": {
            "type": "integer",
            "description": "Number of elements that are part of the previous tail.",
            "format": "int32"
          },
          "qDown": {
            "type": "integer",
            "description": "Number of elements that are part of the next tail.",
            "format": "int32"
          },
          "qRow": {
            "type": "integer",
            "description": "Row index in the data matrix.\nThe indexing starts from 0.",
            "format": "int32"
          },
          "qSubNodes": {
            "type": "array",
            "description": "Information about sub nodes (or sub cells).\nThe array is empty _[ ]_ when there are no sub nodes.",
            "items": {
              "$ref": "#/components/schemas/NxStackedPivotCell"
            }
          },
          "qAttrExps": {
            "type": "object",
            "description": "Attribute expressions values.",
            "$ref": "#/components/schemas/NxAttributeExpressionValues"
          },
          "qAttrDims": {
            "type": "object",
            "description": "Attribute dimensions values.",
            "$ref": "#/components/schemas/NxAttributeDimValues"
          }
        }
      },
      "NxContinuousDataOptions": {
        "type": "object",
        "properties": {
          "qStart": {
            "type": "number",
            "description": "Start value.",
            "format": "double"
          },
          "qEnd": {
            "type": "number",
            "description": "End value.",
            "format": "double"
          },
          "qNbrPoints": {
            "type": "integer",
            "description": "Number of bins for binning.",
            "format": "int32"
          },
          "qMaxNbrTicks": {
            "type": "integer",
            "description": "Maximum number of ticks.",
            "format": "int32"
          },
          "qMaxNumberLines": {
            "type": "integer",
            "description": "Maximum number of lines.",
            "format": "int32",
            "default": -1
          }
        }
      },
      "NxAxisData": {
        "type": "object",
        "properties": {
          "qAxis": {
            "type": "array",
            "description": "List of axis data.",
            "items": {
              "$ref": "#/components/schemas/NxAxisTicks"
            }
          }
        }
      },
      "NxAxisTicks": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the derived definition."
          },
          "qTags": {
            "type": "array",
            "description": "List of tags.",
            "items": {
              "type": "string"
            }
          },
          "qTicks": {
            "type": "array",
            "description": "List of ticks.",
            "items": {
              "$ref": "#/components/schemas/NxTickCell"
            }
          }
        }
      },
      "NxTickCell": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Tick's label."
          },
          "qStart": {
            "type": "number",
            "description": "Start value.",
            "format": "double"
          },
          "qEnd": {
            "type": "number",
            "description": "End value.",
            "format": "double"
          }
        }
      },
      "NxTreeDataOption": {
        "type": "object",
        "description": "Specifies all the paging filters needed to define the tree to be fetched.",
        "properties": {
          "qMaxNbrOfNodes": {
            "type": "integer",
            "description": "Maximum number of nodes in the tree. If this limit is exceeded, no nodes are returned. All nodes are counted.",
            "format": "int32"
          },
          "qTreeNodes": {
            "type": "array",
            "description": "Defines areas of the tree to be fetched. Areas must be defined left to right.",
            "items": {
              "$ref": "#/components/schemas/NxPageTreeNode"
            }
          },
          "qTreeLevels": {
            "type": "object",
            "description": "Filters out complete dimensions from the fetched tree.",
            "$ref": "#/components/schemas/NxPageTreeLevel"
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxPageTreeNode": {
        "type": "object",
        "description": "Defines an area of the tree to be fetched.",
        "properties": {
          "qArea": {
            "type": "object",
            "description": "The area of the tree to be fetched. If no area is defined on a dimension, all existing nodes are included.",
            "$ref": "#/components/schemas/Rect"
          },
          "qAllValues": {
            "type": "boolean",
            "description": "When set to true, generated nodes (based on current selection) will be inserted into the returned tree even when there is no actual value. For example, suppose you are looking for hybrid car sales at all car dealerships. Normally, only dealerships where hybrid cars are sold would be part of the returned tree but with qAllValues set to true, all available dealerships will be included regardless if they sold any hybrid cars or not."
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxPageTreeLevel": {
        "type": "object",
        "properties": {
          "qLeft": {
            "type": "integer",
            "description": "The first dimension that is to be part of the tree, counted from the left. For example, if qLeft is equal to 1, omit nodes from the first dimension in the current sort order.",
            "format": "int32"
          },
          "qDepth": {
            "type": "integer",
            "description": "Number of dimensions to include in the tree.",
            "format": "int32",
            "default": -1
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxTreeNode": {
        "type": "object",
        "description": "Represents a dimension in the tree.",
        "properties": {
          "qText": {
            "type": "string",
            "description": "The text version of the value, if available."
          },
          "qValue": {
            "type": "number",
            "description": "Value of the cell.\nIs set to _NaN_ , if the value is not a number.",
            "format": "double"
          },
          "qElemNo": {
            "type": "integer",
            "description": "Element number.",
            "format": "int32"
          },
          "qGroupPos": {
            "type": "integer",
            "description": "The position of this node inside it's group in the complete tree, i.e. Not dependant om what part is fetched.",
            "format": "int32"
          },
          "qGroupSize": {
            "type": "integer",
            "description": "Nbr of nodes connected to this node on the next level of the tree. Not dependant on what part is fetched.",
            "format": "int32"
          },
          "qRow": {
            "type": "integer",
            "description": "Row index in the data matrix.\nThe indexing starts from 0.",
            "format": "int32"
          },
          "qType": {
            "type": "string",
            "description": "Type of the cell.\n\nOne of:\n* V or NX_DIM_CELL_VALUE\n* E or NX_DIM_CELL_EMPTY\n* N or NX_DIM_CELL_NORMAL\n* T or NX_DIM_CELL_TOTAL\n* O or NX_DIM_CELL_OTHER\n* A or NX_DIM_CELL_AGGR\n* P or NX_DIM_CELL_PSEUDO\n* R or NX_DIM_CELL_ROOT\n* U or NX_DIM_CELL_NULL\n* G or NX_DIM_CELL_GENERATED",
            "$ref": "#/components/schemas/NxDimCellType"
          },
          "qValues": {
            "type": "array",
            "description": "The measures for this node.",
            "items": {
              "$ref": "#/components/schemas/NxTreeValue"
            }
          },
          "qNodes": {
            "type": "array",
            "description": "The children of this node in the fetched tree structure.",
            "items": {
              "$ref": "#/components/schemas/NxTreeNode"
            }
          },
          "qAttrExps": {
            "type": "object",
            "description": "Attribute expression values.",
            "$ref": "#/components/schemas/NxAttributeExpressionValues"
          },
          "qAttrDims": {
            "type": "object",
            "description": "Attribute dimension values.",
            "$ref": "#/components/schemas/NxAttributeDimValues"
          },
          "qMaxPos": {
            "type": "array",
            "description": "Total of the positive values in the current group of cells.",
            "items": {
              "type": "number",
              "format": "double"
            }
          },
          "qMinNeg": {
            "type": "array",
            "description": "Total of the negative values in the current group of cells.",
            "items": {
              "type": "number",
              "format": "double"
            }
          },
          "qCanExpand": {
            "type": "boolean",
            "description": "If set to true, it means that the cell can be expanded.\nThis parameter is not returned if it is set to false."
          },
          "qCanCollapse": {
            "type": "boolean",
            "description": "If set to true, it means that the cell can be collapsed.\nThis parameter is not returned if it is set to false."
          },
          "qState": {
            "type": "string",
            "description": "Selection State of the value.\nThe default state for a measure is L(Locked).\n\nOne of:\n* L or LOCKED\n* S or SELECTED\n* O or OPTION\n* D or DESELECTED\n* A or ALTERNATIVE\n* X or EXCLUDED\n* XS or EXCL_SELECTED\n* XL or EXCL_LOCKED\n* NSTATES",
            "$ref": "#/components/schemas/StateEnumType"
          },
          "qTreePath": {
            "type": "array",
            "description": "The GroupPos of all prior nodes connected to this one, one position for each level of the tree.\nIf this node is attached directly to the root, this array is empty.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxTreeValue": {
        "type": "object",
        "description": "Represents a measure.",
        "properties": {
          "qText": {
            "type": "string",
            "description": "The text version of the value, if available."
          },
          "qValue": {
            "type": "number",
            "description": "Value of the cell.\nIs set to _NaN_ , if the value is not a number.",
            "format": "double"
          },
          "qAttrExps": {
            "type": "object",
            "description": "Attribute expression values.",
            "$ref": "#/components/schemas/NxAttributeExpressionValues"
          },
          "qAttrDims": {
            "type": "object",
            "description": "Attribute dimension values.",
            "$ref": "#/components/schemas/NxAttributeDimValues"
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxViewPort": {
        "type": "object",
        "properties": {
          "qWidth": {
            "type": "integer",
            "description": "Width of the canvas in pixels.",
            "format": "int32"
          },
          "qHeight": {
            "type": "integer",
            "description": "Height of the canvas in pixels.",
            "format": "int32"
          },
          "qZoomLevel": {
            "type": "integer",
            "description": "Zoom level.",
            "format": "int32"
          }
        }
      },
      "NxDataAreaPage": {
        "type": "object",
        "properties": {
          "qLeft": {
            "type": "number",
            "description": "Position from the left.\nCorresponds to the lowest possible value of the first measure (the measure on the x-axis).",
            "format": "double"
          },
          "qTop": {
            "type": "number",
            "description": "Position from the top.\nCorresponds to the highest possible value of the second measure (the measure on the y-axis).",
            "format": "double"
          },
          "qWidth": {
            "type": "number",
            "description": "Width of the page.\nCorresponds to the highest possible value of the first measure (the measure on the x-axis).",
            "format": "double"
          },
          "qHeight": {
            "type": "number",
            "description": "Height of the page.\nThe difference between _qTop_ and _qHeight_ gives the lowest possible value of the second measure (the measure on the y-axis).",
            "format": "double"
          }
        }
      },
      "NxPatch": {
        "type": "object",
        "properties": {
          "qOp": {
            "type": "string",
            "description": "Operation to perform.\n\nOne of:\n* add or Add\n* remove or Remove\n* replace or Replace",
            "$ref": "#/components/schemas/NxPatchOperationType"
          },
          "qPath": {
            "type": "string",
            "description": "Path to the property to add, remove or replace."
          },
          "qValue": {
            "type": "string",
            "description": "This parameter is not used in a remove operation.\nCorresponds to the value of the property to add or to the new value of the property to update.\nExamples:\n\"false\", \"2\", \"\\\"New title\\\"\""
          }
        }
      },
      "NxPatchOperationType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "add",
            "description": "Add"
          },
          {
            "x-qlik-const": 1,
            "title": "remove",
            "description": "Remove"
          },
          {
            "x-qlik-const": 2,
            "title": "replace",
            "description": "Replace"
          }
        ]
      },
      "GenericObjectProperties": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Identifier and type of the object.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qExtendsId": {
            "type": "string",
            "description": "Should be set to create an object that is linked to another object. Enter the identifier of the linking object (i.e the object you want to link to).\nIf you do not want to link your object, set this parameter to an empty string."
          },
          "qMetaDef": {
            "type": "object",
            "description": "Definition of the dynamic properties.",
            "$ref": "#/components/schemas/NxMetaDef"
          },
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          }
        },
        "additionalProperties": {
          "anyOf": [
            {
              "name": "qAppObjectListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/AppObjectListDef"
              }
            },
            {
              "name": "qBookmarkListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/BookmarkListDef"
              }
            },
            {
              "name": "qChildListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/ChildListDef"
              }
            },
            {
              "name": "qDimensionListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/DimensionListDef"
              }
            },
            {
              "name": "qEmbeddedSnapshotDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/EmbeddedSnapshotDef"
              }
            },
            {
              "name": "qExtensionListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/ExtensionListDef"
              }
            },
            {
              "name": "qFieldListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/FieldListDef"
              }
            },
            {
              "name": "qHyperCubeDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/HyperCubeDef"
              }
            },
            {
              "name": "qLayoutExclude",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/LayoutExclude"
              }
            },
            {
              "name": "qListObjectDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/ListObjectDef"
              }
            },
            {
              "name": "qMeasureListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/MeasureListDef"
              }
            },
            {
              "name": "qMediaListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/MediaListDef"
              }
            },
            {
              "name": "qNxLibraryDimensionDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/NxLibraryDimensionDef"
              }
            },
            {
              "name": "qNxLibraryMeasureDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/NxLibraryMeasureDef"
              }
            },
            {
              "name": "qSelectionObjectDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/SelectionObjectDef"
              }
            },
            {
              "name": "qStaticContentUrlDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/StaticContentUrlDef"
              }
            },
            {
              "name": "qStringExpression",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/StringExpression"
              }
            },
            {
              "name": "qTreeDataDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/TreeDataDef"
              }
            },
            {
              "name": "qUndoInfoDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/UndoInfoDef"
              }
            },
            {
              "name": "qValueExpression",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/ValueExpression"
              }
            },
            {
              "name": "qVariableListDef",
              "type": "object",
              "schema": {
                "$ref": "#/components/schemas/VariableListDef"
              }
            }
          ]
        }
      },
      "NxMetaDef": {
        "type": "object",
        "description": "Used to collect meta data.\n\n### Properties\nSemantic type with an empty structure."
      },
      "GenericObjectEntry": {
        "type": "object",
        "properties": {
          "qProperty": {
            "type": "object",
            "description": "Information about the generic object properties.",
            "$ref": "#/components/schemas/GenericObjectProperties"
          },
          "qChildren": {
            "type": "array",
            "description": "Information about the children of the generic object.",
            "items": {
              "$ref": "#/components/schemas/GenericObjectEntry"
            }
          },
          "qEmbeddedSnapshotRef": {
            "type": "object",
            "description": "Reference to a bookmark/snapshot that is embedded in the generic object.",
            "$ref": "#/components/schemas/GenericBookmarkEntry"
          }
        }
      },
      "GenericBookmarkEntry": {
        "type": "object",
        "properties": {
          "qProperties": {
            "type": "object",
            "description": "Information about the properties of the bookmark.",
            "$ref": "#/components/schemas/GenericBookmarkProperties"
          },
          "qBookmark": {
            "type": "object",
            "description": "Information about the bookmark.",
            "$ref": "#/components/schemas/NxBookmark"
          },
          "qClassicBookmark": {
            "type": "object",
            "description": "Information about the Classic bookmark.",
            "$ref": "#/components/schemas/Bookmark"
          },
          "qClassicMetadata": {
            "type": "object",
            "description": "Information about the Classic bookmark metadata.",
            "$ref": "#/components/schemas/MetaData"
          }
        }
      },
      "GenericBookmarkProperties": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Information about the bookmark.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMetaDef": {
            "type": "object",
            "description": "Definition of the dynamic properties.",
            "$ref": "#/components/schemas/NxMetaDef"
          },
          "qIncludeVariables": {
            "type": "boolean",
            "description": "If true all variables will be stored in the bookmark.",
            "default": false,
            "x-qlik-stability": "experimental"
          },
          "qDistinctValues": {
            "type": "boolean",
            "description": "If true all selected values will be stored distinct, i.e. searchstrings will not be kept.",
            "default": false,
            "x-qlik-stability": "experimental"
          }
        }
      },
      "NxBookmark": {
        "type": "object",
        "properties": {
          "qStateData": {
            "type": "array",
            "description": "List of selections for each state.",
            "items": {
              "$ref": "#/components/schemas/AlternateStateData"
            }
          },
          "qUtcModifyTime": {
            "type": "number",
            "description": "Time when the bookmark was created.",
            "format": "double"
          },
          "qVariableItems": {
            "type": "array",
            "description": "List of the variables in the app at the time the bookmark was created.",
            "items": {
              "$ref": "#/components/schemas/BookmarkVariableItem"
            }
          },
          "qPatches": {
            "type": "array",
            "description": "Softpatches to be applied with this bookmark.",
            "items": {
              "$ref": "#/components/schemas/NxPatches"
            }
          },
          "qCyclicGroupStates": {
            "type": "array",
            "description": "Information about cyclic groups by zero-based index. This field is unused.",
            "items": {
              "$ref": "#/components/schemas/CyclicGroupPosition"
            }
          },
          "qGroupStates": {
            "type": "array",
            "description": "Information about cyclic groups indexed by field definition.",
            "items": {
              "$ref": "#/components/schemas/GroupState"
            }
          }
        }
      },
      "AlternateStateData": {
        "type": "object",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections: $"
          },
          "qFieldItems": {
            "type": "array",
            "description": "List of the selections.",
            "items": {
              "$ref": "#/components/schemas/BookmarkFieldItem"
            }
          }
        }
      },
      "BookmarkFieldItem": {
        "type": "object",
        "properties": {
          "qDef": {
            "type": "object",
            "description": "Name and type of the field.",
            "$ref": "#/components/schemas/FieldDefEx"
          },
          "qLocked": {
            "type": "boolean",
            "description": "Indicates if the field is locked.\nDefault is false."
          },
          "qSelectInfo": {
            "type": "object",
            "description": "Information on the selections criteria.",
            "$ref": "#/components/schemas/SelectInfo"
          },
          "qValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldValue"
            }
          },
          "qExcludedValues": {
            "type": "array",
            "description": "List of excluded values.\nEither the list of selected values or the list of excluded values is displayed.",
            "items": {
              "$ref": "#/components/schemas/FieldValue"
            }
          },
          "qAndMode": {
            "type": "boolean",
            "description": "If set to true, selections within a list object are made in AND mode; If you have a list object that lists all customers, by selecting Customer 1 and Customer 2 while in and-mode, all records that are associated with Customer 1 **and** Customer 2 are selected.\nThe default value is false; selections within a list object are made in OR mode. If you have a list object that lists all customers, by selecting Customer 1 and Customer 2 while in or-mode, all records that are associated with either Customer 1 **or** Customer 2 are selected.\nThis parameter is not returned if set to false."
          },
          "qOneAndOnlyOne": {
            "type": "boolean",
            "description": "If set to true, the field has always one selection (not 0 and not more than 1). If another value is selected, the previous one is unselected.\nThe default value is false. This parameter is not returned if set to false."
          },
          "qValuesCount": {
            "type": "integer",
            "description": "Count of selected values. Indicates if the Values field is loaded.",
            "format": "int32",
            "default": -1
          },
          "qExcludedValuesCount": {
            "type": "integer",
            "description": "Count of excluded values. Indicates if the ExcludedValues field is loaded.",
            "format": "int32",
            "default": -1
          }
        }
      },
      "FieldDefEx": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the field."
          },
          "qType": {
            "type": "string",
            "description": "Type of data entity.\n\nOne of:\n* NOT_PRESENT\n* PRESENT\n* IS_CYCLIC_GROUP\n* IS_DRILL_GROUP\n* IS_VAR\n* IS_EXPR\n* IS_IMPLICIT\n* IS_DETAIL",
            "$ref": "#/components/schemas/FieldType"
          }
        }
      },
      "FieldType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "NOT_PRESENT"
          },
          {
            "x-qlik-const": 1,
            "title": "PRESENT"
          },
          {
            "x-qlik-const": 2,
            "title": "IS_CYCLIC_GROUP"
          },
          {
            "x-qlik-const": 3,
            "title": "IS_DRILL_GROUP"
          },
          {
            "x-qlik-const": 4,
            "title": "IS_VAR"
          },
          {
            "x-qlik-const": 5,
            "title": "IS_EXPR"
          },
          {
            "x-qlik-const": 6,
            "title": "IS_IMPLICIT"
          },
          {
            "x-qlik-const": 7,
            "title": "IS_DETAIL"
          }
        ]
      },
      "SelectInfo": {
        "type": "object",
        "properties": {
          "qTextSearch": {
            "type": "string",
            "description": "Text search string.\nEverything that matches the text is selected.\nThis parameter is optional."
          },
          "qRangeLo": {
            "type": "number",
            "description": "Lower value of the search range.\nThis parameter is used when performing range selections or text searches in dimensions.\nDefault is Null.",
            "format": "double",
            "default": -1e+300
          },
          "qRangeHi": {
            "type": "number",
            "description": "Highest value of the search range.\nThis parameter is used when performing range selections or text searches in dimensions.\nDefault is Null.",
            "format": "double",
            "default": -1e+300
          },
          "qNumberFormat": {
            "type": "object",
            "description": "Gives information about the formatting of the range.\nThis parameter is used when performing range selections or text searches in dimensions.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qRangeInfo": {
            "type": "array",
            "description": "This parameter is used when performing range selections or text searches in measures.\nGives information about the range of selections.",
            "items": {
              "$ref": "#/components/schemas/RangeSelectInfo"
            }
          },
          "qSoftLock": {
            "type": "boolean",
            "description": "Set to true to ignore locks; in that case, locked fields can be selected.\nThe default value is false.",
            "default": false
          },
          "qContinuousRangeInfo": {
            "type": "array",
            "description": "List of information about ranges for selections.",
            "items": {
              "$ref": "#/components/schemas/Range"
            }
          },
          "qSelectFieldSearch": {
            "type": "boolean",
            "description": "This parameter is true if the TextSearch is a result of a Select Field operation.",
            "default": false
          }
        }
      },
      "RangeSelectInfo": {
        "type": "object",
        "properties": {
          "qRangeLo": {
            "type": "number",
            "description": "Lowest value in the range.",
            "format": "double",
            "default": -1e+300
          },
          "qRangeHi": {
            "type": "number",
            "description": "Highest value in the range.",
            "format": "double",
            "default": -1e+300
          },
          "qMeasure": {
            "type": "string",
            "description": "Label of the measure."
          }
        }
      },
      "Range": {
        "type": "object",
        "properties": {
          "qMin": {
            "type": "number",
            "description": "Lowest value in the range",
            "format": "double"
          },
          "qMax": {
            "type": "number",
            "description": "Highest value in the range",
            "format": "double"
          },
          "qMinInclEq": {
            "type": "boolean",
            "description": "If set to true, the range includes the lowest value in the range of selections (Equals to ). [bn(50500)]\nExample:\nThe range is [1,10]. If _qMinInclEq_ is set to true it means that 1 is included in the range of selections."
          },
          "qMaxInclEq": {
            "type": "boolean",
            "description": "If set to true, the range includes the highest value in the range of selections (Equals to ). [bn(50500)]\nExample:\nThe range is [1,10]. If _qMinInclEq_ is set to true it means that 10 is included in the range of selections."
          }
        }
      },
      "BookmarkVariableItem": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the variable."
          },
          "qValue": {
            "type": "object",
            "description": "Value of the variable.",
            "$ref": "#/components/schemas/FieldValue"
          },
          "qDefinition": {
            "type": "string",
            "description": "The Reporting mode definition of the variable."
          }
        }
      },
      "NxPatches": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Identifier and type of the object.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qPatches": {
            "type": "array",
            "description": "Array with patches.",
            "items": {
              "$ref": "#/components/schemas/NxPatch"
            }
          },
          "qChildren": {
            "type": "array",
            "description": "Array with child objects and their patches.",
            "items": {
              "$ref": "#/components/schemas/NxPatches"
            }
          }
        }
      },
      "CyclicGroupPosition": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Target cyclic group.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qActiveField": {
            "type": "integer",
            "description": "Active field of the cyclic group, identified by a zero-based index.",
            "format": "int32"
          }
        }
      },
      "GroupState": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Target cyclic group.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qActiveFieldDef": {
            "type": "string",
            "description": "String defining the active field."
          }
        },
        "x-qlik-stability": "experimental"
      },
      "Bookmark": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "string"
          },
          "qName": {
            "type": "string"
          },
          "qUtcModifyTime": {
            "type": "number",
            "format": "double"
          },
          "qUtcRecallTime": {
            "type": "number",
            "format": "double"
          },
          "qRecallCount": {
            "type": "integer",
            "format": "int32"
          },
          "qApplyAdditive": {
            "type": "boolean"
          },
          "qFieldItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BookmarkFieldItem"
            }
          },
          "qVariableItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BookmarkVariableItem"
            }
          },
          "qSheetId": {
            "type": "string"
          },
          "qObjects": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LayoutBookmarkData"
            }
          },
          "qApplyLayoutState": {
            "type": "boolean",
            "default": false
          },
          "qShowPopupInfo": {
            "type": "boolean",
            "default": false
          },
          "qInfoText": {
            "type": "string"
          },
          "qOwner": {
            "type": "string"
          },
          "qGroups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GroupBookmarkData"
            }
          },
          "qShow": {
            "type": "object",
            "$ref": "#/components/schemas/CondDef"
          },
          "qApplyInputFieldValues": {
            "type": "boolean",
            "default": true
          },
          "qInputFieldItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InputFieldItem"
            }
          },
          "qObjectsLayout": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExtendedLayoutBookmarkData"
            }
          },
          "qIncludeSelectionState": {
            "type": "boolean",
            "default": true
          },
          "qIncludeScrollPosition": {
            "type": "boolean"
          },
          "qAlternateStateData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AlternateStateData"
            }
          },
          "qForAnnotations": {
            "type": "boolean"
          },
          "qIncludeAllVariables": {
            "type": "boolean",
            "default": false
          }
        }
      },
      "LayoutBookmarkData": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "string"
          },
          "qActive": {
            "type": "boolean"
          },
          "qShowMode": {
            "type": "integer",
            "format": "byte"
          },
          "qScrollPos": {
            "type": "object",
            "$ref": "#/components/schemas/ScrollPosition"
          }
        }
      },
      "ScrollPosition": {
        "type": "object",
        "properties": {
          "qUsePosition": {
            "type": "boolean"
          },
          "qPos": {
            "type": "object",
            "$ref": "#/components/schemas/Point"
          }
        }
      },
      "Point": {
        "type": "object",
        "properties": {
          "qx": {
            "type": "integer",
            "description": "x-coordinate in pixels.\nThe origin is the top left of the screen.",
            "format": "int32"
          },
          "qy": {
            "type": "integer",
            "description": "y-coordinate in pixels.\nThe origin is the top left of the screen.",
            "format": "int32"
          }
        }
      },
      "GroupBookmarkData": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "string"
          },
          "qCyclePos": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "CondDef": {
        "type": "object",
        "properties": {
          "qAlways": {
            "type": "boolean",
            "default": true
          },
          "qExpression": {
            "type": "object",
            "$ref": "#/components/schemas/ValueExpr"
          }
        }
      },
      "ValueExpr": {
        "type": "object",
        "properties": {
          "qv": {
            "type": "string",
            "description": "Expression evaluated to dual."
          }
        }
      },
      "InputFieldItem": {
        "type": "object",
        "properties": {
          "qFieldName": {
            "type": "string"
          },
          "qValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldValue"
            }
          },
          "qPackedHashKeys": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "byte"
            }
          }
        }
      },
      "ExtendedLayoutBookmarkData": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "string"
          },
          "qActive": {
            "type": "boolean"
          },
          "qShowMode": {
            "type": "integer",
            "format": "byte"
          },
          "qScrollPos": {
            "type": "object",
            "$ref": "#/components/schemas/ScrollPosition"
          },
          "qExpansionInfo": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExpansionData"
            }
          },
          "qLeftCollapsed": {
            "type": "boolean"
          },
          "qTopCollapsed": {
            "type": "boolean"
          },
          "qSortData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InterFieldSortData"
            }
          },
          "qDimensionGroupPos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GroupStateInfo"
            }
          },
          "qExpressionGroupPos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GroupStateInfo"
            }
          },
          "qUseGraphMode": {
            "type": "boolean"
          },
          "qGraphMode": {
            "type": "string",
            "description": "\nOne of:\n* GRAPH_MODE_BAR\n* GRAPH_MODE_PIE\n* GRAPH_MODE_PIVOTTABLE\n* GRAPH_MODE_SCATTER\n* GRAPH_MODE_LINE\n* GRAPH_MODE_STRAIGHTTABLE\n* GRAPH_MODE_COMBO\n* GRAPH_MODE_RADAR\n* GRAPH_MODE_GAUGE\n* GRAPH_MODE_GRID\n* GRAPH_MODE_BLOCK\n* GRAPH_MODE_FUNNEL\n* GRAPH_MODE_MEKKO\n* GRAPH_MODE_LAST",
            "$ref": "#/components/schemas/GraphMode"
          },
          "qActiveContainerChildObjectId": {
            "type": "string"
          },
          "qExtendedPivotState": {
            "type": "object",
            "$ref": "#/components/schemas/ExtendedPivotStateData"
          }
        }
      },
      "ExpansionData": {
        "type": "object",
        "properties": {
          "qExcludeList": {
            "type": "boolean"
          },
          "qPos": {
            "type": "object",
            "$ref": "#/components/schemas/PositionMark"
          }
        }
      },
      "PositionMark": {
        "type": "object",
        "properties": {
          "qDimName": {
            "type": "string"
          },
          "qElemNo": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qElemValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Blob"
            }
          }
        }
      },
      "Blob": {
        "type": "string",
        "contentEncoding": "base64"
      },
      "InterFieldSortData": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string"
          },
          "qReversed": {
            "type": "boolean"
          }
        }
      },
      "GroupStateInfo": {
        "type": "object",
        "properties": {
          "qGroupName": {
            "type": "string"
          },
          "qCurrentItemName": {
            "type": "string"
          }
        }
      },
      "GraphMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "GRAPH_MODE_BAR"
          },
          {
            "x-qlik-const": 1,
            "title": "GRAPH_MODE_PIE"
          },
          {
            "x-qlik-const": 2,
            "title": "GRAPH_MODE_PIVOTTABLE"
          },
          {
            "x-qlik-const": 3,
            "title": "GRAPH_MODE_SCATTER"
          },
          {
            "x-qlik-const": 4,
            "title": "GRAPH_MODE_LINE"
          },
          {
            "x-qlik-const": 5,
            "title": "GRAPH_MODE_STRAIGHTTABLE"
          },
          {
            "x-qlik-const": 6,
            "title": "GRAPH_MODE_COMBO"
          },
          {
            "x-qlik-const": 7,
            "title": "GRAPH_MODE_RADAR"
          },
          {
            "x-qlik-const": 8,
            "title": "GRAPH_MODE_GAUGE"
          },
          {
            "x-qlik-const": 9,
            "title": "GRAPH_MODE_GRID"
          },
          {
            "x-qlik-const": 10,
            "title": "GRAPH_MODE_BLOCK"
          },
          {
            "x-qlik-const": 11,
            "title": "GRAPH_MODE_FUNNEL"
          },
          {
            "x-qlik-const": 12,
            "title": "GRAPH_MODE_MEKKO"
          },
          {
            "x-qlik-const": 13,
            "title": "GRAPH_MODE_LAST"
          }
        ]
      },
      "ExtendedPivotStateData": {
        "type": "object",
        "properties": {
          "qExpressionPosition": {
            "type": "integer",
            "format": "byte"
          },
          "qNumberOfLeftDimensions": {
            "type": "integer",
            "format": "byte"
          },
          "qDimensionNames": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "qEnableConditions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "MetaData": {
        "type": "object",
        "properties": {
          "qShared": {
            "type": "boolean"
          },
          "qUtcModifyTime": {
            "type": "number",
            "format": "double"
          },
          "qSheetId": {
            "type": "string"
          },
          "qTemporary": {
            "type": "boolean"
          },
          "qRestrictedAccess": {
            "type": "boolean"
          },
          "qAccessList": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "qPersonalEditionHash_OBSOLETE": {
            "type": "string"
          },
          "qHidden": {
            "type": "boolean",
            "default": false
          },
          "qLinkedTo": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "NxExportFileType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "CSV_C",
            "description": "EXPORT_CSV_C"
          },
          {
            "x-qlik-const": 1,
            "title": "CSV_T",
            "description": "EXPORT_CSV_T"
          },
          {
            "x-qlik-const": 2,
            "title": "OOXML",
            "description": "EXPORT_OOXML"
          },
          {
            "x-qlik-const": 3,
            "title": "PARQUET",
            "description": "EXPORT_PARQUET"
          }
        ]
      },
      "NxExportState": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "P",
            "description": "EXPORT_POSSIBLE"
          },
          {
            "x-qlik-const": 1,
            "title": "A",
            "description": "EXPORT_ALL"
          }
        ]
      },
      "NxSelectionCell": {
        "type": "object",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of cells to select.\n\nOne of:\n* D or NX_CELL_DATA\n* T or NX_CELL_TOP\n* L or NX_CELL_LEFT",
            "$ref": "#/components/schemas/NxSelectionCellType"
          },
          "qCol": {
            "type": "integer",
            "description": "Column index to select.\nIndexing starts from 0.\nIf the cell's type is:\n* D, the index is based on the data matrix.\n* T, the index is based on the data matrix.\n* L, the index is based on the left dimensions indexes.",
            "format": "int32"
          },
          "qRow": {
            "type": "integer",
            "description": "Row index to select.\nIndexing starts from 0.\nIf the cell's type is:\n* D, the index is based on the data matrix.\n* T, the index is based on the top dimensions indexes.\n* L, the index is based on the data matrix.",
            "format": "int32"
          }
        }
      },
      "NxSelectionCellType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "D",
            "description": "NX_CELL_DATA"
          },
          {
            "x-qlik-const": 1,
            "title": "T",
            "description": "NX_CELL_TOP"
          },
          {
            "x-qlik-const": 2,
            "title": "L",
            "description": "NX_CELL_LEFT"
          }
        ]
      },
      "NxRangeSelectInfo": {
        "type": "object",
        "properties": {
          "qRange": {
            "type": "object",
            "description": "Range of values.",
            "$ref": "#/components/schemas/Range"
          },
          "qMeasureIx": {
            "type": "integer",
            "description": "Number of the measure to select.\nNumbering starts from 0.",
            "format": "int32"
          }
        }
      },
      "NxMultiRangeSelectInfo": {
        "type": "object",
        "properties": {
          "qRanges": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NxRangeSelectInfo"
            }
          },
          "qColumnsToSelect": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        }
      },
      "NxTreeMultiRangeSelectInfo": {
        "type": "object",
        "properties": {
          "qRanges": {
            "type": "array",
            "description": "An array of Ranges.",
            "items": {
              "$ref": "#/components/schemas/NxTreeRangeSelectInfo"
            }
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxTreeRangeSelectInfo": {
        "type": "object",
        "properties": {
          "qRange": {
            "type": "object",
            "description": "Range of values.",
            "$ref": "#/components/schemas/Range"
          },
          "qMeasureIx": {
            "type": "integer",
            "description": "Number of the measure to select.\nNumbering starts from 0.",
            "format": "int32"
          },
          "qDimensionIx": {
            "type": "integer",
            "description": "Number of the dimension to select\nmeasure from.  Numbering starts from 0.",
            "format": "int32"
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxContinuousRangeSelectInfo": {
        "type": "object",
        "properties": {
          "qRange": {
            "type": "object",
            "description": "Range information.",
            "$ref": "#/components/schemas/Range"
          },
          "qDimIx": {
            "type": "integer",
            "description": "Dimension index.",
            "format": "int32"
          }
        }
      },
      "ObjectInterface": {
        "type": "object",
        "properties": {
          "qType": {
            "type": "string",
            "description": "The native type of the object."
          },
          "qHandle": {
            "type": "integer",
            "description": "The handle used to connect to object.",
            "format": "int32"
          },
          "qGenericType": {
            "type": "string",
            "description": "The type of the object."
          },
          "qGenericId": {
            "type": "string",
            "description": "Object ID."
          }
        }
      },
      "NxLinkedObjectInfo": {
        "type": "object",
        "properties": {
          "qRootId": {
            "type": "string",
            "description": "Identifier of the root object.\nIf the linked object is a child, the root identifier is the identifier of the parent.\nIf the linked object is an app object, the root identifier is the same than the identifier of the linked object since the linked object is a root object."
          },
          "qInfo": {
            "type": "object",
            "description": "Information about the linked object.",
            "$ref": "#/components/schemas/NxInfo"
          }
        }
      },
      "NxGroupDef": {
        "type": "object",
        "description": "Defines the properties of an object group.",
        "properties": {
          "qClass": {
            "type": "string",
            "description": "Specifies the class of the group's object members.\n\nOne of:\n* bookmark or MEMBER_BOOKMARK\n* object or MEMBER_OBJECT",
            "$ref": "#/components/schemas/NxGroupMemberClass"
          },
          "qObjectType": {
            "type": "string",
            "description": "Specifies the type of the group's object members.",
            "default": "bookmark"
          },
          "qGroupType": {
            "type": "string",
            "description": "Specifies the type of the group's subgroup members.",
            "default": "objectgroup"
          },
          "qLabel": {
            "type": "string",
            "description": "The group's label. Will be evaluated as an expression if it starts with '='."
          },
          "qIncludeOrphanGroups": {
            "type": "boolean",
            "description": "Include all groups of the relevant type, by adding those groups last that are not explicitly included in the hierarchy (orphans)"
          },
          "qMemberIds": {
            "type": "array",
            "description": "The objects and sub-groups that are members of the group.",
            "items": {
              "$ref": "#/components/schemas/NxGroupObjectId"
            }
          }
        },
        "x-qlik-stability": "experimental"
      },
      "NxGroupMemberClass": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "bookmark",
            "description": "MEMBER_BOOKMARK"
          },
          {
            "x-qlik-const": 1,
            "title": "object",
            "description": "MEMBER_OBJECT"
          }
        ]
      },
      "NxGroupObjectId": {
        "type": "object",
        "description": "Holds the ID of a _NxGroupDef_'s member.\n_GroupId_ holds the ID of a sub-group while _ObjectId_ holds the ID of an object.\nOnly one Id should be set. _GroupId_ takes precedence if both are set.",
        "properties": {
          "qGroupId": {
            "type": "string"
          },
          "qObjectId": {
            "type": "string"
          }
        },
        "x-qlik-stability": "experimental"
      },
      "AppObjectListDef": {
        "type": "object",
        "description": "Defines the list of objects in an app.\n<div class=note>An app object is a generic object created at app level.</div>",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of the app list."
          },
          "qData": {
            "type": "object",
            "description": "Data that you want to include in the app list definition.\nYou need to enter the paths to the information you want to retrieve.",
            "$ref": "#/components/schemas/JsonObject"
          }
        },
        "x-qlik-see-also": [
          "[List all app objects](#csh-list-app-objects)",
          "[AppObjectList](#definitions-AppObjectList)"
        ]
      },
      "JsonObject": {
        "type": "object",
        "description": "Contains dynamic JSON data specified by the client."
      },
      "AppObjectList": {
        "type": "object",
        "description": "Lists the app objects. Is the layout for _AppObjectListDef_.\n<div class=note>An app object is a generic object created at app level.</div>",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Information about the list of dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxContainerEntry"
            }
          }
        }
      },
      "NxContainerEntry": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Information about the object.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMeta": {
            "type": "object",
            "description": "Information on publishing and permissions.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qData": {
            "type": "object",
            "description": "Set of data.",
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "BookmarkListDef": {
        "type": "object",
        "description": "Defines the list of bookmarks.",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of the list."
          },
          "qData": {
            "type": "object",
            "description": "Data",
            "$ref": "#/components/schemas/JsonObject"
          },
          "qIncludePatches": {
            "type": "boolean",
            "description": "Include the bookmark patches. Patches can be very large and may make the list result unmanageable."
          }
        },
        "x-qlik-see-also": [
          "[List the bookmarks in an app](#csh-list-bookmarks-in-app)",
          "[BookmarkList](#definitions-BookmarkList)"
        ]
      },
      "BookmarkList": {
        "type": "object",
        "description": "Lists the bookmarks. Is the layout for _BookmarkListDef_.",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Information about the list of bookmarks.",
            "items": {
              "$ref": "#/components/schemas/NxContainerEntry"
            }
          }
        }
      },
      "ChildListDef": {
        "type": "object",
        "description": "Defines the list of children of a generic object.\nWhat is defined in _ChildListDef_ has an impact on what the _GetLayout_ method returns. See _Example_ for more information.",
        "properties": {
          "qData": {
            "type": "object",
            "description": "Data that you want to include in the child list definition.\nYou need to enter the paths to the information you want to retrieve.",
            "$ref": "#/components/schemas/JsonObject"
          }
        },
        "x-qlik-see-also": [
          "[Create an app object](#csh-create-app-object)",
          "[List the children of a generic object](#csh-list-childs-in-generic-object)",
          "[ChildList](#definitions-ChildList)"
        ]
      },
      "ChildList": {
        "type": "object",
        "description": "Lists the children of a generic object. Is the layout for _ChildListDef_.\n<div class=note>ChildList is used by the _GetLayout Method_ to list the children of a generic object. </div>",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Information about the items in the app object.",
            "items": {
              "$ref": "#/components/schemas/NxContainerEntry"
            }
          }
        }
      },
      "DimensionListDef": {
        "type": "object",
        "description": "Defines the lists of dimensions.",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of the list."
          },
          "qData": {
            "type": "object",
            "description": "Data",
            "$ref": "#/components/schemas/JsonObject"
          }
        },
        "x-qlik-see-also": [
          "[List the dimensions in an app](#csh-list-dimensions-in-app)",
          "[DimensionList](#definitions-DimensionList)"
        ]
      },
      "DimensionList": {
        "type": "object",
        "description": "Lists the dimensions. Is the layout for _DimensionListDef_.",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Information about the list of dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxContainerEntry"
            }
          }
        }
      },
      "EmbeddedSnapshotDef": {
        "type": "object",
        "description": "Defines the embedded snapshot in a generic object.\n\n### Properties\n\"EmbeddedSnapshotDef\": {}",
        "x-qlik-see-also": [
          "[EmbeddedSnapshot](#definitions-EmbeddedSnapshot)"
        ]
      },
      "EmbeddedSnapshot": {
        "type": "object",
        "description": "Renders the embedded snapshot in an object.\nThe following is returned:\n* Any dynamic properties defined in the bookmark\n* Any properties defined in _qEmbeddedSnapshot_\n\n### Properties\n\"qEmbeddedSnapshot\": {}"
      },
      "ExtensionListDef": {
        "type": "object",
        "description": "Obsolete, use qrs API's to fetch extensions."
      },
      "ExtensionList": {
        "type": "object",
        "description": "Obsolete, use qrs API's to fetch extensions.",
        "properties": {
          "qItems": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "FieldListDef": {
        "type": "object",
        "description": "Defines the fields to show.",
        "properties": {
          "qShowSystem": {
            "type": "boolean",
            "description": "Shows the system tables if set to true.\nDefault is false.",
            "default": false
          },
          "qShowHidden": {
            "type": "boolean",
            "description": "Shows the hidden fields if set to true.\nDefault is false.",
            "default": false
          },
          "qShowSemantic": {
            "type": "boolean",
            "description": "Show the semantic fields if set to true.\nDefault is false.",
            "default": false
          },
          "qShowSrcTables": {
            "type": "boolean",
            "description": "Shows the tables and fields present in the data model viewer if set to true.\nDefault is false.",
            "default": false
          },
          "qShowDefinitionOnly": {
            "type": "boolean",
            "description": "Shows the fields defined on the fly if set to true.\nDefault is false.",
            "default": false
          },
          "qShowDerivedFields": {
            "type": "boolean",
            "description": "Shows the fields and derived fields if set to true.\nDefault is false.",
            "default": false
          },
          "qShowImplicit": {
            "type": "boolean",
            "description": "Shows the Direct Discovery measure fields if set to true.\nDefault is false.",
            "default": false
          }
        },
        "x-qlik-see-also": [
          "[List the fields in an app](#csh-list-fields-in-app)",
          "[FieldList](#definitions-FieldList)"
        ]
      },
      "FieldList": {
        "type": "object",
        "description": "Lists the fields present in the data model viewer. Is the layout for _FieldListDef_.",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Array of items.",
            "items": {
              "$ref": "#/components/schemas/NxFieldDescription"
            }
          }
        }
      },
      "NxFieldDescription": {
        "type": "object",
        "description": "### NxDerivedFieldsdata\n<table>\n<tbody>\n<tr>\n<th>Name</th>\n<th>Description</th>\n<th>Type</th>\n</tr>\n<tr>\n<td>qDerivedDefinitionName</td>\n<td>Name of the derived definition.</td>\n<td>String</td>\n</tr>\n<tr>\n<td>qFieldDefs</td>\n<td>List of the derived fields.</td>\n<td>Array of <i>NxDerivedField</i></td>\n</tr>\n<tr>\n<td>qGroupDefs</td>\n<td>List of the derived groups.</td>\n<td>Array of <i>NxDerivedGroup</i></td>\n</tr>\n<tr>\n<td>qTags</td>\n<td>List of tags on the derived fields.</td>\n<td>Array of <i>String</i> </td>\n</tr>\n</tbody>\n</table>",
        "properties": {
          "qIsSemantic": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a semantic."
          },
          "qIsHidden": {
            "type": "boolean",
            "description": "If set to true, it means that the field is hidden."
          },
          "qIsSystem": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a system field."
          },
          "qAndMode": {
            "type": "boolean",
            "description": "If set to true a logical AND (instead of a logical OR) is used when making selections in a field.\nThe default value is false."
          },
          "qName": {
            "type": "string",
            "description": "Name of the field"
          },
          "qCardinal": {
            "type": "integer",
            "description": "Number of distinct field values",
            "format": "int32"
          },
          "qTags": {
            "type": "array",
            "description": "Gives information on a field. For example, it can return the type of the field.\nExamples: key, text, ASCII",
            "items": {
              "type": "string"
            }
          },
          "qIsDefinitionOnly": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a field on the fly."
          },
          "qDerivedFieldData": {
            "type": "object",
            "description": "Lists the derived fields if any.",
            "$ref": "#/components/schemas/NxDerivedFieldDescriptionList"
          },
          "qIsDetail": {
            "type": "boolean",
            "description": "Is used for Direct Discovery.\nIf set to true, it means that the type of the field is detail."
          },
          "qIsImplicit": {
            "type": "boolean",
            "description": "Is used for Direct Discovery.\nIf set to true, it means that the type of the field is measure."
          },
          "qReadableName": {
            "type": "string"
          }
        }
      },
      "NxDerivedFieldDescriptionList": {
        "type": "object",
        "properties": {
          "qDerivedFieldLists": {
            "type": "array",
            "description": "Information about the derived fields.",
            "items": {
              "$ref": "#/components/schemas/NxDerivedFieldsData"
            }
          }
        }
      },
      "NxDerivedFieldsData": {
        "type": "object",
        "properties": {
          "qDerivedDefinitionName": {
            "type": "string",
            "description": "Name of the derived definition."
          },
          "qFieldDefs": {
            "type": "array",
            "description": "List of the derived fields.",
            "items": {
              "$ref": "#/components/schemas/NxDerivedField"
            }
          },
          "qGroupDefs": {
            "type": "array",
            "description": "List of the derived groups.",
            "items": {
              "$ref": "#/components/schemas/NxDerivedGroup"
            }
          },
          "qTags": {
            "type": "array",
            "description": "List of tags on the derived fields.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "NxDerivedField": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "string",
            "description": "Identifier of the derived field.\nThe identifier is unique."
          },
          "qName": {
            "type": "string",
            "description": "Combination of field name, definition and method.\nExample:\n_OrderDate.MyDefinition.Year_"
          },
          "qMethod": {
            "type": "string",
            "description": "Method name associated to the derived field."
          },
          "qExpr": {
            "type": "string",
            "description": "Expression of the derived field.\nExample:\nIf _qName_ is _OrderDate.MyDefinition.Year_ , the expression is as follows:\n_=${Mydefinition(OrderDate).Year}_"
          },
          "qTags": {
            "type": "array",
            "description": "List of tags.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "NxDerivedGroup": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "string",
            "description": "Identifier of the group."
          },
          "qName": {
            "type": "string",
            "description": "Name of the derived group."
          },
          "qGrouping": {
            "type": "string",
            "description": "Grouping type.\nThe grouping should be either H or C (Grouping is mandatory for derived definitions).\nThe parameter is mandatory.\n\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qFieldDefs": {
            "type": "array",
            "description": "List of the derived fields in the group.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "NxGrpType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "N",
            "description": "GRP_NX_NONE"
          },
          {
            "x-qlik-const": 1,
            "title": "H",
            "description": "GRP_NX_HIEARCHY"
          },
          {
            "x-qlik-const": 2,
            "title": "C",
            "description": "GRP_NX_COLLECTION"
          }
        ]
      },
      "HyperCubeDef": {
        "type": "object",
        "description": "Defines the properties of a hypercube.\nFor more information about the definition of a hypercube, see _Generic object_.",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          },
          "qDimensions": {
            "type": "array",
            "description": "Array of dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxDimension"
            }
          },
          "qMeasures": {
            "type": "array",
            "description": "Array of measures.",
            "items": {
              "$ref": "#/components/schemas/NxMeasure"
            }
          },
          "qInterColumnSortOrder": {
            "type": "array",
            "description": "Defines the sort order of the columns in the hypercube.\nColumn numbers are separated by a comma.\nExample: [1,0,2] means that the first column to be sorted should be the column 1, followed by the column 0 and the column 2.\nThe default sort order is the order in which the dimensions and measures have been defined in the hypercube. By default, the pseudo-dimension (if any) is the most to the right in the array.\nThe index of the pseudo-dimension (if any) is -1.\nPseudo dimensions only apply for pivot tables with more than one measure.\nA pseudo dimension groups together the measures defined in a pivot table. You can neither collapse/expand a pseudo dimension nor make any selections in it.\nStacked pivot tables can only contain one measure.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qSuppressZero": {
            "type": "boolean",
            "description": "Removes zero values.",
            "default": false
          },
          "qSuppressMissing": {
            "type": "boolean",
            "description": "Removes missing values.",
            "default": false
          },
          "qInitialDataFetch": {
            "type": "array",
            "description": "Initial data set.",
            "items": {
              "$ref": "#/components/schemas/NxPage"
            }
          },
          "qReductionMode": {
            "type": "string",
            "description": "\nOne of:\n* N or DATA_REDUCTION_NONE\n* D1 or DATA_REDUCTION_ONEDIM\n* S or DATA_REDUCTION_SCATTERED\n* C or DATA_REDUCTION_CLUSTERED\n* ST or DATA_REDUCTION_STACKED",
            "$ref": "#/components/schemas/NxDataReductionMode"
          },
          "qMode": {
            "type": "string",
            "description": "Defines the way the data are handled internally by the engine.\nDefault value is _DATA_MODE_STRAIGHT_ .\nA pivot table can contain several dimensions and measures whereas a stacked pivot table can contain several dimensions but only one measure.\n\nOne of:\n* S or DATA_MODE_STRAIGHT\n* P or DATA_MODE_PIVOT\n* K or DATA_MODE_PIVOT_STACK\n* T or DATA_MODE_TREE\n* D or DATA_MODE_DYNAMIC",
            "default": "DATA_MODE_STRAIGHT",
            "$ref": "#/components/schemas/NxHypercubeMode"
          },
          "qPseudoDimPos": {
            "type": "integer",
            "format": "int32",
            "default": -1
          },
          "qNoOfLeftDims": {
            "type": "integer",
            "description": "Number of left dimensions.\nDefault value is -1. In that case, all dimensions are left dimensions.\nHidden dimensions (e.g. due to unfulfilled calc condition on dimension level) is still counted in this context.\nThe index related to each left dimension depends on the position of the pseudo dimension (if any).\nFor example, a pivot table with:\n* Four dimensions in the following order: Country, City, Product and Category.\n* One pseudo dimension in position 1 (the position is defined in _qInterColumnSortOrder_ )\n_qInterColumnSortOrder_ is (0,-1,1,2,3).\n* Three left dimensions ( _qNoOfLeftDims_ is set to 3).\n\nimplies that:\n* The index 0 corresponds to the left dimension Country.\n* The index 1 corresponds to the pseudo dimension.\n* The index 2 corresponds to the left dimension City.\n* Product and Category are top dimensions.\n\nAnother example:\n* Four dimensions in the following order: Country, City, Product and Category.\n* Three left dimensions ( _qNoOfLeftDims_ is set to 3).\n* One pseudo dimension.\n* The property _qInterColumnSortOrder_ is left empty.\n\nImplies that:\n* The index 0 corresponds to the left dimension Country.\n* The index 1 corresponds to the left dimension City.\n* The index 2 corresponds to the left dimension Product.\n* Category is a top dimension.\n* The pseudo dimension is a top dimension.",
            "format": "int32",
            "default": -1
          },
          "qAlwaysFullyExpanded": {
            "type": "boolean",
            "description": "If this property is set to true, the cells are always expanded. It implies that it is not possible to collapse any cells.\nThe default value is false.",
            "default": false
          },
          "qMaxStackedCells": {
            "type": "integer",
            "description": "Maximum number of cells for an initial data fetch (set in _qInitialDataFetch_ ) when in stacked mode ( _qMode_ is K).\nThe default value is 5000.",
            "format": "int32",
            "default": 5000
          },
          "qPopulateMissing": {
            "type": "boolean",
            "description": "If this property is set to true, the missing symbols (if any) are replaced by 0 if the value is a numeric and by an empty string if the value is a string.\nThe default value is false.",
            "default": false
          },
          "qShowTotalsAbove": {
            "type": "boolean",
            "description": "If set to true, the total (if any) is shown on the first row.\nThe default value is false.",
            "default": false
          },
          "qIndentMode": {
            "type": "boolean",
            "description": "This property applies for pivot tables and allows to change the layout of the table. An indentation is added to the beginning of each row.\nThe default value is false.",
            "default": false
          },
          "qCalcCond": {
            "type": "object",
            "description": "Specifies a calculation condition, which must be fulfilled for the hypercube to be (re)calculated.\nAs long as the condition is not met, the engine does not perform a new calculation.\nThis property is optional. By default, there is no calculation condition.",
            "$ref": "#/components/schemas/ValueExpr"
          },
          "qSortbyYValue": {
            "type": "integer",
            "description": "To enable the sorting by ascending or descending order in the values of a measure.\nThis property applies to pivot tables and stacked pivot tables.\nIn the case of a pivot table, the measure or pseudo dimension should be defined as a top dimension. The sorting is restricted to the values of the first measure in a pivot table.",
            "format": "int8",
            "default": 0
          },
          "qTitle": {
            "type": "object",
            "description": "Title of the hypercube, for example the title of a chart.",
            "$ref": "#/components/schemas/StringExpr"
          },
          "qCalcCondition": {
            "type": "object",
            "description": "Specifies a calculation condition object.\nIf CalcCondition.Cond is not fulfilled, the hypercube is not calculated and CalcCondition.Msg is evaluated.\nBy default, there is no calculation condition.\nThis property is optional.",
            "$ref": "#/components/schemas/NxCalcCond"
          },
          "qColumnOrder": {
            "type": "array",
            "description": "The order of the columns.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qExpansionState": {
            "type": "array",
            "description": "Expansion state per dimension for pivot mode ( _qMode_ is P).",
            "items": {
              "$ref": "#/components/schemas/ExpansionData"
            },
            "x-qlik-stability": "experimental"
          },
          "qDynamicScript": {
            "type": "array",
            "description": "Hypercube Modifier Dynamic script string",
            "items": {
              "type": "string"
            },
            "x-qlik-stability": "experimental"
          },
          "qContextSetExpression": {
            "type": "string",
            "description": "Set Expression valid for the whole cube. Used to limit computations to the set specified."
          },
          "qSuppressMeasureTotals": {
            "type": "boolean",
            "description": "If set to true, suppress any measure grand totals, ignoring any AggrFunc."
          }
        },
        "x-qlik-see-also": [
          "[Drill up a hierarchy](#csh-drill-up-hierarchy)",
          "[Create a hypercube](#csh-create-hypercube)",
          "[HyperCube](#definitions-HyperCube)"
        ]
      },
      "NxDimension": {
        "type": "object",
        "description": "<div class=note>The fields or expressions in the dimension are either defined in **qDef** or in the master dimension referred to by **qLibraryId**. If **qLibraryId** is set then the qFieldDefs, qFieldLabels, qGrouping, qLabelExpression and qAlias of the master dimension will be used. </div> <div class=note>If the dimension is set in the hypercube and not in the library, this dimension cannot be shared with other objects.</div> <div class=note>A dimension that is set in the library can be used by many objects.</div>",
        "properties": {
          "qLibraryId": {
            "type": "string",
            "description": "Refers to a dimension stored in the library."
          },
          "qDef": {
            "type": "object",
            "description": "Refers to a dimension stored in the hypercube.",
            "$ref": "#/components/schemas/NxInlineDimensionDef"
          },
          "qNullSuppression": {
            "type": "boolean",
            "description": "If set to true, no null values are returned."
          },
          "qIncludeElemValue": {
            "type": "boolean"
          },
          "qOtherTotalSpec": {
            "type": "object",
            "description": "Sets the dimension limits. Each dimension of a hypercube is configured separately.\nDefines if some values (grouped as _Others_ ) should be grouped together in the visualization.\nFor example in a pie chart all values lower than 200 could be grouped together.",
            "$ref": "#/components/schemas/OtherTotalSpecProp"
          },
          "qShowTotal": {
            "type": "boolean"
          },
          "qShowAll": {
            "type": "boolean",
            "description": "If set to true, all dimension values are shown."
          },
          "qOtherLabel": {
            "type": "object",
            "description": "This property is used when some dimension limits are set.\nLabel of the _Others_ group. The default label is _Others_ .\nExample:\n_\"qOtherLabel\":\"= &lt;label&gt;\"_\nor\n_\"qOtherLabel\":{\"qExpr\":\"= &lt;label&gt;\"}_\nWhere:\n* &lt; _label_ &gt; is the label of the _Others_ group.",
            "$ref": "#/components/schemas/StringExpr"
          },
          "qTotalLabel": {
            "type": "object",
            "description": "If this property is set, the total of the calculated values is returned.\nThe default label is _Total_ .\nExample:\n_\"qTotalLabel\":\"= &lt;label&gt;\"_\nor\n_\"qTotalLabel\":{\"qExpr\":\"= &lt;label&gt;\"}_\nWhere:\n* &lt; _label_ &gt; is the label of the _Total_ group.",
            "$ref": "#/components/schemas/StringExpr"
          },
          "qCalcCond": {
            "type": "object",
            "description": "Specifies a calculation condition, which must be fulfilled for the dimension to be calculated.\nIf the calculation condition is not met, the dimension is excluded from the calculation.\nBy default, there is no calculation condition.\nThis property is optional.",
            "$ref": "#/components/schemas/ValueExpr"
          },
          "qAttributeExpressions": {
            "type": "array",
            "description": "List of attribute expressions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrExprDef"
            }
          },
          "qAttributeDimensions": {
            "type": "array",
            "description": "List of attribute dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrDimDef"
            }
          },
          "qCalcCondition": {
            "type": "object",
            "description": "Specifies a calculation condition object.\nIf CalcCondition.Cond is not fulfilled, the dimension is excluded from the calculation and CalcCondition.Msg is evaluated.\nBy default, there is no calculation condition.\nThis property is optional.",
            "$ref": "#/components/schemas/NxCalcCond"
          }
        }
      },
      "NxInlineDimensionDef": {
        "type": "object",
        "properties": {
          "qGrouping": {
            "type": "string",
            "description": "Used to define a cyclic group or drill-down group.\nDefault value is no grouping.\nThis parameter is optional.\n\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qFieldDefs": {
            "type": "array",
            "description": "Array of field names.\nWhen creating a grouped dimension, more than one field name is defined.\nThis parameter is optional.",
            "items": {
              "type": "string"
            }
          },
          "qFieldLabels": {
            "type": "array",
            "description": "Array of field labels.\nThis parameter is optional.",
            "items": {
              "type": "string"
            }
          },
          "qSortCriterias": {
            "type": "array",
            "description": "Defines the sorting criteria in the field.\nDefault is to sort by alphabetical order, ascending.\nThis parameter is optional.",
            "items": {
              "$ref": "#/components/schemas/SortCriteria"
            }
          },
          "qNumberPresentations": {
            "type": "array",
            "description": "Defines the format of the value.\nThis parameter is optional.",
            "items": {
              "$ref": "#/components/schemas/FieldAttributes"
            }
          },
          "qReverseSort": {
            "type": "boolean",
            "description": "If set to true, it inverts the sort criteria in the field."
          },
          "qActiveField": {
            "type": "integer",
            "description": "Index of the active field in a cyclic dimension.\nThis parameter is optional. The default value is 0.\nThis parameter is used in case of cyclic dimensions ( _qGrouping_ is C).",
            "format": "int32"
          },
          "qLabelExpression": {
            "type": "string",
            "description": "Label expression.\nThis parameter is optional."
          },
          "qAlias": {
            "type": "string",
            "description": "Alias of the dimension."
          }
        }
      },
      "SortCriteria": {
        "type": "object",
        "properties": {
          "qSortByState": {
            "type": "integer",
            "description": "Sorts the field values according to their logical state (selected, optional, alternative or excluded).",
            "format": "int8"
          },
          "qSortByFrequency": {
            "type": "integer",
            "description": "Sorts the field values by frequency (number of occurrences in the field).",
            "format": "int8"
          },
          "qSortByNumeric": {
            "type": "integer",
            "description": "Sorts the field values by numeric value.",
            "format": "int8"
          },
          "qSortByAscii": {
            "type": "integer",
            "description": "Sorts the field by alphabetical order.",
            "format": "int8"
          },
          "qSortByLoadOrder": {
            "type": "integer",
            "description": "Sorts the field values by the initial load order.",
            "format": "int8"
          },
          "qSortByExpression": {
            "type": "integer",
            "description": "Sorts the field by expression.",
            "format": "int8"
          },
          "qExpression": {
            "type": "object",
            "description": "Sort by expression.",
            "$ref": "#/components/schemas/ValueExpr"
          },
          "qSortByGreyness": {
            "type": "integer",
            "format": "int8"
          }
        }
      },
      "OtherTotalSpecProp": {
        "type": "object",
        "properties": {
          "qOtherMode": {
            "type": "string",
            "description": "Determines how many dimension values are displayed.\nThe default value is _OTHER_OFF_ .\n\nOne of:\n* OTHER_OFF\n* OTHER_COUNTED\n* OTHER_ABS_LIMITED\n* OTHER_ABS_ACC_TARGET\n* OTHER_REL_LIMITED\n* OTHER_REL_ACC_TARGET",
            "default": "OTHER_OFF",
            "$ref": "#/components/schemas/OtherMode"
          },
          "qOtherCounted": {
            "type": "object",
            "description": "Number of values to display. The number of values can be entered as a calculated formula.\nThis parameter is used when _qOtherMode_ is set to _OTHER_COUNTED_ .",
            "$ref": "#/components/schemas/ValueExpr"
          },
          "qOtherLimit": {
            "type": "object",
            "description": "Value used to limit the dimension values. The limit can be entered as a calculated formula.\nThis parameter is used when _qOtherMode_ is set to:\n* OTHER_ABS_LIMITED\n* OTHER_REL_LIMITED\n* OTHER_ABS_ACC_TARGET\nOTHER_REL_ACC_TARGET",
            "$ref": "#/components/schemas/ValueExpr"
          },
          "qOtherLimitMode": {
            "type": "string",
            "description": "Sets the limit for the _Others_ mode.\nThis parameter is used when _qOtherMode_ is set to:\n* OTHER_ABS_LIMITED\n* OTHER_REL_LIMITED\n* OTHER_ABS_ACC_TARGET\nOTHER_REL_ACC_TARGET\n\nOne of:\n* OTHER_GE_LIMIT\n* OTHER_LE_LIMIT\n* OTHER_GT_LIMIT\n* OTHER_LT_LIMIT",
            "default": "OTHER_GT_LIMIT",
            "$ref": "#/components/schemas/OtherLimitMode"
          },
          "qSuppressOther": {
            "type": "boolean",
            "description": "If set to true, the group _Others_ is not displayed as a dimension value.\nThe default value is false.",
            "default": false
          },
          "qForceBadValueKeeping": {
            "type": "boolean",
            "description": "This parameter is used when _qOtherMode_ is set to:\n* OTHER_ABS_LIMITED\n* OTHER_REL_LIMITED\n* OTHER_ABS_ACC_TARGET\nOTHER_REL_ACC_TARGET\n\nand when the dimension values include not numeric values.\nSet this parameter to true to include text values in the returned values.\nThe default value is true.",
            "default": true
          },
          "qApplyEvenWhenPossiblyWrongResult": {
            "type": "boolean",
            "description": "Set this parameter to true to allow the calculation of _Others_ even if the engine detects some potential mistakes.\nFor example the country Russia is part of the continent Europe and Asia. If you have an hypercube with two dimensions Country and Continent and one measure Population, the engine can detect that the population of Russia is included in both the continent Asia and Europe.\nThe default value is true.",
            "default": true
          },
          "qGlobalOtherGrouping": {
            "type": "boolean",
            "description": "This parameter applies to inner dimensions.\nIf this parameter is set to true, the restrictions are calculated on the selected dimension only. All previous dimensions are ignored.\nThe default value is false.",
            "default": false
          },
          "qOtherCollapseInnerDimensions": {
            "type": "boolean",
            "description": "If set to true, it collapses the inner dimensions (if any) in the group _Others_ .\nThe default value is false.",
            "default": false
          },
          "qOtherSortMode": {
            "type": "string",
            "description": "Defines the sort order of the dimension values.\nThe default value is _OTHER_SORT_DESCENDING_ .\n\nOne of:\n* OTHER_SORT_DEFAULT\n* OTHER_SORT_DESCENDING\n* OTHER_SORT_ASCENDING",
            "default": "OTHER_SORT_DESCENDING",
            "$ref": "#/components/schemas/OtherSortMode"
          },
          "qTotalMode": {
            "type": "string",
            "description": "If set to _TOTAL_EXPR_ , the total of the dimension values is returned.\nThe default value is _TOTAL_OFF_ .\n\nOne of:\n* TOTAL_OFF\n* TOTAL_EXPR",
            "default": "TOTAL_OFF",
            "$ref": "#/components/schemas/TotalMode"
          },
          "qReferencedExpression": {
            "type": "object",
            "description": "This parameter applies when there are several measures.\nName of the measure to use for the calculation of _Others_ for a specific dimension.",
            "$ref": "#/components/schemas/StringExpr"
          }
        }
      },
      "OtherMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "OTHER_OFF"
          },
          {
            "x-qlik-const": 1,
            "title": "OTHER_COUNTED"
          },
          {
            "x-qlik-const": 2,
            "title": "OTHER_ABS_LIMITED"
          },
          {
            "x-qlik-const": 3,
            "title": "OTHER_ABS_ACC_TARGET"
          },
          {
            "x-qlik-const": 4,
            "title": "OTHER_REL_LIMITED"
          },
          {
            "x-qlik-const": 5,
            "title": "OTHER_REL_ACC_TARGET"
          }
        ]
      },
      "OtherLimitMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "OTHER_GE_LIMIT"
          },
          {
            "x-qlik-const": 1,
            "title": "OTHER_LE_LIMIT"
          },
          {
            "x-qlik-const": 2,
            "title": "OTHER_GT_LIMIT"
          },
          {
            "x-qlik-const": 3,
            "title": "OTHER_LT_LIMIT"
          }
        ]
      },
      "OtherSortMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "OTHER_SORT_DEFAULT"
          },
          {
            "x-qlik-const": 1,
            "title": "OTHER_SORT_DESCENDING"
          },
          {
            "x-qlik-const": 2,
            "title": "OTHER_SORT_ASCENDING"
          }
        ]
      },
      "TotalMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "TOTAL_OFF"
          },
          {
            "x-qlik-const": 1,
            "title": "TOTAL_EXPR"
          }
        ]
      },
      "StringExpr": {
        "type": "object",
        "properties": {
          "qv": {
            "type": "string",
            "description": "Expression evaluated to string."
          }
        }
      },
      "NxAttrExprDef": {
        "type": "object",
        "properties": {
          "qExpression": {
            "type": "string",
            "description": "Definition of the attribute expression.\nExample: _\"Max(OrderID)\"_"
          },
          "qLibraryId": {
            "type": "string",
            "description": "Definition of the attribute expression stored in the library.\nExample: _\"MyGenericMeasure\"_"
          },
          "qAttribute": {
            "type": "boolean",
            "description": "If set to true, this measure will not affect the number of rows in the cube."
          },
          "qNumFormat": {
            "type": "object",
            "description": "Format of the field.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qLabel": {
            "type": "string",
            "description": "Label of the attribute expression."
          },
          "qLabelExpression": {
            "type": "string",
            "description": "Optional expression used for dynamic label."
          }
        }
      },
      "NxAttrDimDef": {
        "type": "object",
        "description": "Layout for _NxAttrDimDef_.",
        "properties": {
          "qDef": {
            "type": "string",
            "description": "Expression or field name."
          },
          "qLibraryId": {
            "type": "string",
            "description": "LibraryId for dimension."
          },
          "qSortBy": {
            "type": "object",
            "description": "Sorting.",
            "$ref": "#/components/schemas/SortCriteria"
          },
          "qAttribute": {
            "type": "boolean",
            "description": "If set to true, this attribute will not affect the number of rows in the cube."
          }
        }
      },
      "NxCalcCond": {
        "type": "object",
        "properties": {
          "qCond": {
            "type": "object",
            "description": "Condition for calculating an hypercube, dimension or measure.",
            "$ref": "#/components/schemas/ValueExpr"
          },
          "qMsg": {
            "type": "object",
            "description": "Evaluated if Cond is not fullfilled.",
            "$ref": "#/components/schemas/StringExpr"
          }
        }
      },
      "NxMeasure": {
        "type": "object",
        "description": "<div class=note>Either **qDef** or **qLibraryId** must be set, but not both. If both are set, the library measure's qDef and qLabel will be used. </div> <div class=note>If the measure is set in the hypercube and not in the library, this measure cannot be shared with other objects.</div> <div class=note>A measure that is set in the library can be used by many objects.</div> <div class=note>\nexpressions are complementary expressions associated to a measure. For example, you can decide to change the background color of a visualization depending on the values of the measure.\nAttribute expressions do not affect the layout of an object. The sorting order is unchanged.\n</div>",
        "properties": {
          "qLibraryId": {
            "type": "string",
            "description": "Refers to a measure stored in the library."
          },
          "qDef": {
            "type": "object",
            "description": "Refers to a measure stored in the hypercube.",
            "$ref": "#/components/schemas/NxInlineMeasureDef"
          },
          "qSortBy": {
            "type": "object",
            "description": "Defines the sort criteria.\nThe default value is sort by ascending alphabetic order.\nThis property is optional.",
            "$ref": "#/components/schemas/SortCriteria"
          },
          "qAttributeExpressions": {
            "type": "array",
            "description": "List of attribute expressions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrExprDef"
            }
          },
          "qAttributeDimensions": {
            "type": "array",
            "description": "List of attribute dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrDimDef"
            }
          },
          "qCalcCond": {
            "type": "object",
            "description": "Specifies a calculation condition, which must be fulfilled for the measure to be calculated.\nIf the calculation condition is not met, the measure is excluded from the calculation.\nBy default, there is no calculation condition.\nThis property is optional.",
            "$ref": "#/components/schemas/ValueExpr"
          },
          "qCalcCondition": {
            "type": "object",
            "description": "Specifies a calculation condition object.\nIf CalcCondition.Cond is not fulfilled, the measure is excluded from the calculation and CalcCondition.Msg is evaluated.\nBy default, there is no calculation condition.\nThis property is optional.",
            "$ref": "#/components/schemas/NxCalcCond"
          },
          "qTrendLines": {
            "type": "array",
            "description": "Specifies trendlines for this measure.",
            "items": {
              "$ref": "#/components/schemas/NxTrendlineDef"
            }
          },
          "qMiniChartDef": {
            "type": "object",
            "$ref": "#/components/schemas/NxMiniChartDef"
          }
        }
      },
      "NxInlineMeasureDef": {
        "type": "object",
        "properties": {
          "qLabel": {
            "type": "string",
            "description": "Name of the measure.\nAn empty string is returned as a default value.\nThis parameter is optional."
          },
          "qDescription": {
            "type": "string",
            "description": "Description of the measure.\nAn empty string is returned as a default value.\nThis parameter is optional."
          },
          "qTags": {
            "type": "array",
            "description": "Name connected to the measure that is used for search purposes.\nA measure can have several tags.\nThis parameter is optional.",
            "items": {
              "type": "string"
            }
          },
          "qGrouping": {
            "type": "string",
            "description": "Default value is no grouping.\nThis parameter is optional.\n\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qDef": {
            "type": "string",
            "description": "Definition of the expression in the measure.\nExample: _Sum (OrderTotal)_\nThis parameter is mandatory."
          },
          "qNumFormat": {
            "type": "object",
            "description": "Format of the field.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qRelative": {
            "type": "boolean",
            "description": "If set to true, percentage values are returned instead of absolute numbers.\nDefault value is false.\nThis parameter is optional."
          },
          "qBrutalSum": {
            "type": "boolean",
            "description": "If set to true, the sum of rows total should be used rather than real expression total.\nThis parameter is optional and applies to straight tables.\nDefault value is false.\nIf using the Qlik Sense interface, it means that the total mode is set to **Expression Total** ."
          },
          "qAggrFunc": {
            "type": "string",
            "description": "Flag indicating how the measure should be aggregated to create a grand total.\n\"None\" - No total calculation.\n\"Expr\" - Calculate total according to the measure expression.\n\"\"     - Empty string is default and has same effect as \"Expr\".\nThis parameter is optional."
          },
          "qAccumulate": {
            "type": "integer",
            "description": "* 0 means no accumulation\n                            * 1 means full accumulation (each y-value accumulates all previous y-values of the expression)\n                            * ≥ 2 means accumulate as many steps as the _qAccumulate_ value\nDefault value is 0.\nThis parameter is optional.",
            "format": "int32"
          },
          "qReverseSort": {
            "type": "boolean",
            "description": "If set to true, it inverts the sort criteria in the field."
          },
          "qActiveExpression": {
            "type": "integer",
            "description": "Index of the active expression in a cyclic measure. The indexing starts from 0.\nThe default value is 0.\nThis parameter is optional.",
            "format": "int32"
          },
          "qExpressions": {
            "type": "array",
            "description": "Array of expressions. This parameter is used in case of cyclic measures ( _qGrouping_ is C). List of the expressions in the cyclic group.",
            "items": {
              "type": "string"
            }
          },
          "qLabelExpression": {
            "type": "string",
            "description": "Label expression.\nThis parameter is optional."
          }
        }
      },
      "NxTrendlineDef": {
        "type": "object",
        "description": "Trendline input definition",
        "properties": {
          "qType": {
            "type": "string",
            "description": "The type of trendline to calculate\n\nOne of:\n* AVERAGE or Average\n* LINEAR or Linear\n* POLYNOMIAL2 or Polynomial2\n* POLYNOMIAL3 or Polynomial3\n* POLYNOMIAL4 or Polynomial4\n* EXPONENTIAL or Exponential\n* POWER or Power\n* LOG or Logarithmic",
            "$ref": "#/components/schemas/NxLTrendlineType"
          },
          "qXColIx": {
            "type": "integer",
            "description": "The column in the hypercube to be used as x axis. Can point to either a dimension (numeric or text) or a measure",
            "format": "int32",
            "default": -1
          },
          "qCalcR2": {
            "type": "boolean",
            "description": "Set to true to calulatate the R2 score",
            "default": false
          },
          "qContinuousXAxis": {
            "type": "string",
            "description": "Set if the numerical value of x axis dimension should be used\n\nOne of:\n* Never or CONTINUOUS_NEVER\n* Possible or CONTINUOUS_IF_POSSIBLE\n* Time or CONTINUOUS_IF_TIME",
            "default": "CONTINUOUS_NEVER",
            "$ref": "#/components/schemas/NxContinuousMode"
          },
          "qMultiDimMode": {
            "type": "string",
            "description": "If you have a hypercube with two dimensions and qXColIx refers to a dimension\nThis determines if you get one trendline of each value in the other dimension or\nOr trendline based on the sum of the value in the other dimension\nThe sum variant is only supported when qXColIx is 0 and qMode (on the hypercube) is K or T\n\nOne of:\n* Multi or TRENDLINE_MULTILINE\n* Sum or TRENDLINE_SUM",
            "default": "TRENDLINE_MULTILINE",
            "$ref": "#/components/schemas/NxTrendlineMode"
          }
        },
        "x-qlik-stability": "experimental"
      },
      "NxLTrendlineType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "AVERAGE",
            "description": "Average"
          },
          {
            "x-qlik-const": 1,
            "title": "LINEAR",
            "description": "Linear"
          },
          {
            "x-qlik-const": 2,
            "title": "POLYNOMIAL2",
            "description": "Polynomial2"
          },
          {
            "x-qlik-const": 3,
            "title": "POLYNOMIAL3",
            "description": "Polynomial3"
          },
          {
            "x-qlik-const": 4,
            "title": "POLYNOMIAL4",
            "description": "Polynomial4"
          },
          {
            "x-qlik-const": 5,
            "title": "EXPONENTIAL",
            "description": "Exponential"
          },
          {
            "x-qlik-const": 6,
            "title": "POWER",
            "description": "Power"
          },
          {
            "x-qlik-const": 7,
            "title": "LOG",
            "description": "Logarithmic"
          }
        ]
      },
      "NxContinuousMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "Never",
            "description": "CONTINUOUS_NEVER"
          },
          {
            "x-qlik-const": 1,
            "title": "Possible",
            "description": "CONTINUOUS_IF_POSSIBLE"
          },
          {
            "x-qlik-const": 2,
            "title": "Time",
            "description": "CONTINUOUS_IF_TIME"
          }
        ]
      },
      "NxTrendlineMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "Multi",
            "description": "TRENDLINE_MULTILINE"
          },
          {
            "x-qlik-const": 1,
            "title": "Sum",
            "description": "TRENDLINE_SUM"
          }
        ]
      },
      "NxMiniChartDef": {
        "type": "object",
        "properties": {
          "qDef": {
            "type": "string",
            "description": "Expression or field name."
          },
          "qLibraryId": {
            "type": "string",
            "description": "LibraryId for dimension."
          },
          "qSortBy": {
            "type": "object",
            "description": "Sorting.",
            "$ref": "#/components/schemas/SortCriteria"
          },
          "qOtherTotalSpec": {
            "type": "object",
            "$ref": "#/components/schemas/OtherTotalSpecProp"
          },
          "qMaxNumberPoints": {
            "type": "integer",
            "format": "int32",
            "default": -1
          },
          "qAttributeExpressions": {
            "type": "array",
            "description": "List of attribute expressions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrExprDef"
            }
          },
          "qNullSuppression": {
            "type": "boolean",
            "description": "If set to true, no null values are returned."
          }
        }
      },
      "NxHypercubeMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "S",
            "description": "DATA_MODE_STRAIGHT"
          },
          {
            "x-qlik-const": 1,
            "title": "P",
            "description": "DATA_MODE_PIVOT"
          },
          {
            "x-qlik-const": 2,
            "title": "K",
            "description": "DATA_MODE_PIVOT_STACK"
          },
          {
            "x-qlik-const": 3,
            "title": "T",
            "description": "DATA_MODE_TREE"
          },
          {
            "x-qlik-const": 4,
            "title": "D",
            "description": "DATA_MODE_DYNAMIC"
          }
        ]
      },
      "HyperCube": {
        "type": "object",
        "description": "Renders the properties of a hypercube. Is the layout for _HyperCubeDef_.\nFor more information about the definition of a hypercube, see _Generic object_.\n<div class=note>What is returned in HyperCube depends on the type of the hypercube (straight, pivot or stacked table, or tree) and on the method called (GetLayout, GetHyperCubeData, GetHyperCubePivotData, GetHyperCubeStackData, GetHyperCubeTreeData).</div>",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          },
          "qSize": {
            "type": "object",
            "description": "Defines the size of the hypercube.",
            "$ref": "#/components/schemas/Size"
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional and is displayed in case of error.",
            "$ref": "#/components/schemas/NxValidationError"
          },
          "qDimensionInfo": {
            "type": "array",
            "description": "Information on the dimension.",
            "items": {
              "$ref": "#/components/schemas/NxDimensionInfo"
            }
          },
          "qMeasureInfo": {
            "type": "array",
            "description": "Information on the measure.",
            "items": {
              "$ref": "#/components/schemas/NxMeasureInfo"
            }
          },
          "qEffectiveInterColumnSortOrder": {
            "type": "array",
            "description": "Sort order of the columns in the hypercube.\nColumn numbers are separated by a comma.\nExample: [1,0,2] means that the first column to be sorted was the column 1, followed by the column 0 and the column 2.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qGrandTotalRow": {
            "type": "array",
            "description": "Aggregate for measures of all values in the field.\nThe result value depends on the _qAggrFunc_ defined in _HyperCubeDef_.",
            "items": {
              "$ref": "#/components/schemas/NxCell"
            }
          },
          "qDataPages": {
            "type": "array",
            "description": "Set of data.\nIs empty if nothing has been defined in **qInitialDataFetch** in _HyperCubeDef_.",
            "items": {
              "$ref": "#/components/schemas/NxDataPage"
            }
          },
          "qPivotDataPages": {
            "type": "array",
            "description": "Set of data for pivot tables.\nIs empty if nothing has been defined in **qInitialDataFetch** in _HyperCubeDef_.",
            "items": {
              "$ref": "#/components/schemas/NxPivotPage"
            }
          },
          "qStackedDataPages": {
            "type": "array",
            "description": "Set of data for stacked tables.\nIs empty if nothing has been defined in **qInitialDataFetch** in _HyperCubeDef_.",
            "items": {
              "$ref": "#/components/schemas/NxStackPage"
            }
          },
          "qMode": {
            "type": "string",
            "description": "Information about the mode of the visualization.\n\nOne of:\n* S or DATA_MODE_STRAIGHT\n* P or DATA_MODE_PIVOT\n* K or DATA_MODE_PIVOT_STACK\n* T or DATA_MODE_TREE\n* D or DATA_MODE_DYNAMIC",
            "$ref": "#/components/schemas/NxHypercubeMode"
          },
          "qNoOfLeftDims": {
            "type": "integer",
            "description": "Number of left dimensions.\nDefault value is -1.\nThe index related to each left dimension depends on the position of the pseudo dimension (if any).\nFor example, a pivot table with:\n* Four dimensions in the following order: Country, City, Product and Category\n* One pseudo dimension in position 1\n* Three left dimensions.\n\nimplies that:\n* The index 0 corresponds to the left dimension Country.\n* The index 1 corresponds to the pseudo dimension.\n* The index 2 corresponds to the left dimension City.\n* Product and Category are top dimensions.\n\nAnother example:\n* Four dimensions in the following order: Country, City, Product and Category.\n* One pseudo dimension in position -1.\n* Three left dimensions.\n\nimplies that:\n* The index -1 corresponds to the pseudo dimension; the pseudo dimension is the most to the right.\n* The index 0 corresponds to the left dimension Country.\n* The index 1 corresponds to the left dimension City.\n* The index 2 corresponds to the left dimension Product.\n* Category is a top dimension.",
            "format": "int32"
          },
          "qIndentMode": {
            "type": "boolean",
            "description": "Is used for pivot tables only.\nIf set to true, the formatting of the results is slightly different.\nThis property is optional."
          },
          "qLastExpandedPos": {
            "type": "object",
            "description": "Is used for pivot tables only.\nPosition of the last expended cell.\nThis property is optional.",
            "$ref": "#/components/schemas/NxCellPosition"
          },
          "qHasOtherValues": {
            "type": "boolean",
            "description": "True if other row exists."
          },
          "qTitle": {
            "type": "string",
            "description": "Title of the hypercube, for example the title of a chart."
          },
          "qTreeNodesOnDim": {
            "type": "array",
            "description": "The total number of nodes on each dimension (only applicable when _qMode = T_ ).",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qCalcCondMsg": {
            "type": "string",
            "description": "The message displayed if calculation condition is not fulfilled."
          },
          "qColumnOrder": {
            "type": "array",
            "description": "The order of the columns.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        }
      },
      "Size": {
        "type": "object",
        "properties": {
          "qcx": {
            "type": "integer",
            "description": "Number of pixels on the _x_ axis.",
            "format": "int32"
          },
          "qcy": {
            "type": "integer",
            "description": "Number of pixels on the _y_ axis.",
            "format": "int32"
          }
        }
      },
      "NxDimensionInfo": {
        "type": "object",
        "properties": {
          "qFallbackTitle": {
            "type": "string",
            "description": "Corresponds to the label of the dimension that is selected.\nIf the label is not defined then the field name is used."
          },
          "qApprMaxGlyphCount": {
            "type": "integer",
            "description": "Length of the longest value in the field.",
            "format": "int32"
          },
          "qCardinal": {
            "type": "integer",
            "description": "Number of distinct field values.",
            "format": "int32",
            "x-qlik-deprecated": true
          },
          "qLocked": {
            "type": "boolean",
            "description": "Is set to true if the field is locked."
          },
          "qSortIndicator": {
            "type": "string",
            "description": "Sort indicator.\nThe default value is no sorting.\nThis parameter is optional.\n\nOne of:\n* N or NX_SORT_INDICATE_NONE\n* A or NX_SORT_INDICATE_ASC\n* D or NX_SORT_INDICATE_DESC",
            "$ref": "#/components/schemas/NxSortIndicatorType"
          },
          "qGroupFallbackTitles": {
            "type": "array",
            "description": "Array of dimension labels.\nContains the labels of all dimensions in a hierarchy group (for example the labels of all dimensions in a drill down group).",
            "items": {
              "type": "string"
            }
          },
          "qGroupPos": {
            "type": "integer",
            "description": "Index of the dimension that is currently in use.\n_qGroupPos_ is set to 0 if there are no hierarchical groups (drill-down groups) or cycle groups.",
            "format": "int32"
          },
          "qStateCounts": {
            "type": "object",
            "description": "Number of values in a particular state.",
            "$ref": "#/components/schemas/NxStateCounts"
          },
          "qTags": {
            "type": "array",
            "description": "Gives information on a field. For example, it can return the type of the field.\nExamples: key, text, ASCII",
            "items": {
              "type": "string"
            }
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional.\nGives information on the error.",
            "$ref": "#/components/schemas/NxValidationError"
          },
          "qDimensionType": {
            "type": "string",
            "description": "Binary format of the field.\n\nOne of:\n* D or NX_DIMENSION_TYPE_DISCRETE\n* N or NX_DIMENSION_TYPE_NUMERIC\n* T or NX_DIMENSION_TYPE_TIME",
            "$ref": "#/components/schemas/NxDimensionType"
          },
          "qReverseSort": {
            "type": "boolean",
            "description": "If set to true, it inverts the sort criteria in the field."
          },
          "qGrouping": {
            "type": "string",
            "description": "Defines the grouping.\n\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qIsSemantic": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a semantic."
          },
          "qNumFormat": {
            "type": "object",
            "description": "Format of the field.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qIsAutoFormat": {
            "type": "boolean",
            "description": "This parameter is set to true if _qNumFormat_ is set to _U_ (unknown). The engine guesses the type of the field based on the field's definition."
          },
          "qGroupFieldDefs": {
            "type": "array",
            "description": "Array of field names.",
            "items": {
              "type": "string"
            }
          },
          "qMin": {
            "type": "number",
            "description": "Minimum value.",
            "format": "double"
          },
          "qMax": {
            "type": "number",
            "description": "Maximum value.",
            "format": "double"
          },
          "qContinuousAxes": {
            "type": "boolean",
            "description": "Is continuous axis used."
          },
          "qIsCyclic": {
            "type": "boolean",
            "description": "Is a cyclic dimension used."
          },
          "qDerivedField": {
            "type": "boolean",
            "description": "Is derived field is used as a dimension."
          },
          "qAttrExprInfo": {
            "type": "array",
            "description": "Array of attribute expressions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrExprInfo"
            }
          },
          "qAttrDimInfo": {
            "type": "array",
            "description": "Array of attribute dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrDimInfo"
            }
          },
          "qCalcCondMsg": {
            "type": "string",
            "description": "The message displayed if calculation condition is not fulfilled."
          },
          "qIsCalculated": {
            "type": "boolean",
            "description": "True if this is a calculated dimension.",
            "default": false
          },
          "qIsOneAndOnlyOne": {
            "type": "boolean",
            "description": "If set to true, it means that the field always has one and only one selected value."
          },
          "qCardinalities": {
            "type": "object",
            "description": "Dimension Cardinalities",
            "$ref": "#/components/schemas/NxCardinalities"
          },
          "qLibraryId": {
            "type": "string",
            "description": "Refers to a dimension stored in the library."
          },
          "qEffectiveDimensionName": {
            "type": "string",
            "description": "The expanded and stripped dimension name used internally in engine.",
            "x-qlik-stability": "experimental"
          }
        }
      },
      "NxSortIndicatorType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "N",
            "description": "NX_SORT_INDICATE_NONE"
          },
          {
            "x-qlik-const": 1,
            "title": "A",
            "description": "NX_SORT_INDICATE_ASC"
          },
          {
            "x-qlik-const": 2,
            "title": "D",
            "description": "NX_SORT_INDICATE_DESC"
          }
        ]
      },
      "NxStateCounts": {
        "type": "object",
        "properties": {
          "qLocked": {
            "type": "integer",
            "description": "Number of values in locked state.",
            "format": "int32"
          },
          "qSelected": {
            "type": "integer",
            "description": "Number of values in selected state.",
            "format": "int32"
          },
          "qOption": {
            "type": "integer",
            "description": "Number of values in optional state.",
            "format": "int32"
          },
          "qDeselected": {
            "type": "integer",
            "description": "Number of values in deselected state.",
            "format": "int32"
          },
          "qAlternative": {
            "type": "integer",
            "description": "Number of values in alternative state.",
            "format": "int32"
          },
          "qExcluded": {
            "type": "integer",
            "description": "Number of values in excluded state.",
            "format": "int32"
          },
          "qSelectedExcluded": {
            "type": "integer",
            "description": "Number of values in selected excluded state.",
            "format": "int32"
          },
          "qLockedExcluded": {
            "type": "integer",
            "description": "Number of values in locked excluded state.",
            "format": "int32"
          }
        }
      },
      "NxDimensionType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "D",
            "description": "NX_DIMENSION_TYPE_DISCRETE"
          },
          {
            "x-qlik-const": 1,
            "title": "N",
            "description": "NX_DIMENSION_TYPE_NUMERIC"
          },
          {
            "x-qlik-const": 2,
            "title": "T",
            "description": "NX_DIMENSION_TYPE_TIME"
          }
        ]
      },
      "NxAttrExprInfo": {
        "type": "object",
        "description": "Layout for _NxAttrExprDef_.",
        "properties": {
          "qMin": {
            "type": "number",
            "description": "Minimum value.",
            "format": "double"
          },
          "qMax": {
            "type": "number",
            "description": "Maximum value.",
            "format": "double"
          },
          "qFallbackTitle": {
            "type": "string"
          },
          "qMinText": {
            "type": "string",
            "description": "String version of the minimum Value."
          },
          "qMaxText": {
            "type": "string",
            "description": "String version of the maximum Value."
          },
          "qNumFormat": {
            "type": "object",
            "description": "Format of the field.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qIsAutoFormat": {
            "type": "boolean",
            "description": "This parameter is set to true if _qNumFormat_ is set to _U_ (unknown). The engine guesses the type of the field based on the field's expression."
          }
        }
      },
      "NxAttrDimInfo": {
        "type": "object",
        "description": "Layout for _NxAttrDimDef_.",
        "properties": {
          "qCardinal": {
            "type": "integer",
            "description": "Cardinality of the attribute expression.",
            "format": "int32"
          },
          "qSize": {
            "type": "object",
            "description": "Number of rows.",
            "$ref": "#/components/schemas/Size"
          },
          "qFallbackTitle": {
            "type": "string",
            "description": "The title for the attribute dimension."
          },
          "qLocked": {
            "type": "boolean",
            "description": "The Locked value of the dimension."
          },
          "qError": {
            "type": "object",
            "description": "Validation error.",
            "$ref": "#/components/schemas/NxValidationError"
          },
          "qIsCalculated": {
            "type": "boolean",
            "description": "True if this is a calculated dimension.",
            "default": false
          }
        }
      },
      "NxCardinalities": {
        "type": "object",
        "properties": {
          "qCardinal": {
            "type": "integer",
            "description": "Number of distinct field values.",
            "format": "int32"
          },
          "qHypercubeCardinal": {
            "type": "integer",
            "description": "Number of distinct hypercube values.",
            "format": "int32"
          },
          "qAllValuesCardinal": {
            "type": "integer",
            "description": "Number of distinct values when paging for AllValues in a Tree Structure.\nDefault is -1 if not part of a Tree structure.",
            "format": "int32",
            "default": -1
          }
        }
      },
      "NxMeasureInfo": {
        "type": "object",
        "description": "Layout for _NxInlineMeasureDef_.",
        "properties": {
          "qFallbackTitle": {
            "type": "string",
            "description": "Corresponds to the label of the measure.\nIf the label is not defined then the measure name is used."
          },
          "qApprMaxGlyphCount": {
            "type": "integer",
            "description": "Length of the longest value in the field.",
            "format": "int32"
          },
          "qCardinal": {
            "type": "integer",
            "description": "Number of distinct field values.",
            "format": "int32"
          },
          "qSortIndicator": {
            "type": "string",
            "description": "Sort indicator.\nThe default value is no sorting.\nThis parameter is optional.\n\nOne of:\n* N or NX_SORT_INDICATE_NONE\n* A or NX_SORT_INDICATE_ASC\n* D or NX_SORT_INDICATE_DESC",
            "$ref": "#/components/schemas/NxSortIndicatorType"
          },
          "qNumFormat": {
            "type": "object",
            "description": "Format of the field.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qMin": {
            "type": "number",
            "description": "Lowest value in the range.",
            "format": "double"
          },
          "qMax": {
            "type": "number",
            "description": "Highest value in the range.",
            "format": "double"
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional.\nGives information on the error.",
            "$ref": "#/components/schemas/NxValidationError"
          },
          "qReverseSort": {
            "type": "boolean",
            "description": "If set to true, it inverts the sort criteria in the field."
          },
          "qIsAutoFormat": {
            "type": "boolean",
            "description": "This parameter is set to true if _qNumFormat_ is set to _U_ (unknown). The engine guesses the type of the field based on the field's expression."
          },
          "qAttrExprInfo": {
            "type": "array",
            "description": "List of attribute expressions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrExprInfo"
            }
          },
          "qAttrDimInfo": {
            "type": "array",
            "description": "List of attribute dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrDimInfo"
            }
          },
          "qCalcCondMsg": {
            "type": "string",
            "description": "The message displayed if calculation condition is not fulfilled."
          },
          "qLibraryId": {
            "type": "string",
            "description": "Refers to a dimension stored in the library."
          },
          "qTrendLines": {
            "type": "array",
            "description": "Calculated trendlines",
            "items": {
              "$ref": "#/components/schemas/NxTrendline"
            }
          },
          "qMiniChart": {
            "type": "object",
            "$ref": "#/components/schemas/NxMiniChart"
          }
        }
      },
      "NxTrendline": {
        "type": "object",
        "description": "Information about the calculated trendline.",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of trendline\n\nOne of:\n* AVERAGE or Average\n* LINEAR or Linear\n* POLYNOMIAL2 or Polynomial2\n* POLYNOMIAL3 or Polynomial3\n* POLYNOMIAL4 or Polynomial4\n* EXPONENTIAL or Exponential\n* POWER or Power\n* LOG or Logarithmic",
            "$ref": "#/components/schemas/NxLTrendlineType"
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional and is displayed in case of error.",
            "$ref": "#/components/schemas/NxValidationError"
          },
          "qCoeff": {
            "type": "array",
            "description": "Coefficent c0..cN depending on the trendline type.",
            "items": {
              "type": "number",
              "format": "double"
            }
          },
          "qR2": {
            "type": "number",
            "description": "R2 score. Value between 0..1 that shows the correlation between the trendline and the data. Higher value means higher correlation.",
            "format": "double"
          },
          "qExpression": {
            "type": "string",
            "description": "Trendline expression"
          },
          "qElemNo": {
            "type": "integer",
            "description": "Inner Dim elem no",
            "format": "int32"
          }
        },
        "x-qlik-stability": "experimental"
      },
      "NxMiniChart": {
        "type": "object",
        "properties": {
          "qYMin": {
            "type": "number",
            "format": "double"
          },
          "qYMax": {
            "type": "number",
            "format": "double"
          },
          "qXMin": {
            "type": "number",
            "format": "double"
          },
          "qXMax": {
            "type": "number",
            "format": "double"
          },
          "qAttrExprInfo": {
            "type": "array",
            "description": "List of attribute expressions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrExprInfo"
            }
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional and is displayed in case of error.",
            "$ref": "#/components/schemas/NxValidationError"
          }
        }
      },
      "NxCellPosition": {
        "type": "object",
        "properties": {
          "qx": {
            "type": "integer",
            "description": "Position of the cell on the x-axis.",
            "format": "int32"
          },
          "qy": {
            "type": "integer",
            "description": "Position of the cell on the y-axis.",
            "format": "int32"
          }
        }
      },
      "LayoutExclude": {
        "type": "object",
        "description": "Contains JSON to be excluded from validation."
      },
      "ListObjectDef": {
        "type": "object",
        "description": "Defines the properties of a list object.\nFor more information about the definition of a list object, see _Generic object_.",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          },
          "qLibraryId": {
            "type": "string",
            "description": "Refers to a dimension stored in the library."
          },
          "qDef": {
            "type": "object",
            "description": "Refers to a dimension stored in the list object.",
            "$ref": "#/components/schemas/NxInlineDimensionDef"
          },
          "qAutoSortByState": {
            "type": "object",
            "description": "Defines the sorting by state.",
            "$ref": "#/components/schemas/NxAutoSortByStateDef"
          },
          "qFrequencyMode": {
            "type": "string",
            "description": "Defines the frequency mode. The frequency mode is used to calculate the frequency of a value in a list object.\nDefault is _NX_FREQUENCY_NONE_ .\nThis parameter is optional.\n\nOne of:\n* N or NX_FREQUENCY_NONE\n* V or NX_FREQUENCY_VALUE\n* P or NX_FREQUENCY_PERCENT\n* R or NX_FREQUENCY_RELATIVE",
            "default": "NX_FREQUENCY_NONE",
            "$ref": "#/components/schemas/NxFrequencyMode"
          },
          "qShowAlternatives": {
            "type": "boolean",
            "description": "If set to true, alternative values are allowed in _qData_ .\nIf set to false, no alternative values are displayed in _qData_ . Values are excluded instead.\nThe default value is false.\nNote that on the contrary, the _qStateCounts_ parameter counts the excluded values as alternative values.\nThis parameter is optional."
          },
          "qInitialDataFetch": {
            "type": "array",
            "description": "Fetches an initial data set.",
            "items": {
              "$ref": "#/components/schemas/NxPage"
            }
          },
          "qExpressions": {
            "type": "array",
            "description": "Lists the expressions in the list object.\nThis parameter is optional.",
            "items": {
              "$ref": "#/components/schemas/NxListObjectExpressionDef"
            }
          },
          "qDirectQuerySimplifiedView": {
            "type": "boolean",
            "description": "If set to true, reduces the set of states returned.\nSupported for Direct Query mode only.\nDefault is false.",
            "x-qlik-stability": "experimental"
          }
        },
        "x-qlik-see-also": [
          "[Create a list object](#csh-create-listObject)",
          "[Get the layout of a generic object](#csh-get-layout-generic-object)",
          "[ListObject](#definitions-ListObject)"
        ]
      },
      "NxAutoSortByStateDef": {
        "type": "object",
        "properties": {
          "qDisplayNumberOfRows": {
            "type": "integer",
            "description": "This parameter applies to list objects.\nIf the total number of values in the list object is greater than the value set in _qDisplayNumberOfRows_ , the selected lines are promoted at the top of the list object.\nIf _qDisplayNumberOfRows_ is set to a negative value or to 0, the sort by state is disabled.",
            "format": "int32"
          }
        }
      },
      "NxFrequencyMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "N",
            "description": "NX_FREQUENCY_NONE"
          },
          {
            "x-qlik-const": 1,
            "title": "V",
            "description": "NX_FREQUENCY_VALUE"
          },
          {
            "x-qlik-const": 2,
            "title": "P",
            "description": "NX_FREQUENCY_PERCENT"
          },
          {
            "x-qlik-const": 3,
            "title": "R",
            "description": "NX_FREQUENCY_RELATIVE"
          }
        ]
      },
      "NxListObjectExpressionDef": {
        "type": "object",
        "properties": {
          "qExpr": {
            "type": "string",
            "description": "Value of the expression."
          },
          "qLibraryId": {
            "type": "string",
            "description": "Refers to an expression stored in the library."
          }
        }
      },
      "ListObject": {
        "type": "object",
        "description": "Renders the properties of a list object. Is the layout for _ListObjectDef_.\nFor more information about the definition of a list object, see _Generic object_.\n<div class=note>ListObject is used by the _GetLayout Method_ to display the properties of a list object. </div>",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          },
          "qSize": {
            "type": "object",
            "description": "Defines the size of a list object.",
            "$ref": "#/components/schemas/Size"
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional and is displayed in case of error.",
            "$ref": "#/components/schemas/NxValidationError"
          },
          "qDimensionInfo": {
            "type": "object",
            "description": "Information about the dimension.",
            "$ref": "#/components/schemas/NxDimensionInfo"
          },
          "qExpressions": {
            "type": "array",
            "description": "Lists the expressions in the list object.",
            "items": {
              "$ref": "#/components/schemas/NxListObjectExpression"
            }
          },
          "qDataPages": {
            "type": "array",
            "description": "Set of data.\nIs empty if nothing has been defined in **qInitialDataFetch** in _ListObjectDef_.",
            "items": {
              "$ref": "#/components/schemas/NxDataPage"
            }
          }
        }
      },
      "NxListObjectExpression": {
        "type": "object",
        "properties": {
          "qExpr": {
            "type": "string",
            "description": "Value of the expression."
          },
          "qError": {
            "type": "object",
            "description": "Gives information on the error.\nThis parameter is optional.",
            "$ref": "#/components/schemas/NxLayoutErrors"
          }
        }
      },
      "MeasureListDef": {
        "type": "object",
        "description": "Defines the list of measures.",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of the list."
          },
          "qData": {
            "type": "object",
            "description": "Data",
            "$ref": "#/components/schemas/JsonObject"
          }
        },
        "x-qlik-see-also": [
          "[Get the list of measures in an app](#csh-list-measures-in-app)",
          "[MeasureList](#definitions-MeasureList)"
        ]
      },
      "MeasureList": {
        "type": "object",
        "description": "Lists the measures. Is the layout for _MeasureListDef_.",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Information about the list of measures.",
            "items": {
              "$ref": "#/components/schemas/NxContainerEntry"
            }
          }
        }
      },
      "MediaListDef": {
        "type": "object",
        "description": "Defines the list of media files.\n<div class=note>This struct is deprecated.</div>\n\n### Properties\n\"qMediaListDef\": {}\n_qMediaListDef_ has an empty structure. No properties need to be set.",
        "x-qlik-see-also": [
          "[MediaList](#definitions-MediaList)"
        ]
      },
      "MediaList": {
        "type": "object",
        "description": "Lists the media files. Is the layout for _MediaListDef_.\n<div class=note>This struct is deprecated.</div>",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Information about the list of media files.\nIn Qlik Sense Desktop, the media files are retrieved from:\n_%userprofile%\\Documents\\Qlik\\Sense\\Content\\Default_\nIn Qlik Sense Enterprise, the media files are retrieved from:\n&lt;installation_directory&gt;\\Qlik\\Sense\\Repository\\Content\\Default\nThe default installation directory is _ProgramData_ .",
            "items": {
              "$ref": "#/components/schemas/MediaListItem"
            }
          }
        }
      },
      "MediaListItem": {
        "type": "object",
        "description": "<div class=note>In addition, this structure can return dynamic properties.</div>",
        "properties": {
          "qUrlDef": {
            "type": "string",
            "description": "Relative path to the media file. The URL is static.\nMedia files located:\n* in the _/content/default/_ folder are outside the qvf file.\n* in the _/media/ folder_ are embedded in the qvf file."
          },
          "qUrl": {
            "type": "string",
            "description": "Relative path to the media file.\nMedia files located:\n* in the _/content/default/_ folder are outside the qvf file.\n* in the _/media/ folder_ are embedded in the qvf file."
          }
        }
      },
      "NxLibraryDimensionDef": {
        "type": "object",
        "properties": {
          "qGrouping": {
            "type": "string",
            "description": "Information about the grouping.\n\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qFieldDefs": {
            "type": "array",
            "description": "Array of dimension names.",
            "items": {
              "type": "string"
            }
          },
          "qFieldLabels": {
            "type": "array",
            "description": "Array of dimension labels.",
            "items": {
              "type": "string"
            }
          },
          "qLabelExpression": {
            "type": "string"
          },
          "qAlias": {
            "type": "string",
            "description": "Alias of the dimension."
          },
          "qScriptGenerated": {
            "type": "boolean",
            "default": false
          }
        }
      },
      "NxLibraryDimension": {
        "type": "object",
        "properties": {
          "qGrouping": {
            "type": "string",
            "description": "Information about the grouping.\n\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qFieldDefs": {
            "type": "array",
            "description": "Array of dimension names.",
            "items": {
              "type": "string"
            }
          },
          "qFieldLabels": {
            "type": "array",
            "description": "Array of dimension labels.",
            "items": {
              "type": "string"
            }
          },
          "qLabelExpression": {
            "type": "string"
          },
          "qAlias": {
            "type": "string",
            "description": "Alias of the dimension."
          },
          "qScriptGenerated": {
            "type": "boolean"
          }
        }
      },
      "NxLibraryMeasureDef": {
        "type": "object",
        "properties": {
          "qLabel": {
            "type": "string",
            "description": "Label of the measure."
          },
          "qDef": {
            "type": "string",
            "description": "Definition of the measure."
          },
          "qGrouping": {
            "type": "string",
            "description": "Used to define a cyclic group or drill-down group.\nDefault value is no grouping.\nThis parameter is optional.\n\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qExpressions": {
            "type": "array",
            "description": "Array of expressions.",
            "items": {
              "type": "string"
            }
          },
          "qActiveExpression": {
            "type": "integer",
            "description": "Index to the active expression in a measure.",
            "format": "int32"
          },
          "qLabelExpression": {
            "type": "string",
            "description": "Optional expression used for dynamic label."
          },
          "qNumFormat": {
            "type": "object",
            "description": "Format of the field.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qScriptGenerated": {
            "type": "boolean",
            "default": false
          }
        }
      },
      "NxLibraryMeasure": {
        "type": "object",
        "description": "Information about the library measure. Is the layout for _NxLibraryMeasureDef_.",
        "properties": {
          "qLabel": {
            "type": "string"
          },
          "qDef": {
            "type": "string"
          },
          "qGrouping": {
            "type": "string",
            "description": "\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qExpressions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "qActiveExpression": {
            "type": "integer",
            "format": "int32"
          },
          "qLabelExpression": {
            "type": "string"
          },
          "qNumFormat": {
            "type": "object",
            "description": "Format of the field.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qScriptGenerated": {
            "type": "boolean"
          }
        }
      },
      "SelectionObjectDef": {
        "type": "object",
        "description": "To display the current selections.\nCan be added to any generic object but is particularly meaningful when using session objects to monitor an app.\n\n### Properties\n\"qSelectionObjectDef\": {}",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          }
        },
        "x-qlik-see-also": [
          "[Get the current selections](#csh-get-current-selections)",
          "[SelectionObject](#definitions-SelectionObject)"
        ]
      },
      "SelectionObject": {
        "type": "object",
        "description": "Indicates which selections are currently applied. It gives the current selections. Is the layout for _SelectionObjectDef_.",
        "properties": {
          "qBackCount": {
            "type": "integer",
            "description": "Number of steps back.",
            "format": "int32"
          },
          "qForwardCount": {
            "type": "integer",
            "description": "Number of steps forward.",
            "format": "int32"
          },
          "qSelections": {
            "type": "array",
            "description": "Lists the fields that are selected.",
            "items": {
              "$ref": "#/components/schemas/NxCurrentSelectionItem"
            }
          },
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          }
        }
      },
      "NxCurrentSelectionItem": {
        "type": "object",
        "properties": {
          "qTotal": {
            "type": "integer",
            "description": "Number of values in the field.",
            "format": "int32"
          },
          "qIsNum": {
            "type": "boolean",
            "description": "This parameter is displayed if its value is true.\nIs set to true if the field is a numeric.\nThis parameter is optional."
          },
          "qField": {
            "type": "string",
            "description": "Name of the field that is selected."
          },
          "qLocked": {
            "type": "boolean",
            "description": "This parameter is displayed if its value is true.\nIs set to true if the field is locked.\nThis parameter is optional."
          },
          "qOneAndOnlyOne": {
            "type": "boolean",
            "description": "This parameter is displayed if its value is true.\nProperty that is set to a field. Is set to true if the field cannot be unselected.\nThis parameter is optional."
          },
          "qTextSearch": {
            "type": "string",
            "description": "Text that was used for the search. This parameter is filled when searching for a value and selecting it.\nThis parameter is optional."
          },
          "qSelectedCount": {
            "type": "integer",
            "description": "Number of values that are selected.",
            "format": "int32"
          },
          "qSelected": {
            "type": "string",
            "description": "Values that are selected."
          },
          "qRangeInfo": {
            "type": "array",
            "description": "Information about the range of selected values.\nIs empty if there is no range of selected values.",
            "items": {
              "$ref": "#/components/schemas/RangeSelectInfo"
            }
          },
          "qSortIndex": {
            "type": "integer",
            "description": "Sort index of the field. Indexing starts from 0.",
            "format": "int32"
          },
          "qStateCounts": {
            "type": "object",
            "description": "Number of values in a particular state.",
            "$ref": "#/components/schemas/NxStateCounts"
          },
          "qSelectedFieldSelectionInfo": {
            "type": "array",
            "description": "Information about the fields that are selected.",
            "items": {
              "$ref": "#/components/schemas/NxFieldSelectionInfo"
            }
          },
          "qNotSelectedFieldSelectionInfo": {
            "type": "array",
            "description": "Information about the fields that are not selected.",
            "items": {
              "$ref": "#/components/schemas/NxFieldSelectionInfo"
            }
          },
          "qSelectionThreshold": {
            "type": "integer",
            "description": "Maximum values to show in the current selections.\nThe default value is 6.",
            "format": "int32"
          },
          "qReadableName": {
            "type": "string",
            "description": "Label that, if defined, is displayed in current selections instead of the actual expression. ReadableName is only used with field-on-the-fly."
          },
          "qIsHidden": {
            "type": "boolean",
            "description": "Optional parameter. Indicates if the selection is to be hidden in the Selections bar.\nIs set to true if the current selection is hidden."
          },
          "qDimensionReferences": {
            "type": "array",
            "description": "List of dimensions in the app that refer to the data model field of an NxCurrentSelectionItem.",
            "items": {
              "$ref": "#/components/schemas/DimensionReference"
            },
            "x-qlik-stability": "experimental"
          }
        }
      },
      "NxFieldSelectionInfo": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the field."
          },
          "qFieldSelectionMode": {
            "type": "string",
            "description": "Selection mode.\n### Properties\nOne of:\n* NORMAL for a selection in normal mode.\n* AND for a selection in AND mode.\n* NOT for a selection NOT in AND mode.\nOne of:\n* NORMAL or SELECTION_MODE_NORMAL\n* AND or SELECTION_MODE_AND\n* NOT or SELECTION_MODE_NOT",
            "$ref": "#/components/schemas/NxFieldSelectionMode"
          }
        }
      },
      "NxFieldSelectionMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "NORMAL",
            "description": "SELECTION_MODE_NORMAL"
          },
          {
            "x-qlik-const": 1,
            "title": "AND",
            "description": "SELECTION_MODE_AND"
          },
          {
            "x-qlik-const": 2,
            "title": "NOT",
            "description": "SELECTION_MODE_NOT"
          }
        ]
      },
      "DimensionReference": {
        "type": "object",
        "description": "The DimensionReference structure points to a GenericDimension.",
        "properties": {
          "qId": {
            "type": "string",
            "description": "Identifier of the associated dimension."
          },
          "qLabel": {
            "type": "string",
            "description": "Text label."
          }
        },
        "x-qlik-stability": "experimental"
      },
      "StaticContentUrlDef": {
        "type": "object",
        "description": "<div class=note>In addition, this structure can contain dynamic properties.</div>",
        "properties": {
          "qUrl": {
            "type": "string",
            "description": "Relative path of the thumbnail."
          }
        }
      },
      "StaticContentUrl": {
        "type": "object",
        "description": "<div class=note>In addition, this structure can return dynamic properties.</div>",
        "properties": {
          "qUrl": {
            "type": "string",
            "description": "Relative path of the thumbnail."
          }
        }
      },
      "StringExpression": {
        "type": "object",
        "description": "### Properties\nAbbreviated syntax:\n\"qStringExpression\":\"=&lt;expression&gt;\"\nExtended object syntax:\n\"qStringExpression\":{\"qExpr\":\"=&lt;expression&gt;\"}\nWhere:\n* &lt; **expression** &gt; is a string\n\n<div class=note>The \"=\" sign in the string expression is not mandatory. Even if the \"=\" sign is not given, the expression is evaluated.</div> <div class=note>A string expression is not evaluated, if the expression is surrounded by simple quotes.</div>\nThe result of the evaluation of the expression can be of any type, as it is returned as a JSON (quoted) string.",
        "properties": {
          "qExpr": {
            "type": "string"
          }
        }
      },
      "TreeDataDef": {
        "type": "object",
        "description": "Defines the properties of a TreeData object.\nFor more information about the definition of a TreeData object, see _Generic object_.",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          },
          "qDimensions": {
            "type": "array",
            "description": "Array of dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxTreeDimensionDef"
            }
          },
          "qInterColumnSortOrder": {
            "type": "array",
            "description": "Defines the order of the dimension levels/columns in the TreeData object.\nColumn numbers are separated by a comma.\nExample: [1,0,2] means that the first level in the tree structure is dimension 1, followed by dimension 0 and dimension 2.\nThe default sort order is the order in which the dimensions and measures have been defined in the TreeDataDef.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qSuppressZero": {
            "type": "boolean",
            "description": "Removes zero values.",
            "default": false
          },
          "qSuppressMissing": {
            "type": "boolean",
            "description": "Removes missing values.",
            "default": false
          },
          "qOpenFullyExpanded": {
            "type": "boolean",
            "description": "If this property is set to true, the cells are opened expanded. The default value is false.",
            "default": false
          },
          "qPopulateMissing": {
            "type": "boolean",
            "description": "If this property is set to true, the missing symbols (if any) are replaced by 0 if the value is a numeric and by an empty string if the value is a string.\nThe default value is false.",
            "default": false
          },
          "qCalcCondition": {
            "type": "object",
            "description": "Specifies a calculation condition object.\nIf CalcCondition.Cond is not fulfilled, the TreeData is excluded from the calculation and CalcCondition.Msg is evaluated.\nBy default, there is no calculation condition.\nThis property is optional.",
            "$ref": "#/components/schemas/NxCalcCond"
          },
          "qTitle": {
            "type": "object",
            "description": "Title of the TreeData object, for example the title of a chart.",
            "$ref": "#/components/schemas/StringExpr"
          },
          "qInitialDataFetch": {
            "type": "array",
            "description": "Initial data set.\nThis property is optional.",
            "items": {
              "$ref": "#/components/schemas/NxTreeDataOption"
            }
          },
          "qExpansionState": {
            "type": "array",
            "description": "Expansion state per dimension.",
            "items": {
              "$ref": "#/components/schemas/ExpansionData"
            },
            "x-qlik-stability": "experimental"
          },
          "qValueExprs": {
            "type": "array",
            "description": "List of measures to calculate on the whole tree.",
            "items": {
              "$ref": "#/components/schemas/NxMeasure"
            }
          },
          "qContextSetExpression": {
            "type": "string",
            "description": "Set Expression valid for the whole cube. Used to limit computations to the set specified."
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxTreeDimensionDef": {
        "type": "object",
        "properties": {
          "qLibraryId": {
            "type": "string",
            "description": "Refers to a dimension stored in the library."
          },
          "qDef": {
            "type": "object",
            "description": "Refers to a dimension.",
            "$ref": "#/components/schemas/NxInlineDimensionDef"
          },
          "qValueExprs": {
            "type": "array",
            "description": "List of measures.",
            "items": {
              "$ref": "#/components/schemas/NxMeasure"
            }
          },
          "qNullSuppression": {
            "type": "boolean",
            "description": "If set to true, no null values are returned."
          },
          "qOtherTotalSpec": {
            "type": "object",
            "description": "Sets the dimension limits. Each dimension of a hypercube is configured separately.\nDefines if some values (grouped as _Others_ ) should be grouped together in the visualization.\nFor example in a pie chart all values lower than 200 could be grouped together.",
            "$ref": "#/components/schemas/OtherTotalSpecProp"
          },
          "qShowAll": {
            "type": "boolean",
            "description": "If set to true, all dimension values are shown."
          },
          "qOtherLabel": {
            "type": "object",
            "description": "This property is used when some dimension limits are set.\nLabel of the _Others_ group. The default label is _Others_ .\nExample:\n_\"qOtherLabel\":\"= &lt;label&gt;\"_\nor\n_\"qOtherLabel\":{\"qExpr\":\"= &lt;label&gt;\"}_\nWhere:\n* &lt; _label_ &gt; is the label of the _Others_ group.",
            "$ref": "#/components/schemas/StringExpr"
          },
          "qTotalLabel": {
            "type": "object",
            "description": "If this property is set, the total of the calculated values is returned.\nThe default label is _Total_ .\nExample:\n_\"qTotalLabel\":\"= &lt;label&gt;\"_\nor\n_\"qTotalLabel\":{\"qExpr\":\"= &lt;label&gt;\"}_\nWhere:\n* &lt; _label_ &gt; is the label of the _Total_ group.",
            "$ref": "#/components/schemas/StringExpr"
          },
          "qCalcCondition": {
            "type": "object",
            "description": "Specifies a calculation condition object.\nIf CalcCondition.Cond is not fulfilled, the dimension is excluded from the calculation and CalcCondition.Msg is evaluated.\nBy default, there is no calculation condition.\nThis property is optional.",
            "$ref": "#/components/schemas/NxCalcCond"
          },
          "qAttributeExpressions": {
            "type": "array",
            "description": "List of attribute expressions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrExprDef"
            }
          },
          "qAttributeDimensions": {
            "type": "array",
            "description": "List of attribute dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrDimDef"
            }
          }
        },
        "x-qlik-stability": "stable"
      },
      "TreeData": {
        "type": "object",
        "description": "Renders the properties of a TreeData object. Is the layout for TreeDataDef.\nFor more information about the definition of TreeData, see _Generic object_.\n<div class=note>To retrieve data from the TreeData object, use the method called GetHyperCubeTreeData.</div>",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the alternate state.\nDefault is current selections _$_ ."
          },
          "qNodesOnDim": {
            "type": "array",
            "description": "The total number of nodes on each dimension.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional and is displayed in case of error.",
            "$ref": "#/components/schemas/NxValidationError"
          },
          "qDimensionInfo": {
            "type": "array",
            "description": "Information on the dimension.",
            "items": {
              "$ref": "#/components/schemas/NxTreeDimensionInfo"
            }
          },
          "qEffectiveInterColumnSortOrder": {
            "type": "array",
            "description": "Defines the order of the dimenion levels/columns in the TreeData object.\nColumn numbers are separated by a comma.\nExample: [1,0,2] means that the first level in the tree structure is dimension 1, followed by dimension 0 and dimension 2.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qHasOtherValues": {
            "type": "boolean",
            "description": "True if other row exists."
          },
          "qTitle": {
            "type": "string",
            "description": "Title of the TreeData object, for example the title of a chart."
          },
          "qLastExpandedPos": {
            "type": "object",
            "description": "Position of the last expended cell.\nThis property is optional.",
            "$ref": "#/components/schemas/NxCellPosition"
          },
          "qCalcCondMsg": {
            "type": "string",
            "description": "The message displayed if calculation condition is not fulfilled."
          },
          "qTreeDataPages": {
            "type": "array",
            "description": "Set of data.\nIs empty if nothing has been defined in **qInitialDataFetch** in _TreeDataDef_.",
            "items": {
              "$ref": "#/components/schemas/NxTreeNode"
            }
          },
          "qMeasureInfo": {
            "type": "array",
            "description": "Information on the measures calculated on the whole tree.",
            "items": {
              "$ref": "#/components/schemas/NxMeasureInfo"
            }
          }
        },
        "x-qlik-stability": "stable"
      },
      "NxTreeDimensionInfo": {
        "type": "object",
        "properties": {
          "qFallbackTitle": {
            "type": "string",
            "description": "Corresponds to the label of the dimension that is selected.\nIf the label is not defined then the field name is used."
          },
          "qApprMaxGlyphCount": {
            "type": "integer",
            "description": "Length of the longest value in the field.",
            "format": "int32"
          },
          "qCardinal": {
            "type": "integer",
            "description": "Number of distinct field values.",
            "format": "int32",
            "x-qlik-deprecated": true
          },
          "qLocked": {
            "type": "boolean",
            "description": "Is set to true if the field is locked."
          },
          "qSortIndicator": {
            "type": "string",
            "description": "Sort indicator.\nThe default value is no sorting.\nThis parameter is optional.\n\nOne of:\n* N or NX_SORT_INDICATE_NONE\n* A or NX_SORT_INDICATE_ASC\n* D or NX_SORT_INDICATE_DESC",
            "$ref": "#/components/schemas/NxSortIndicatorType"
          },
          "qGroupFallbackTitles": {
            "type": "array",
            "description": "Array of dimension labels.\nContains the labels of all dimensions in a hierarchy group (for example the labels of all dimensions in a drill down group).",
            "items": {
              "type": "string"
            }
          },
          "qGroupPos": {
            "type": "integer",
            "description": "Index of the dimension that is currently in use.\n_qGroupPos_ is set to 0 if there are no hierarchical groups (drill-down groups) or cycle groups.",
            "format": "int32"
          },
          "qStateCounts": {
            "type": "object",
            "description": "Number of values in a particular state.",
            "$ref": "#/components/schemas/NxStateCounts"
          },
          "qTags": {
            "type": "array",
            "description": "Gives information on a field. For example, it can return the type of the field.\nExamples: key, text, ASCII",
            "items": {
              "type": "string"
            }
          },
          "qError": {
            "type": "object",
            "description": "This parameter is optional.\nGives information on the error.",
            "$ref": "#/components/schemas/NxValidationError"
          },
          "qDimensionType": {
            "type": "string",
            "description": "Binary format of the field.\n\nOne of:\n* D or NX_DIMENSION_TYPE_DISCRETE\n* N or NX_DIMENSION_TYPE_NUMERIC\n* T or NX_DIMENSION_TYPE_TIME",
            "$ref": "#/components/schemas/NxDimensionType"
          },
          "qReverseSort": {
            "type": "boolean",
            "description": "If set to true, it inverts the sort criteria in the field."
          },
          "qGrouping": {
            "type": "string",
            "description": "Defines the grouping.\n\nOne of:\n* N or GRP_NX_NONE\n* H or GRP_NX_HIEARCHY\n* C or GRP_NX_COLLECTION",
            "$ref": "#/components/schemas/NxGrpType"
          },
          "qIsSemantic": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a semantic."
          },
          "qNumFormat": {
            "type": "object",
            "description": "Format of the field.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qIsAutoFormat": {
            "type": "boolean",
            "description": "This parameter is set to true if _qNumFormat_ is set to _U_ (unknown). The engine guesses the type of the field based on the field's definition."
          },
          "qGroupFieldDefs": {
            "type": "array",
            "description": "Array of field names.",
            "items": {
              "type": "string"
            }
          },
          "qMin": {
            "type": "number",
            "description": "Minimum value.",
            "format": "double"
          },
          "qMax": {
            "type": "number",
            "description": "Maximum value.",
            "format": "double"
          },
          "qContinuousAxes": {
            "type": "boolean",
            "description": "Is continuous axis used."
          },
          "qIsCyclic": {
            "type": "boolean",
            "description": "Is a cyclic dimension used."
          },
          "qDerivedField": {
            "type": "boolean",
            "description": "Is derived field is used as a dimension."
          },
          "qMeasureInfo": {
            "type": "array",
            "description": "A List of measures to be calculated on this TreeDimension.",
            "items": {
              "$ref": "#/components/schemas/NxMeasureInfo"
            }
          },
          "qAttrExprInfo": {
            "type": "array",
            "description": "List of attribute expressions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrExprInfo"
            }
          },
          "qAttrDimInfo": {
            "type": "array",
            "description": "List of attribute dimensions.",
            "items": {
              "$ref": "#/components/schemas/NxAttrDimInfo"
            }
          },
          "qCalcCondMsg": {
            "type": "string",
            "description": "The message displayed if calculation condition is not fulfilled."
          },
          "qIsCalculated": {
            "type": "boolean",
            "description": "True if this is a calculated dimension.",
            "default": false
          },
          "qIsOneAndOnlyOne": {
            "type": "boolean",
            "description": "If set to true, it means that the field always has one and only one selected value."
          },
          "qCardinalities": {
            "type": "object",
            "description": "Dimension Cardinalities",
            "$ref": "#/components/schemas/NxCardinalities"
          },
          "qLibraryId": {
            "type": "string",
            "description": "Refers to a dimension stored in the library."
          },
          "qEffectiveDimensionName": {
            "type": "string",
            "description": "The expanded and stripped dimension name used internally in engine.",
            "x-qlik-stability": "experimental"
          }
        },
        "x-qlik-stability": "stable"
      },
      "UndoInfoDef": {
        "type": "object",
        "description": "Defines if an object should contain information on the number of possible undo and redo.\n\n### Properties\n\"qUndoInfoDef\": {}\nThe numbers of undos and redos are empty when an object is created. The number of possible undos is increased every time an action (for example, create a child, set some properties) on the object is performed. The number of possible redos is increased every time an undo action is performed.",
        "x-qlik-see-also": [
          "[Undo or redo an action](#csh-undo-redo)",
          "[UndoInfo](#definitions-UndoInfo)"
        ]
      },
      "UndoInfo": {
        "type": "object",
        "description": "Displays information about the number of possible undos and redos. Is the layout for _UndoInfoDef_.",
        "properties": {
          "qUndoCount": {
            "type": "integer",
            "description": "Number of possible undos.",
            "format": "int32"
          },
          "qRedoCount": {
            "type": "integer",
            "description": "Number of possible redos.",
            "format": "int32"
          }
        }
      },
      "ValueExpression": {
        "type": "object",
        "description": "### Properties\nAbbreviated syntax:\n\"qValueExpression\":\"=&lt;expression&gt;\"\nExtended object syntax:\n\"qValueExpression\":{\"qExpr\":\"=&lt;expression&gt;\"}\nWhere:\n* &lt; **expression** &gt; is a string.\n\n<div class=note>The \"=\" sign in the value expression is not mandatory. Even if the \"=\" sign is not given, the expression is evaluated.</div>\nThe expression is evaluated as a numeric.",
        "properties": {
          "qExpr": {
            "type": "string"
          }
        }
      },
      "VariableListDef": {
        "type": "object",
        "description": "Defines the list of variables in an app.",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of variables to include in the list."
          },
          "qShowReserved": {
            "type": "boolean",
            "description": "Shows the reserved variables if set to true."
          },
          "qShowConfig": {
            "type": "boolean",
            "description": "Shows the system variables if set to true."
          },
          "qData": {
            "type": "object",
            "description": "Data",
            "$ref": "#/components/schemas/JsonObject"
          },
          "qShowSession": {
            "type": "boolean",
            "description": "Shows the session variables if set to true."
          }
        },
        "x-qlik-see-also": [
          "[List all app objects](#csh-list-app-objects)",
          "[VariableList](#definitions-VariableList)"
        ]
      },
      "VariableList": {
        "type": "object",
        "description": "Lists the variables in an app. Is the layout for _VariableListDef_.",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "List of the variables.",
            "items": {
              "$ref": "#/components/schemas/NxVariableListItem"
            }
          }
        },
        "x-qlik-see-also": [
          "[List all app objects](#csh-list-app-objects)"
        ]
      },
      "NxVariableListItem": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the variable."
          },
          "qDescription": {
            "type": "string",
            "description": "Description of the variable."
          },
          "qDefinition": {
            "type": "string",
            "description": "Definition of the variable. It can be a value or an expression."
          },
          "qIsConfig": {
            "type": "boolean",
            "description": "If set to true, it means that the variable is a system variable.\nA system variable provides information about the system and is set by the engine. The content cannot be changed by the user.\nThis parameter is optional.\nThe default value is false.",
            "default": false
          },
          "qIsReserved": {
            "type": "boolean",
            "description": "If set to true, it means that the variable is reserved.\nThe default value is false.\nThis parameter is optional.\nExamples:\n* _ScriptError_ is a reserved variable, set by the engine.\n* _DayNames_ is a reserved variable, set by the user.",
            "default": false
          },
          "qMeta": {
            "type": "object",
            "description": "Information about publishing and permissions.\nThis parameter is optional.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qInfo": {
            "type": "object",
            "description": "Identifier and type of the object.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qData": {
            "type": "object",
            "description": "Data.",
            "$ref": "#/components/schemas/JsonObject"
          },
          "qIsScriptCreated": {
            "type": "boolean",
            "description": "If set to true, it means that the variable was defined via script."
          }
        },
        "x-qlik-see-also": [
          "[List all app objects](#csh-list-app-objects)",
          "[VariableList](#definitions-VariableList)"
        ]
      },
      "GenericDimensionLayout": {
        "type": "object",
        "description": "Is the layout for _GenericDimensionProperties_.",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Identifier and type of the dimension.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMeta": {
            "type": "object",
            "description": "Information about publishing and permissions.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qDim": {
            "type": "object",
            "description": "Name and label of the dimension, information about grouping.",
            "$ref": "#/components/schemas/NxLibraryDimension"
          },
          "qDimInfos": {
            "type": "array",
            "description": "Cardinal and tags related to the dimension.\nLength of the longest value in the field.",
            "items": {
              "$ref": "#/components/schemas/GenericDimensionInfo"
            }
          }
        }
      },
      "GenericDimensionInfo": {
        "type": "object",
        "properties": {
          "qApprMaxGlyphCount": {
            "type": "integer",
            "description": "Length of the longest value in the field.",
            "format": "int32"
          },
          "qCardinal": {
            "type": "integer",
            "description": "Number of distinct field values",
            "format": "int32"
          },
          "qTags": {
            "type": "array",
            "description": "Gives information on a field. For example, it can return the type of the field.\nExamples: key, text, ASCII",
            "items": {
              "type": "string"
            }
          },
          "qIsSemantic": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a semantic."
          },
          "qAndMode": {
            "type": "boolean",
            "description": "If set to true a logical AND (instead of a logical OR) is used when making selections in a field.\nThe default value is false."
          }
        }
      },
      "GenericDimensionProperties": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Identifier and type of the dimension.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qDim": {
            "type": "object",
            "description": "Definition of the dimension.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxLibraryDimensionDef"
          },
          "qMetaDef": {
            "type": "object",
            "description": "Definition of the dynamic properties.",
            "$ref": "#/components/schemas/NxMetaDef"
          }
        }
      },
      "BookmarkFieldPage": {
        "type": "object",
        "description": "Defines the range of the bookmark fields that are returned.",
        "properties": {
          "qStartIndex": {
            "type": "integer",
            "description": "The start value of the range.",
            "format": "int32"
          },
          "qEndIndex": {
            "type": "integer",
            "description": "The end value of the range.",
            "format": "int32"
          }
        }
      },
      "BookmarkStateFieldPages": {
        "type": "object",
        "properties": {
          "qStatePages": {
            "type": "array",
            "description": "Bookmark field pages for different states.",
            "items": {
              "$ref": "#/components/schemas/BookmarkFieldPageEx"
            }
          }
        }
      },
      "BookmarkFieldPageEx": {
        "type": "object",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "The name of the selected state.",
            "default": "$"
          },
          "qStartIndex": {
            "type": "integer",
            "description": "The start value of the range.",
            "format": "int32",
            "default": 0
          },
          "qEndIndex": {
            "type": "integer",
            "description": "The end value of the range.",
            "format": "int32",
            "default": 0
          }
        }
      },
      "StateFieldValues": {
        "type": "object",
        "properties": {
          "qStateName": {
            "type": "string",
            "description": "Name of the state."
          },
          "qFieldValues": {
            "type": "array",
            "description": "The field values associated with the state.",
            "items": {
              "$ref": "#/components/schemas/FieldValue"
            }
          }
        }
      },
      "GenericBookmarkLayout": {
        "type": "object",
        "description": "Is the layout for _GenericBookmarkProperties_.",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Information about the object.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMeta": {
            "type": "object",
            "description": "Information on publishing and permissions.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qBookmark": {
            "type": "object",
            "description": "Information about the bookmark.",
            "$ref": "#/components/schemas/NxBookmark"
          },
          "qFieldInfos": {
            "type": "array",
            "description": "Information about the field selections associated with the bookmark.",
            "items": {
              "$ref": "#/components/schemas/LayoutFieldInfo"
            }
          }
        }
      },
      "LayoutFieldInfo": {
        "type": "object",
        "description": "Meta data about the selection in a field.",
        "properties": {
          "qFieldName": {
            "type": "string",
            "description": "The name of the field."
          },
          "qValuesCount": {
            "type": "integer",
            "description": "Number of selected values in the field.",
            "format": "int32"
          },
          "qExcludedValuesCount": {
            "type": "integer",
            "description": "Number of excluded values in the field.",
            "format": "int32"
          }
        }
      },
      "BookmarkApplyAndVerifyResult": {
        "type": "object",
        "properties": {
          "qApplySuccess": {
            "type": "boolean",
            "description": "Apply successfully or not *"
          },
          "qWarnings": {
            "type": "array",
            "description": "Field values verfication result *",
            "items": {
              "$ref": "#/components/schemas/BookmarkFieldVerifyWarning"
            }
          },
          "qGroupStateResult": {
            "type": "object",
            "description": "Result of applying group states (if any).",
            "$ref": "#/components/schemas/ApplyGroupStatesResult"
          }
        },
        "x-qlik-stability": "experimental"
      },
      "BookmarkFieldVerifyWarning": {
        "type": "object",
        "properties": {
          "qState": {
            "type": "string",
            "description": "Alternate State *"
          },
          "qField": {
            "type": "string",
            "description": "Field Name *"
          },
          "qVerifyResult": {
            "type": "string",
            "description": "Field/values verfication result *\nDefines result of ApplyAndVerify.\nOne of:\n* NOT_VERIFIED\n* FIELD_VALUE_MATCH_ALL\n* FIELD_MISSING\n* FIELD_VALUE_MISSING\n* STATE_MISSING",
            "default": "NOT_VERIFIED",
            "$ref": "#/components/schemas/BookmarkFieldVerifyResultState"
          },
          "qMissingValues": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "x-qlik-stability": "experimental"
      },
      "BookmarkFieldVerifyResultState": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "NOT_VERIFIED"
          },
          {
            "x-qlik-const": 1,
            "title": "FIELD_VALUE_MATCH_ALL"
          },
          {
            "x-qlik-const": 2,
            "title": "FIELD_MISSING"
          },
          {
            "x-qlik-const": 3,
            "title": "FIELD_VALUE_MISSING"
          },
          {
            "x-qlik-const": 4,
            "title": "STATE_MISSING"
          }
        ]
      },
      "ApplyGroupStatesResult": {
        "type": "object",
        "description": "Result of applying GroupState to multiple cyclic groups.",
        "properties": {
          "qApplySuccess": {
            "type": "boolean",
            "description": "When true, the operation was successful."
          },
          "qWarnings": {
            "type": "array",
            "description": "Lists which states failed to be applied and why.",
            "items": {
              "$ref": "#/components/schemas/ApplyGroupStateWarning"
            }
          }
        },
        "x-qlik-stability": "experimental"
      },
      "ApplyGroupStateWarning": {
        "type": "object",
        "properties": {
          "qState": {
            "type": "object",
            "description": "Group state that could not be applied.",
            "$ref": "#/components/schemas/GroupState"
          },
          "qType": {
            "type": "string",
            "description": "Nature of the warning.\n\nOne of:\n* group_missing or GROUP_MISSING\n* group_not_applicable or GROUP_NOT_APPLICABLE\n* fielddef_missing or FIELDDEF_MISSING",
            "$ref": "#/components/schemas/ApplyGroupStateWarningType"
          }
        },
        "x-qlik-stability": "experimental"
      },
      "ApplyGroupStateWarningType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "group_missing",
            "description": "GROUP_MISSING"
          },
          {
            "x-qlik-const": 1,
            "title": "group_not_applicable",
            "description": "GROUP_NOT_APPLICABLE"
          },
          {
            "x-qlik-const": 2,
            "title": "fielddef_missing",
            "description": "FIELDDEF_MISSING"
          }
        ]
      },
      "GenericVariableLayout": {
        "type": "object",
        "description": "Is the layout for _GenericVariableProperties_.",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Identifier and type of the object.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMeta": {
            "type": "object",
            "description": "Information about publishing and permissions.\nThis parameter is optional.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qText": {
            "type": "string",
            "description": "Some text."
          },
          "qNum": {
            "type": "number",
            "description": "A value.",
            "format": "double"
          },
          "qIsScriptCreated": {
            "type": "boolean",
            "description": "If set to true, it means that the variable was defined via script."
          }
        }
      },
      "GenericVariableProperties": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Identifier and type of the object.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMetaDef": {
            "type": "object",
            "description": "Meta data.",
            "$ref": "#/components/schemas/NxMetaDef"
          },
          "qName": {
            "type": "string",
            "description": "Name of the variable.\nThe name must be unique.\nThis parameter is mandatory."
          },
          "qComment": {
            "type": "string",
            "description": "Comment related to the variable.\nThis parameter is optional."
          },
          "qNumberPresentation": {
            "type": "object",
            "description": "Defines the format of the value.\nThis parameter is optional.",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qIncludeInBookmark": {
            "type": "boolean",
            "description": "Set this property to true to update the variable when applying a bookmark. The variable value will be persisted in the bookmark.\nThe value of a variable can affect the state of the selections.\nScript variables cannot be persisted in the bookmark.\nThe default value is false.",
            "default": false
          },
          "qDefinition": {
            "type": "string",
            "description": "Definition of the variable."
          },
          "qConstraints": {
            "type": "object",
            "$ref": "#/components/schemas/GenericVariableConstraints"
          }
        }
      },
      "GenericVariableConstraints": {
        "type": "object",
        "properties": {
          "qType": {
            "type": "string",
            "$ref": "#/components/schemas/GenericVariableType"
          },
          "qValuesText": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "qValuesNum": {
            "type": "array",
            "items": {
              "type": "number",
              "format": "double"
            }
          }
        }
      },
      "GenericVariableType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "any",
            "description": "VARIABLE_TYPE_ANY"
          },
          {
            "x-qlik-const": 1,
            "title": "number",
            "description": "VARIABLE_TYPE_NUMBER"
          },
          {
            "x-qlik-const": 2,
            "title": "text",
            "description": "VARIABLE_TYPE_TEXT"
          }
        ]
      },
      "GenericMeasureLayout": {
        "type": "object",
        "description": "Is the layout for _GenericMeasureProperties_.",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Information about the object.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMeasure": {
            "type": "object",
            "description": "Information about the measure.",
            "$ref": "#/components/schemas/NxLibraryMeasure"
          },
          "qMeta": {
            "type": "object",
            "description": "Information on publishing and permissions.",
            "$ref": "#/components/schemas/NxMeta"
          }
        }
      },
      "GenericMeasureProperties": {
        "type": "object",
        "properties": {
          "qInfo": {
            "type": "object",
            "description": "Information about the measure.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxInfo"
          },
          "qMeasure": {
            "type": "object",
            "description": "Definition of the measure.\nThis parameter is mandatory.",
            "$ref": "#/components/schemas/NxLibraryMeasureDef"
          },
          "qMetaDef": {
            "type": "object",
            "description": "Definition of the dynamic properties.",
            "$ref": "#/components/schemas/NxMetaDef"
          }
        }
      },
      "FieldDescription": {
        "type": "object",
        "properties": {
          "qInternalNumber": {
            "type": "integer",
            "description": "Internal number of the field.",
            "format": "int32"
          },
          "qName": {
            "type": "string",
            "description": "Name of the field."
          },
          "qSrcTables": {
            "type": "array",
            "description": "List of table names.",
            "items": {
              "type": "string"
            }
          },
          "qIsSystem": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a system field.\nThe default value is false."
          },
          "qIsHidden": {
            "type": "boolean",
            "description": "If set to true, it means that the field is hidden.\nThe default value is false."
          },
          "qIsSemantic": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a semantic.\nThe default value is false."
          },
          "qDistinctOnly": {
            "type": "boolean",
            "description": "If set to true, only distinct field values are shown.\nThe default value is false."
          },
          "qCardinal": {
            "type": "integer",
            "description": "Number of distinct field values.",
            "format": "int32"
          },
          "qTotalCount": {
            "type": "integer",
            "description": "Total number of field values.",
            "format": "int64"
          },
          "qPossibleCount_OBSOLETE": {
            "type": "integer",
            "format": "int32"
          },
          "qHasInfo_OBSOLETE": {
            "type": "boolean"
          },
          "qIsLocked": {
            "type": "boolean",
            "description": "If set to true, it means that the field is locked.\nThe default value is false."
          },
          "qAlwaysOneSelected": {
            "type": "boolean",
            "description": "If set to true, it means that the field has one and only one selection (not 0 and not more than 1).\nIf this property is set to true, the field cannot be cleared anymore and no more selections can be performed in that field.\nThe default value is false."
          },
          "qAndMode": {
            "type": "boolean",
            "description": "If set to true a logical AND (instead of a logical OR) is used when making selections in a field.\nThe default value is false."
          },
          "qIsNumeric": {
            "type": "boolean",
            "description": "Is set to true if the value is a numeric.\nThe default value is false."
          },
          "qComment": {
            "type": "string",
            "description": "Field comment."
          },
          "qTags": {
            "type": "array",
            "description": "Gives information on a field. For example, it can return the type of the field.\nExamples: key, text, ASCII.",
            "items": {
              "type": "string"
            }
          },
          "qIsDefinitionOnly": {
            "type": "boolean",
            "description": "If set to true, it means that the field is a field on the fly.\nThe default value is false."
          },
          "qByteSize": {
            "type": "integer",
            "description": "Static RAM memory used in bytes.",
            "format": "int64"
          }
        }
      },
      "LocaleInfo": {
        "type": "object",
        "properties": {
          "qDecimalSep": {
            "type": "string",
            "description": "Decimal separator."
          },
          "qThousandSep": {
            "type": "string",
            "description": "Thousand separator."
          },
          "qListSep": {
            "type": "string",
            "description": "List separator."
          },
          "qMoneyDecimalSep": {
            "type": "string",
            "description": "Money decimal separator."
          },
          "qMoneyThousandSep": {
            "type": "string",
            "description": "Money thousand separator."
          },
          "qCurrentYear": {
            "type": "integer",
            "description": "Current year.",
            "format": "int32"
          },
          "qMoneyFmt": {
            "type": "string",
            "description": "Money format.\nExample: _#.##0,00 kr;-#.##0,00 kr_"
          },
          "qTimeFmt": {
            "type": "string",
            "description": "Time format.\nExample: _hh:mm:ss_"
          },
          "qDateFmt": {
            "type": "string",
            "description": "Date format.\nExample: _YYYY-MM-DD_"
          },
          "qTimestampFmt": {
            "type": "string",
            "description": "Time stamp format.\nExample: _YYYY-MM-DD hh:mm:ss[.fff]_"
          },
          "qCalendarStrings": {
            "type": "object",
            "description": "Information about the calendar.",
            "$ref": "#/components/schemas/CalendarStrings"
          },
          "qFirstWeekDay": {
            "type": "integer",
            "description": "First day of the week, starting from 0.\nAccording to ISO 8601, _Monday_ is the first day of the week.\n* 0 = Monday\n* 1 = Tuesday\n* ...\n* 6 = Sunday\n\nIf this property has not been set in a script, the returned value comes from the Windows operating system.",
            "format": "int32"
          },
          "qBrokenWeeks": {
            "type": "boolean",
            "description": "Is set to true if broken weeks are allowed in a year.\nAccording to ISO 8601, no broken weeks should be allowed.\nThis property is not shown if set to false.\nIf _qBrokenWeeks_ is set to true, _qReferenceDay_ is irrelevant.\nIf this property has not been set in a script, the returned value comes from the Windows operating system."
          },
          "qReferenceDay": {
            "type": "integer",
            "description": "Day in the year that is always in week 1.\nAccording to ISO 8601, January 4th should always be part of the first week of the year ( _qReferenceDay_ =4).\nRecommended values are in the range 1 and 7.\nIf this property has not been set in a script, the returned value comes from the Windows operating system.\nThis property is not relevant if there are broken weeks in the year.",
            "format": "int32"
          },
          "qFirstMonthOfYear": {
            "type": "integer",
            "description": "First month of the year, starting from 1.\nAccording to ISO 8601, _January_ is the first month of the year.\n* 1 = January\n* 2 = February\n* 12 = January\n\nIf this property has not been set in a script, the returned value comes from the Windows operating system.",
            "format": "int32"
          },
          "qCollation": {
            "type": "string",
            "description": "Locale name (following language tagging convention RFC 4646):\n_&lt; language&gt;-&lt;REGION&gt;_\nWhere:\n* _language_ is a lowercase ISO  639 language code\n* _REGION_ specifies an uppercase ISO 3166 country code.\n\nIf this property has not been set in a script, the returned value comes from the Windows operating system."
          },
          "qNumericalAbbreviation": {
            "type": "string",
            "description": "Number format.\nExample: 3:k;6:M;9:G;12:T;15:P;18:E;21:Z;24:Y;-3:m;-6:μ;-9:n;-12:p;-15:f;-18:a;-21:z;-24:y"
          }
        }
      },
      "CalendarStrings": {
        "type": "object",
        "properties": {
          "qDayNames": {
            "type": "array",
            "description": "List of short day names.",
            "items": {
              "type": "string"
            }
          },
          "qMonthNames": {
            "type": "array",
            "description": "List of short month names.",
            "items": {
              "type": "string"
            }
          },
          "qLongDayNames": {
            "type": "array",
            "description": "List of long day names.",
            "items": {
              "type": "string"
            }
          },
          "qLongMonthNames": {
            "type": "array",
            "description": "List of long month names.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "TableRecord": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the table."
          },
          "qLoose": {
            "type": "boolean",
            "description": "This property is set to true if the table is loose."
          },
          "qNoOfRows": {
            "type": "integer",
            "description": "Number of rows in the table.",
            "format": "int64"
          },
          "qFields": {
            "type": "array",
            "description": "Information about the fields in the table.",
            "items": {
              "$ref": "#/components/schemas/FieldInTableData"
            }
          },
          "qPos": {
            "type": "object",
            "description": "Information about the position of the table.",
            "$ref": "#/components/schemas/Point"
          },
          "qComment": {
            "type": "string",
            "description": "Comment related to the table."
          },
          "qIsDirectDiscovery": {
            "type": "boolean",
            "description": "If set to true, Direct Discovery is used.\nDirect Discovery fields are not loaded into memory and remain in the external database."
          },
          "qIsSynthetic": {
            "type": "boolean",
            "description": "This property is set to true if the table contains a synthetic key."
          },
          "qTableTags": {
            "type": "array",
            "description": "List of tags related to the table.",
            "items": {
              "type": "string"
            }
          },
          "qProfilingData": {
            "type": "object",
            "description": "Profiling information of the table.",
            "$ref": "#/components/schemas/TableProfilingData"
          }
        }
      },
      "FieldInTableData": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the field."
          },
          "qOriginalFields": {
            "type": "array",
            "description": "Is shown for fixed records.\n_qOriginalFieldName_ and _qName_ are identical if no field names are used in the file.\n_qOriginalFieldName_ differs from _qName_ if embedded file names are used in the file.",
            "items": {
              "type": "string"
            }
          },
          "qPresent": {
            "type": "boolean"
          },
          "qHasNull": {
            "type": "boolean",
            "description": "This property is set to true if the field contains some Null values."
          },
          "qHasWild": {
            "type": "boolean"
          },
          "qHasDuplicates": {
            "type": "boolean",
            "description": "This property is set to true if the field contains some duplicate values."
          },
          "qIsSynthetic": {
            "type": "boolean",
            "description": "This property is set to true if the field contains a synthetic key."
          },
          "qInformationDensity": {
            "type": "number",
            "description": "Number of records that have values (for example, not NULL) in the field as compared to the total number of records in the table.",
            "format": "double"
          },
          "qnNonNulls": {
            "type": "integer",
            "description": "Number of values that are non Null.",
            "format": "int64"
          },
          "qnRows": {
            "type": "integer",
            "description": "Number of rows in the field.",
            "format": "int64"
          },
          "qSubsetRatio": {
            "type": "number",
            "description": "Number of distinct values in the field (in the current table) as compared to the total number of distinct values of this field (in all tables).",
            "format": "double"
          },
          "qnTotalDistinctValues": {
            "type": "integer",
            "description": "Number of distinct values in the field.",
            "format": "int32"
          },
          "qnPresentDistinctValues": {
            "type": "integer",
            "format": "int32"
          },
          "qKeyType": {
            "type": "string",
            "description": "Tells if the field is a key field.\n\nOne of:\n* NOT_KEY\n* ANY_KEY\n* PRIMARY_KEY\n* PERFECT_KEY",
            "$ref": "#/components/schemas/KeyType"
          },
          "qComment": {
            "type": "string",
            "description": "Comment related to the field."
          },
          "qTags": {
            "type": "array",
            "description": "List of tags related to the field.",
            "items": {
              "type": "string"
            }
          },
          "qDerivedFields": {
            "type": "array",
            "description": "List of the derived fields.",
            "items": {
              "$ref": "#/components/schemas/DerivedFieldsInTableData"
            }
          },
          "qIsFieldOnTheFly": {
            "type": "boolean",
            "default": false
          },
          "qReadableName": {
            "type": "string"
          }
        }
      },
      "KeyType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "NOT_KEY"
          },
          {
            "x-qlik-const": 1,
            "title": "ANY_KEY"
          },
          {
            "x-qlik-const": 2,
            "title": "PRIMARY_KEY"
          },
          {
            "x-qlik-const": 3,
            "title": "PERFECT_KEY"
          }
        ]
      },
      "DerivedFieldsInTableData": {
        "type": "object",
        "properties": {
          "qDefinitionName": {
            "type": "string",
            "description": "Name of the derived definition."
          },
          "qTags": {
            "type": "array",
            "description": "List of tags.",
            "items": {
              "type": "string"
            }
          },
          "qActive": {
            "type": "boolean",
            "description": "Is set to true is the derived field is in use."
          }
        }
      },
      "TableProfilingData": {
        "type": "object",
        "properties": {
          "qNoOfRows": {
            "type": "integer",
            "description": "Number of rows in the table.",
            "format": "int64"
          },
          "qFieldProfiling": {
            "type": "array",
            "description": "Field values profiling info",
            "items": {
              "$ref": "#/components/schemas/FieldInTableProfilingData"
            }
          }
        }
      },
      "FieldInTableProfilingData": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the field."
          },
          "qFieldTags": {
            "type": "array",
            "description": "List of tags related to the field.",
            "items": {
              "type": "string"
            }
          },
          "qNumberFormat": {
            "type": "object",
            "$ref": "#/components/schemas/FieldAttributes"
          },
          "qDistinctValues": {
            "type": "integer",
            "description": "Number of distinct values",
            "format": "int64"
          },
          "qDistinctNumericValues": {
            "type": "integer",
            "description": "Number of distinct numeric values",
            "format": "int64"
          },
          "qDistinctTextValues": {
            "type": "integer",
            "description": "Number of distinct text values",
            "format": "int64"
          },
          "qNumericValues": {
            "type": "integer",
            "description": "Number of numeric values",
            "format": "int64"
          },
          "qNullValues": {
            "type": "integer",
            "description": "Number of null values",
            "format": "int64"
          },
          "qTextValues": {
            "type": "integer",
            "description": "Number of textual values",
            "format": "int64"
          },
          "qNegValues": {
            "type": "integer",
            "description": "Number of negative values",
            "format": "int64"
          },
          "qPosValues": {
            "type": "integer",
            "description": "Number of positive values",
            "format": "int64"
          },
          "qZeroValues": {
            "type": "integer",
            "description": "Number of zero values for numerical values",
            "format": "int64"
          },
          "qSum": {
            "type": "number",
            "description": "Sum of all numerical values. NaN otherwise.",
            "format": "double"
          },
          "qSum2": {
            "type": "number",
            "description": "Squared sum of all numerical values. NaN otherwise.",
            "format": "double"
          },
          "qAverage": {
            "type": "number",
            "description": "Average of all numerical values. NaN otherwise.",
            "format": "double"
          },
          "qMedian": {
            "type": "number",
            "description": "Median of all numerical values. NaN otherwise.",
            "format": "double"
          },
          "qStd": {
            "type": "number",
            "description": "Standard deviation of numerical values. NaN otherwise.",
            "format": "double"
          },
          "qMin": {
            "type": "number",
            "description": "Minimum value of numerical values. NaN otherwise.",
            "format": "double"
          },
          "qMax": {
            "type": "number",
            "description": "Maximum value of numerical values. NaN otherwise.",
            "format": "double"
          },
          "qSkewness": {
            "type": "number",
            "description": "Skewness of the numerical values. NaN otherwise.",
            "format": "double"
          },
          "qKurtosis": {
            "type": "number",
            "description": "Kurtosis of the numerical values. NaN otherwise.",
            "format": "double"
          },
          "qFractiles": {
            "type": "array",
            "description": "The .01, .05, .1, .25, .5, .75, .9, .95, .99 fractiles. Array of NaN otherwise.",
            "items": {
              "type": "number",
              "format": "double"
            }
          },
          "qEmptyStrings": {
            "type": "integer",
            "description": "Number of empty strings",
            "format": "int64"
          },
          "qMaxStringLen": {
            "type": "integer",
            "description": "Maximum string length of textual values. 0 otherwise.",
            "format": "int64"
          },
          "qMinStringLen": {
            "type": "integer",
            "description": "Minimum string length of textual values. 0 otherwise.",
            "format": "int64"
          },
          "qSumStringLen": {
            "type": "integer",
            "description": "Sum of all characters in strings in the field",
            "format": "int64"
          },
          "qAvgStringLen": {
            "type": "number",
            "description": "Average string length of textual values. 0 otherwise.",
            "format": "double"
          },
          "qFirstSorted": {
            "type": "string",
            "description": "For textual values the first sorted string."
          },
          "qLastSorted": {
            "type": "string",
            "description": "For textual values the last sorted string."
          },
          "qMostFrequent": {
            "type": "array",
            "description": "Three most frequent values and their frequencies",
            "items": {
              "$ref": "#/components/schemas/SymbolFrequency"
            }
          },
          "qFrequencyDistribution": {
            "type": "object",
            "description": "Frequency Distribution for numeric fields.",
            "$ref": "#/components/schemas/FrequencyDistributionData"
          },
          "qDataEvenness": {
            "type": "number",
            "description": "Data evenness aka Shannon's entropy normalized to [0,1]",
            "format": "double"
          }
        }
      },
      "SymbolFrequency": {
        "type": "object",
        "properties": {
          "qSymbol": {
            "type": "object",
            "description": "Symbol. Either string and NaN or number alone",
            "$ref": "#/components/schemas/SymbolValue"
          },
          "qFrequency": {
            "type": "integer",
            "description": "Frequency of the above symbol in the field",
            "format": "int64"
          }
        }
      },
      "SymbolValue": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "String value of the symbol. This parameter is optional and present only if Symbol is a string."
          },
          "qNumber": {
            "type": "number",
            "description": "Numeric value of the symbol. NaN otherwise.",
            "format": "double"
          }
        }
      },
      "FrequencyDistributionData": {
        "type": "object",
        "properties": {
          "qNumberOfBins": {
            "type": "integer",
            "description": "Number of bins.",
            "format": "int32"
          },
          "qBinsEdges": {
            "type": "array",
            "description": "Bins edges.",
            "items": {
              "type": "number",
              "format": "double"
            }
          },
          "qFrequencies": {
            "type": "array",
            "description": "Bins frequencies.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        }
      },
      "SourceKeyRecord": {
        "type": "object",
        "properties": {
          "qKeyFields": {
            "type": "array",
            "description": "Name of the key field.",
            "items": {
              "type": "string"
            }
          },
          "qTables": {
            "type": "array",
            "description": "Table the key belongs to.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "TableViewDlgSaveInfo": {
        "type": "object",
        "properties": {
          "qPos": {
            "type": "object",
            "description": "Information about the position of the dialog window.\nNot used in Qlik Sense.",
            "$ref": "#/components/schemas/Rect"
          },
          "qCtlInfo": {
            "type": "object",
            "description": "Set of data for internal and source view modes.",
            "$ref": "#/components/schemas/TableViewCtlSaveInfo"
          },
          "qMode": {
            "type": "integer",
            "description": "View mode to display when opening Qlik Sense data model viewer.\nOne of:\n* 0 for internal view mode.\n* 1 for source view mode.",
            "format": "int32"
          }
        }
      },
      "TableViewCtlSaveInfo": {
        "type": "object",
        "properties": {
          "qInternalView": {
            "type": "object",
            "description": "Internal view mode.",
            "$ref": "#/components/schemas/TableViewSaveInfo"
          },
          "qSourceView": {
            "type": "object",
            "description": "Source view mode.",
            "$ref": "#/components/schemas/TableViewSaveInfo"
          }
        }
      },
      "TableViewSaveInfo": {
        "type": "object",
        "properties": {
          "qTables": {
            "type": "array",
            "description": "List of the tables in the database model viewer.",
            "items": {
              "$ref": "#/components/schemas/TableViewTableWinSaveInfo"
            }
          },
          "qBroomPoints": {
            "type": "array",
            "description": "List of the broom points in the database model viewer.\nNot used in Qlik Sense.",
            "items": {
              "$ref": "#/components/schemas/TableViewBroomPointSaveInfo"
            }
          },
          "qConnectionPoints": {
            "type": "array",
            "description": "List of connection points in the database model viewer.\nNot used in Qlik Sense.",
            "items": {
              "$ref": "#/components/schemas/TableViewConnectionPointSaveInfo"
            }
          },
          "qZoomFactor": {
            "type": "number",
            "description": "Zoom factor in the database model viewer.\nThe default value is 1.0.",
            "format": "double",
            "default": 1
          }
        }
      },
      "TableViewTableWinSaveInfo": {
        "type": "object",
        "properties": {
          "qPos": {
            "type": "object",
            "description": "Information about the position of the table.",
            "$ref": "#/components/schemas/Rect"
          },
          "qCaption": {
            "type": "string",
            "description": "Table name."
          }
        }
      },
      "TableViewBroomPointSaveInfo": {
        "type": "object",
        "properties": {
          "qPos": {
            "type": "object",
            "description": "Information about the position of the broom point.",
            "$ref": "#/components/schemas/Point"
          },
          "qTable": {
            "type": "string",
            "description": "Name of the table."
          },
          "qFields": {
            "type": "array",
            "description": "List of fields in the table.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "TableViewConnectionPointSaveInfo": {
        "type": "object",
        "properties": {
          "qPos": {
            "type": "object",
            "description": "Information about the position of the connection point.",
            "$ref": "#/components/schemas/Point"
          },
          "qFields": {
            "type": "array",
            "description": "List of the fields in the table.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "EditorBreakpoint": {
        "type": "object",
        "properties": {
          "qbufferName": {
            "type": "string",
            "description": "Name of the breakpoint."
          },
          "qlineIx": {
            "type": "integer",
            "description": "Line number in the script where the breakpoint is set.",
            "format": "int32"
          },
          "qEnabled": {
            "type": "boolean",
            "description": "If set to true then the breakpoint is enabled (in use)."
          }
        }
      },
      "TextMacro": {
        "type": "object",
        "properties": {
          "qTag": {
            "type": "string",
            "description": "Name of the variable."
          },
          "qRefSeqNo": {
            "type": "integer",
            "description": "Order in which the variable was referenced during the script execution.\nThe same number sequence is used for both _qRefSeqNo_ and _qSetSeqNo_ .",
            "format": "int32"
          },
          "qSetSeqNo": {
            "type": "integer",
            "description": "Order in which the variable was updated during the script execution.\nThe same number sequence is used for both _qRefSeqNo_ and _qSetSeqNo_ .",
            "format": "int32"
          },
          "qDisplayString": {
            "type": "string",
            "description": "Variable value."
          },
          "qIsSystem": {
            "type": "boolean",
            "description": "Is set to true if the variable is a system variable.",
            "default": false
          },
          "qIsReserved": {
            "type": "boolean",
            "description": "Is set to true if the variable is a reserved variable.",
            "default": false
          }
        }
      },
      "TableRow": {
        "type": "object",
        "properties": {
          "qValue": {
            "type": "array",
            "description": "Array of field values.",
            "items": {
              "$ref": "#/components/schemas/FieldValue"
            }
          }
        }
      },
      "NxAppLayout": {
        "type": "object",
        "description": "### Qlik Sense Desktop\nIn Qlik Sense Desktop, this structure can contain dynamic properties.\n\n### Qlik Sense Enterprise\nIn Qlik Sense Enterprise, only a few dynamic properties at the app level are persisted.\nThe persisted dynamic properties are the following:\n* modifiedDate\n* published\n* publishTime\n* privileges\n* description\n* dynamicColor",
        "properties": {
          "qTitle": {
            "type": "string",
            "description": "Title of the app."
          },
          "qFileName": {
            "type": "string",
            "description": "In Qlik Sense Enterprise, this property corresponds to the app identifier (GUID).\nIn Qlik Sense Desktop, this property corresponds to the full path of the app."
          },
          "qLastReloadTime": {
            "type": "string",
            "description": "Date and time of the last reload of the app in ISO format."
          },
          "qModified": {
            "type": "boolean",
            "description": "Is set to true if the app has been updated since the last save."
          },
          "qHasScript": {
            "type": "boolean",
            "description": "Is set to true if a script is defined in the app."
          },
          "qStateNames": {
            "type": "array",
            "description": "Array of alternate states.",
            "items": {
              "type": "string"
            }
          },
          "qMeta": {
            "type": "object",
            "description": "Information on publishing and permissions.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qLocaleInfo": {
            "type": "object",
            "description": "Information about the locale.",
            "$ref": "#/components/schemas/LocaleInfo"
          },
          "qHasData": {
            "type": "boolean",
            "description": "Is set to true if the app contains data following a script reload."
          },
          "qReadOnly": {
            "type": "boolean",
            "description": "If set to true, it means that the app is read-only."
          },
          "qIsOpenedWithoutData": {
            "type": "boolean",
            "description": "If set to true, it means that the app was opened without loading its data."
          },
          "qIsSessionApp": {
            "type": "boolean",
            "description": "If set to true, the app is a Session App, i.e. not persistent."
          },
          "qProhibitBinaryLoad": {
            "type": "boolean",
            "description": "If set to true, the persisted app cannot be used in a Binary load statement in Qlik load script."
          },
          "qThumbnail": {
            "type": "object",
            "description": "App thumbnail.",
            "$ref": "#/components/schemas/StaticContentUrl"
          },
          "qIsBDILiveMode": {
            "type": "boolean",
            "description": "If set to true, the app is in BDI Direct Query Mode."
          },
          "qIsDirectQueryMode": {
            "type": "boolean",
            "description": "If set to true, the app is in Direct Query Mode."
          },
          "qUnsupportedFeatures": {
            "type": "array",
            "description": "Array of features not supported by the app.",
            "items": {
              "$ref": "#/components/schemas/NxFeature"
            }
          },
          "qUsage": {
            "type": "string",
            "description": "\nOne of:\n* ANALYTICS\n* DATA_PREPARATION\n* DATAFLOW_PREP\n* SINGLE_TABLE_PREP",
            "$ref": "#/components/schemas/UsageEnum"
          }
        }
      },
      "NxFeature": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "binningData",
            "description": "FEATURE_BINNING_DATA"
          },
          {
            "x-qlik-const": 1,
            "title": "bookmarks",
            "description": "FEATURE_BOOKMARKS"
          },
          {
            "x-qlik-const": 2,
            "title": "calculatedFields",
            "description": "FEATURE_CALCULATED_FIELDS"
          },
          {
            "x-qlik-const": 3,
            "title": "continuousData",
            "description": "FEATURE_CONTINUOUS_DATA"
          },
          {
            "x-qlik-const": 4,
            "title": "invertedSelections",
            "description": "FEATURE_INVERTED_SELECTIONS"
          },
          {
            "x-qlik-const": 5,
            "title": "rangeSelections",
            "description": "FEATURE_RANGE_SELECTIONS"
          },
          {
            "x-qlik-const": 6,
            "title": "reducingData",
            "description": "FEATURE_REDUCING_DATA"
          },
          {
            "x-qlik-const": 7,
            "title": "search",
            "description": "FEATURE_SEARCH"
          },
          {
            "x-qlik-const": 8,
            "title": "selectionCount",
            "description": "FEATURE_SELECTION_COUNT"
          },
          {
            "x-qlik-const": 9,
            "title": "selectionInsights",
            "description": "FEATURE_SELECTION_INSIGHTS"
          },
          {
            "x-qlik-const": 10,
            "title": "tableMiniChart",
            "description": "FEATURE_TABLE_MINI_CHART"
          },
          {
            "x-qlik-const": 11,
            "title": "trendlines",
            "description": "FEATURE_TRENDLINES"
          },
          {
            "x-qlik-const": 12,
            "title": "calculatedDimensions",
            "description": "FEATURE_CALCULATED_DIMENSIONS"
          },
          {
            "x-qlik-const": 13,
            "title": "includeZeroValues",
            "description": "FEATURE_INCLUDE_ZERO_VALUES"
          },
          {
            "x-qlik-const": 14,
            "title": "includeNullValues",
            "description": "FEATURE_INCLUDE_NULL_VALUES"
          },
          {
            "x-qlik-const": 15,
            "title": "filterPanePaging",
            "description": "FEATURE_FILTER_PANE_PAGING"
          },
          {
            "x-qlik-const": 16,
            "title": "filterPaneCustomSorting",
            "description": "FEATURE_FILTER_PANE_CUSTOM_SORTING"
          },
          {
            "x-qlik-const": 17,
            "title": "showFrequency",
            "description": "FEATURE_SHOW_FREQUENCY"
          },
          {
            "x-qlik-const": 18,
            "title": "limitation",
            "description": "FEATURE_LIMITATION"
          },
          {
            "x-qlik-const": 19,
            "title": "totals",
            "description": "FEATURE_TOTALS"
          }
        ]
      },
      "UsageEnum": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "ANALYTICS"
          },
          {
            "x-qlik-const": 1,
            "title": "DATA_PREPARATION"
          },
          {
            "x-qlik-const": 2,
            "title": "DATAFLOW_PREP"
          },
          {
            "x-qlik-const": 3,
            "title": "SINGLE_TABLE_PREP"
          }
        ]
      },
      "NxAppProperties": {
        "type": "object",
        "description": "### Qlik Sense Desktop\nIn Qlik Sense Desktop, this structure can contain dynamic properties.\n\n### Qlik Sense Enterprise\nIn Qlik Sense Enterprise, only a few dynamic properties at the app level are persisted.\nThe persisted dynamic properties are the following:\n* modifiedDate\n* published\n* publishTime\n* privileges\n* description\n* dynamicColor",
        "properties": {
          "qTitle": {
            "type": "string",
            "description": "App title."
          },
          "qLastReloadTime": {
            "type": "string",
            "description": "Last reload time of the app."
          },
          "qMigrationHash": {
            "type": "string",
            "description": "Internal property reserved for app migration.\nPatch version of the app.\nDo not update."
          },
          "qSavedInProductVersion": {
            "type": "string",
            "description": "Internal property reserved for app migration.\nThe app is saved in this version of the product.\nDo not update."
          },
          "qThumbnail": {
            "type": "object",
            "description": "App thumbnail.",
            "$ref": "#/components/schemas/StaticContentUrlDef"
          },
          "qHasSectionAccess": {
            "type": "boolean",
            "description": "If true the app has section access configured."
          },
          "qUsage": {
            "type": "string",
            "description": "Indicates whether the app is used for Analytics or DataPreparation\n\nOne of:\n* ANALYTICS\n* DATA_PREPARATION\n* DATAFLOW_PREP\n* SINGLE_TABLE_PREP",
            "$ref": "#/components/schemas/UsageEnum"
          }
        }
      },
      "LineageInfo": {
        "type": "object",
        "properties": {
          "qDiscriminator": {
            "type": "string",
            "description": "A string indicating the origin of the data:\n* [filename]: the data comes from a local file.\n* INLINE: the data is entered inline in the load script.\n* RESIDENT: the data comes from a resident table. The table name is listed.\n* AUTOGENERATE: the data is generated from the load script (no external table of data source).\n* Provider: the data comes from a data connection. The connector source name is listed.\n* [webfile]: the data comes from a web-based file.\n* STORE: path to QVD or TXT file where data is stored.\n* EXTENSION: the data comes from a Server Side Extension (SSE)."
          },
          "qStatement": {
            "type": "string",
            "description": "The LOAD and SELECT script statements from the data load script."
          }
        }
      },
      "NxGetObjectOptions": {
        "type": "object",
        "properties": {
          "qTypes": {
            "type": "array",
            "description": "List of object types.",
            "items": {
              "type": "string"
            }
          },
          "qIncludeSessionObjects": {
            "type": "boolean",
            "description": "Set to true to include session objects.\nThe default value is false.",
            "default": false
          },
          "qData": {
            "type": "object",
            "description": "Set of data.",
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "NxGetBookmarkOptions": {
        "type": "object",
        "properties": {
          "qTypes": {
            "type": "array",
            "description": "List of object types.",
            "items": {
              "type": "string"
            }
          },
          "qData": {
            "type": "object",
            "description": "Set of data.",
            "$ref": "#/components/schemas/JsonObject"
          },
          "qIncludePatches": {
            "type": "boolean",
            "description": "Include the bookmark patches. Patches can be very large and may make the list result unmanageable."
          }
        }
      },
      "NxRange": {
        "type": "object",
        "properties": {
          "qFrom": {
            "type": "integer",
            "description": "Position in the expression of the first character of the field name.",
            "format": "int32"
          },
          "qCount": {
            "type": "integer",
            "description": "Number of characters in the field name.",
            "format": "int32"
          }
        }
      },
      "NxMatchingFieldInfo": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the field."
          },
          "qTags": {
            "type": "array",
            "description": "List of tags.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "NxMatchingFieldMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "MATCHINGFIELDMODE_MATCH_ALL"
          },
          {
            "x-qlik-const": 1,
            "title": "MATCHINGFIELDMODE_MATCH_ONE"
          }
        ]
      },
      "AssociationScore": {
        "type": "object",
        "properties": {
          "qFieldPairName": {
            "type": "string",
            "description": "Pair of fields.\n_&lt; FieldName1&gt;_ / _&lt; FieldName2&gt;_\nWhere:\n&lt; _FieldName1_ &gt; is a field in the table 1 (defined in _qTable1_ )\n&lt; _FieldName2_ &gt; is a field in the table 2 (defined in _qTable2_ )\nIf the field is a synthetic key, the name of the field is preceded by _[Synthetic key]:_ ."
          },
          "qScoreSummary": {
            "type": "integer",
            "description": "Flag used to interpret calculated scores.\nOne of the following values or sum of values that apply:\n* 0: The cardinal ratio cannot be zero but the symbol score and the row score can be zero.\n* -1: The fields do not have the same type.\n* -2: The number of rows of the field _FieldName1_ is zero.\n* -4: The number of distinct values of the field _FieldName1_ is zero.\n* -8: The number of rows of the field _FieldName2_ is zero.\n* -16: The number of distinct values of the field _FieldName2_ is zero.\n\nExample:\nThe number of rows of the field _FieldName1_ is zero, and the number of distinct values of the field _FieldName2_ is zero, then _qScoreSummary_ is -18.",
            "format": "int32"
          },
          "qField1Scores": {
            "type": "object",
            "description": "Association information about the field _FieldName1_ defined in _qFieldPairName_ .",
            "$ref": "#/components/schemas/FieldScores"
          },
          "qField2Scores": {
            "type": "object",
            "description": "Association information about the field _FieldName2_ defined in _qFieldPairName_ .",
            "$ref": "#/components/schemas/FieldScores"
          }
        }
      },
      "FieldScores": {
        "type": "object",
        "properties": {
          "qFieldName": {
            "type": "string",
            "description": "Field name.\nOne of the field names defined in _qFieldPairName._"
          },
          "qReadableName": {
            "type": "string"
          },
          "qCardinalRatio": {
            "type": "number",
            "description": "Cardinality of a column/field divided by the number of rows in the table.\nIf the cardinal ratio is 1, it means that the column is a candidate/primary key.",
            "format": "double"
          },
          "qSymbolScore": {
            "type": "number",
            "description": "Number of distinct matches between the two fields defined in _qFieldPairName_ divided by the number of distinct values in the field _qFieldName_ .\nIf 0, it means that there are no common values between the two fields defined in _qFieldPairName_ .",
            "format": "double"
          },
          "qRowScore": {
            "type": "number",
            "description": "Number of matches between the two fields defined in _qFieldPairName_ divided by the number of values in the field _qFieldName_ .\nIf 0, it means that there are no common values between the two fields defined in _qFieldPairName_ .",
            "format": "double"
          }
        }
      },
      "ContentLibraryList": {
        "type": "object",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Information about the content library.",
            "items": {
              "$ref": "#/components/schemas/ContentLibraryListItem"
            }
          }
        }
      },
      "ContentLibraryListItem": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the library."
          },
          "qAppSpecific": {
            "type": "boolean",
            "description": "Is set to true if the library is specific to the app (not a global content library)."
          },
          "qMeta": {
            "type": "object",
            "description": "Information about publishing and permissions.",
            "$ref": "#/components/schemas/NxMeta"
          }
        }
      },
      "StaticContentList": {
        "type": "object",
        "properties": {
          "qItems": {
            "type": "array",
            "description": "Information about the list of content files.",
            "items": {
              "$ref": "#/components/schemas/StaticContentListItem"
            }
          }
        }
      },
      "StaticContentListItem": {
        "type": "object",
        "description": "<div class=note>In addition, this structure can return dynamic properties.</div>",
        "properties": {
          "qUrlDef": {
            "type": "string",
            "description": "Relative path to the content file. The URL is static.\nIn Qlik Sense Enterprise, content files located:\n* In the _/content/ &lt;content library name&gt;/_ folder are part of a global content library.\n* In the _/appcontent/_ folder are part of the app specific library.\nThe content files are never embedded in the _qvf_ file.\nIn Qlik Sense Desktop, content files located:\n* In the _/content/default/_ folder are outside the qvf file.\n* In the _/media/ folder_ are embedded in the qvf file."
          },
          "qUrl": {
            "type": "string",
            "description": "Relative path to the content file. The URL is static.\nIn Qlik Sense Enterprise, content files located:\n* In the _/content/ &lt;content library name&gt;/_ folder are part of a global content library.\n* In the _/appcontent/_ folder are part of the app specific library.\nThe content files are never embedded in the _qvf_ file.\nIn Qlik Sense Desktop, content files located:\n* In the _/content/default/_ folder are outside the qvf file.\n* In the _/media/ folder_ are embedded in the qvf file."
          }
        }
      },
      "DoReloadExResult": {
        "type": "object",
        "description": "The result and path to script log for a reload.",
        "properties": {
          "qSuccess": {
            "type": "boolean",
            "description": "The reload is successful if True."
          },
          "qScriptLogFile": {
            "type": "string",
            "description": "Path to the script log file."
          },
          "qEndedWithMemoryConstraint": {
            "type": "boolean",
            "description": "true if memory limits were exhausted during reload."
          },
          "qNbrOfLoadedRows": {
            "type": "integer",
            "description": "Number of read rows during a reload",
            "format": "int64"
          },
          "qNbrOfStoredRows": {
            "type": "integer",
            "description": "Number of stored rows from a reload",
            "format": "int64"
          },
          "qFailureData": {
            "type": "object",
            "description": "Extra information (if available) in case reload was not successful.",
            "$ref": "#/components/schemas/FailureData"
          }
        }
      },
      "FailureData": {
        "type": "object",
        "properties": {
          "qErrors": {
            "type": "array",
            "description": "Array of errors accumulated during reload.",
            "items": {
              "$ref": "#/components/schemas/ReloadError"
            }
          }
        }
      },
      "ReloadError": {
        "type": "object",
        "properties": {
          "qError": {
            "type": "string",
            "description": "Type of error."
          },
          "qDescription": {
            "type": "string",
            "description": "Description of error."
          },
          "qLine": {
            "type": "string",
            "description": "Script line text where error occurred."
          },
          "qLineNumber": {
            "type": "integer",
            "description": "Script line number where error occurred (zero-based).",
            "format": "int32"
          },
          "qCode": {
            "type": "integer",
            "description": "Error code.",
            "format": "int32"
          },
          "qTitle": {
            "type": "string",
            "description": "Enum name of the error code.\n\nOne of:\n* LOCERR_INTERNAL_ERROR\n* LOCERR_GENERIC_UNKNOWN\n* LOCERR_GENERIC_OK\n* LOCERR_GENERIC_NOT_SET\n* LOCERR_GENERIC_NOT_FOUND\n* LOCERR_GENERIC_ALREADY_EXISTS\n* LOCERR_GENERIC_INVALID_PATH\n* LOCERR_GENERIC_ACCESS_DENIED\n* LOCERR_GENERIC_OUT_OF_MEMORY\n* LOCERR_GENERIC_NOT_INITIALIZED\n* LOCERR_GENERIC_INVALID_PARAMETERS\n* LOCERR_GENERIC_EMPTY_PARAMETERS\n* LOCERR_GENERIC_INTERNAL_ERROR\n* LOCERR_GENERIC_CORRUPT_DATA\n* LOCERR_GENERIC_MEMORY_INCONSISTENCY\n* LOCERR_GENERIC_INVISIBLE_OWNER_ABORT\n* LOCERR_GENERIC_PROHIBIT_VALIDATE\n* LOCERR_GENERIC_ABORTED\n* LOCERR_GENERIC_CONNECTION_LOST\n* LOCERR_GENERIC_UNSUPPORTED_IN_PRODUCT_VERSION\n* LOCERR_GENERIC_REST_CONNECTION_FAILURE\n* LOCERR_GENERIC_MEMORY_LIMIT_REACHED\n* LOCERR_GENERIC_NOT_IMPLEMENTED\n* LOCERR_GENERIC_ENGINE_TERMINATED\n* LOCERR_GENERIC_WRITE_OPERATIONS_LIMIT_REACHED\n* LOCERR_HTTP_400\n* LOCERR_HTTP_401\n* LOCERR_HTTP_402\n* LOCERR_HTTP_403\n* LOCERR_HTTP_404\n* LOCERR_HTTP_405\n* LOCERR_HTTP_406\n* LOCERR_HTTP_407\n* LOCERR_HTTP_408\n* LOCERR_HTTP_409\n* LOCERR_HTTP_410\n* LOCERR_HTTP_411\n* LOCERR_HTTP_412\n* LOCERR_HTTP_413\n* LOCERR_HTTP_414\n* LOCERR_HTTP_415\n* LOCERR_HTTP_416\n* LOCERR_HTTP_417\n* LOCERR_HTTP_422\n* LOCERR_HTTP_423\n* LOCERR_HTTP_429\n* LOCERR_HTTP_500\n* LOCERR_HTTP_501\n* LOCERR_HTTP_502\n* LOCERR_HTTP_503\n* LOCERR_HTTP_504\n* LOCERR_HTTP_505\n* LOCERR_HTTP_509\n* LOCERR_HTTP_COULD_NOT_RESOLVE_HOST\n* LOCERR_APP_ALREADY_EXISTS\n* LOCERR_APP_INVALID_NAME\n* LOCERR_APP_ALREADY_OPEN\n* LOCERR_APP_NOT_FOUND\n* LOCERR_APP_IMPORT_FAILED\n* LOCERR_APP_SAVE_FAILED\n* LOCERR_APP_CREATE_FAILED\n* LOCERR_APP_INVALID\n* LOCERR_APP_CONNECT_FAILED\n* LOCERR_APP_ALREADY_OPEN_IN_DIFFERENT_MODE\n* LOCERR_APP_MIGRATION_COULD_NOT_CONTACT_MIGRATION_SERVICE\n* LOCERR_APP_MIGRATION_COULD_NOT_START_MIGRATION\n* LOCERR_APP_MIGRATION_FAILURE\n* LOCERR_APP_SCRIPT_MISSING\n* LOCERR_APP_EXPORT_FAILED\n* LOCERR_APP_SIZE_EXCEEDED\n* LOCERR_APP_DIRECT_QUERY_WORKLOAD_NOT_SUPPORTED\n* LOCERR_APP_NOT_OPEN\n* LOCERR_APP_EVENT_SOURCE_TIMEOUT\n* LOCERR_CONNECTION_ALREADY_EXISTS\n* LOCERR_CONNECTION_NOT_FOUND\n* LOCERR_CONNECTION_FAILED_TO_LOAD\n* LOCERR_CONNECTION_FAILED_TO_IMPORT\n* LOCERR_CONNECTION_NAME_IS_INVALID\n* LOCERR_CONNECTION_MISSING_CREDENTIALS\n* LOCERR_CONNECTOR_NO_FILE_STREAMING_SUPPORT\n* LOCERR_CONNECTOR_FILESIZE_EXCEEDED_BUFFER_SIZE\n* LOCERR_FILE_ACCESS_DENIED\n* LOCERR_FILE_NAME_INVALID\n* LOCERR_FILE_CORRUPT\n* LOCERR_FILE_NOT_FOUND\n* LOCERR_FILE_FORMAT_UNSUPPORTED\n* LOCERR_FILE_OPENED_IN_UNSUPPORTED_MODE\n* LOCERR_FILE_TABLE_NOT_FOUND\n* LOCERR_USER_ACCESS_DENIED\n* LOCERR_USER_IMPERSONATION_FAILED\n* LOCERR_SERVER_OUT_OF_SESSION_AND_USER_CALS\n* LOCERR_SERVER_OUT_OF_SESSION_CALS\n* LOCERR_SERVER_OUT_OF_USAGE_CALS\n* LOCERR_SERVER_OUT_OF_CALS\n* LOCERR_SERVER_OUT_OF_NAMED_CALS\n* LOCERR_SERVER_OFF_DUTY\n* LOCERR_SERVER_BUSY\n* LOCERR_SERVER_LICENSE_EXPIRED\n* LOCERR_SERVER_AJAX_DISABLED\n* LOCERR_SERVER_NO_TOKEN\n* LOCERR_HC_INVALID_OBJECT\n* LOCERR_HC_RESULT_TOO_LARGE\n* LOCERR_HC_INVALID_OBJECT_STATE\n* LOCERR_HC_MODAL_OBJECT_ERROR\n* LOCERR_CALC_INVALID_DEF\n* LOCERR_CALC_NOT_IN_LIB\n* LOCERR_CALC_HEAP_ERROR\n* LOCERR_CALC_TOO_LARGE\n* LOCERR_CALC_TIMEOUT\n* LOCERR_CALC_EVAL_CONDITION_FAILED\n* LOCERR_CALC_MIXED_LINKED_AGGREGATION\n* LOCERR_CALC_MISSING_LINKED\n* LOCERR_CALC_INVALID_COL_SORT\n* LOCERR_CALC_PAGES_TOO_LARGE\n* LOCERR_CALC_SEMANTIC_FIELD_NOT_ALLOWED\n* LOCERR_CALC_VALIDATION_STATE_INVALID\n* LOCERR_CALC_PIVOT_DIMENSIONS_ALREADY_EXISTS\n* LOCERR_CALC_MISSING_LINKED_FIELD\n* LOCERR_CALC_NOT_CALCULATED\n* LOCERR_LAYOUT_EXTENDS_INVALID_ID\n* LOCERR_LAYOUT_LINKED_OBJECT_NOT_FOUND\n* LOCERR_LAYOUT_LINKED_OBJECT_INVALID\n* LOCERR_PERSISTENCE_WRITE_FAILED\n* LOCERR_PERSISTENCE_READ_FAILED\n* LOCERR_PERSISTENCE_DELETE_FAILED\n* LOCERR_PERSISTENCE_NOT_FOUND\n* LOCERR_PERSISTENCE_UNSUPPORTED_VERSION\n* LOCERR_PERSISTENCE_MIGRATION_FAILED_READ_ONLY\n* LOCERR_PERSISTENCE_MIGRATION_CANCELLED\n* LOCERR_PERSISTENCE_MIGRATION_BACKUP_FAILED\n* LOCERR_PERSISTENCE_DISK_FULL\n* LOCERR_PERSISTENCE_NOT_SUPPORTED_FOR_SESSION_APP\n* LOCERR_PERSISTENCE_MOVE_FAILED\n* LOCERR_PERSISTENCE_OBJECT_LOCKED\n* LOCERR_PERSISTENCE_ENCRYPTION_KEY_MIGRATION_ONGOING\n* LOCERR_PERSISTENCE_SYNC_SET_CHUNK_INVALID_PARAMETERS\n* LOCERR_PERSISTENCE_SYNC_GET_CHUNK_INVALID_PARAMETERS\n* LOCERR_SCRIPT_DATASOURCE_ACCESS_DENIED\n* LOCERR_RELOAD_IN_PROGRESS\n* LOCERR_RELOAD_TABLE_X_NOT_FOUND\n* LOCERR_RELOAD_UNKNOWN_STATEMENT\n* LOCERR_RELOAD_EXPECTED_SOMETHING_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_NOTHING_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_ONE_OF_1_TOKENS_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_ONE_OF_2_TOKENS_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_ONE_OF_3_TOKENS_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_ONE_OF_4_TOKENS_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_ONE_OF_5_TOKENS_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_ONE_OF_6_TOKENS_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_ONE_OF_7_TOKENS_FOUND_UNKNOWN\n* LOCERR_RELOAD_EXPECTED_ONE_OF_8_OR_MORE_TOKENS_FOUND_UNKNOWN\n* LOCERR_RELOAD_FIELD_X_NOT_FOUND\n* LOCERR_RELOAD_MAPPING_TABLE_X_NOT_FOUND\n* LOCERR_RELOAD_LIB_CONNECTION_X_NOT_FOUND\n* LOCERR_RELOAD_NAME_ALREADY_TAKEN\n* LOCERR_RELOAD_WRONG_FILE_FORMAT_DIF\n* LOCERR_RELOAD_WRONG_FILE_FORMAT_BIFF\n* LOCERR_RELOAD_WRONG_FILE_FORMAT_ENCRYPTED\n* LOCERR_RELOAD_OPEN_FILE_ERROR\n* LOCERR_RELOAD_AUTO_GENERATE_COUNT\n* LOCERR_RELOAD_PE_ILLEGAL_PREFIX_COMB\n* LOCERR_RELOAD_MATCHING_CONTROL_STATEMENT_ERROR\n* LOCERR_RELOAD_MATCHING_LIBPATH_X_NOT_FOUND\n* LOCERR_RELOAD_MATCHING_LIBPATH_X_INVALID\n* LOCERR_RELOAD_MATCHING_LIBPATH_X_OUTSIDE\n* LOCERR_RELOAD_NO_QUALIFIED_PATH_FOR_FILE\n* LOCERR_RELOAD_MODE_STATEMENT_ONLY_FOR_LIB_PATHS\n* LOCERR_RELOAD_INCONSISTENT_USE_OF_SEMANTIC_FIELDS\n* LOCERR_RELOAD_NO_OPEN_DATABASE\n* LOCERR_RELOAD_AGGREGATION_REQUIRED_BY_GROUP_BY\n* LOCERR_RELOAD_CONNECT_MUST_USE_LIB_PREFIX_IN_THIS_MODE\n* LOCERR_RELOAD_ODBC_CONNECT_FAILED\n* LOCERR_RELOAD_OLEDB_CONNECT_FAILED\n* LOCERR_RELOAD_CUSTOM_CONNECT_FAILED\n* LOCERR_RELOAD_ODBC_READ_FAILED\n* LOCERR_RELOAD_OLEDB_READ_FAILED\n* LOCERR_RELOAD_CUSTOM_READ_FAILED\n* LOCERR_RELOAD_BINARY_LOAD_PROHIBITED\n* LOCERR_RELOAD_CONNECTOR_START_FAILED\n* LOCERR_RELOAD_CONNECTOR_NOT_RESPONDING\n* LOCERR_RELOAD_CONNECTOR_REPLY_ERROR\n* LOCERR_RELOAD_CONNECTOR_CONNECT_ERROR\n* LOCERR_RELOAD_CONNECTOR_NOT_FOUND_ERROR\n* LOCERR_RELOAD_INPUT_FIELD_WITH_DUPLICATE_KEYS\n* LOCERR_RELOAD_CONCATENATE_LOAD_NO_PREVIOUS_TABLE\n* LOCERR_RELOAD_WRONG_FILE_FORMAT_QVD\n* LOCERR_RELOAD_ACTION_BLOCKED_ENTITLEMENT\n* LOCERR_PERSONAL_NEW_VERSION_AVAILABLE\n* LOCERR_PERSONAL_VERSION_EXPIRED\n* LOCERR_PERSONAL_SECTION_ACCESS_DETECTED\n* LOCERR_PERSONAL_APP_DELETION_FAILED\n* LOCERR_USER_AUTHENTICATION_FAILURE\n* LOCERR_EXPORT_OUT_OF_MEMORY\n* LOCERR_EXPORT_NO_DATA\n* LOCERR_SYNC_INVALID_OFFSET\n* LOCERR_SEARCH_TIMEOUT\n* LOCERR_DIRECT_DISCOVERY_LINKED_EXPRESSION_FAIL\n* LOCERR_DIRECT_DISCOVERY_ROWCOUNT_OVERFLOW\n* LOCERR_DIRECT_DISCOVERY_EMPTY_RESULT\n* LOCERR_DIRECT_DISCOVERY_DB_CONNECTION_FAILED\n* LOCERR_DIRECT_DISCOVERY_MEASURE_NOT_ALLOWED\n* LOCERR_DIRECT_DISCOVERY_DETAIL_NOT_ALLOWED\n* LOCERR_DIRECT_DISCOVERY_NOT_SYNTH_CIRCULAR_ALLOWED\n* LOCERR_DIRECT_DISCOVERY_ONLY_ONE_DD_TABLE_ALLOWED\n* LOCERR_DIRECT_DISCOVERY_DB_AUTHORIZATION_FAILED\n* LOCERR_SMART_LOAD_TABLE_NOT_FOUND\n* LOCERR_SMART_LOAD_TABLE_DUPLICATED\n* LOCERR_VARIABLE_NO_NAME\n* LOCERR_VARIABLE_DUPLICATE_NAME\n* LOCERR_VARIABLE_INCONSISTENCY\n* LOCERR_VARIABLE_CONSTRAINT_INCONSISTENCY\n* LOCERR_VARIABLE_CONSTRAINT_FAILED\n* LOCERR_MEDIA_LIBRARY_LIST_FAILED\n* LOCERR_MEDIA_LIBRARY_CONTENT_FAILED\n* LOCERR_MEDIA_BUNDLING_FAILED\n* LOCERR_MEDIA_UNBUNDLING_FAILED\n* LOCERR_MEDIA_LIBRARY_NOT_FOUND\n* LOCERR_FEATURE_DISABLED\n* LOCERR_LOAD_TOO_MANY_FIELDS\n* LOCERR_LOAD_TOO_MANY_TABLES\n* LOCERR_JSON_RPC_INVALID_REQUEST\n* LOCERR_JSON_RPC_METHOD_NOT_FOUND\n* LOCERR_JSON_RPC_INVALID_PARAMETERS\n* LOCERR_JSON_RPC_INTERNAL_ERROR\n* LOCERR_JSON_RPC_RESPONSE_TOO_LARGE\n* LOCERR_JSON_RPC_PARSE_ERROR\n* LOCERR_MQ_SOCKET_CONNECT_FAILURE\n* LOCERR_MQ_SOCKET_OPEN_FAILURE\n* LOCERR_MQ_PROTOCOL_NO_RESPONE\n* LOCERR_MQ_PROTOCOL_LIBRARY_EXCEPTION\n* LOCERR_MQ_PROTOCOL_CONNECTION_CLOSED\n* LOCERR_MQ_PROTOCOL_CHANNEL_CLOSED\n* LOCERR_MQ_PROTOCOL_UNKNOWN_ERROR\n* LOCERR_MQ_PROTOCOL_INVALID_STATUS\n* LOCERR_EXTENGINE_GRPC_STATUS_OK\n* LOCERR_EXTENGINE_GRPC_STATUS_CANCELLED\n* LOCERR_EXTENGINE_GRPC_STATUS_UNKNOWN\n* LOCERR_EXTENGINE_GRPC_STATUS_INVALID_ARGUMENT\n* LOCERR_EXTENGINE_GRPC_STATUS_DEADLINE_EXCEEDED\n* LOCERR_EXTENGINE_GRPC_STATUS_NOT_FOUND\n* LOCERR_EXTENGINE_GRPC_STATUS_ALREADY_EXISTS\n* LOCERR_EXTENGINE_GRPC_STATUS_PERMISSION_DENIED\n* LOCERR_EXTENGINE_GRPC_STATUS_RESOURCE_EXHAUSTED\n* LOCERR_EXTENGINE_GRPC_STATUS_FAILED_PRECONDITION\n* LOCERR_EXTENGINE_GRPC_STATUS_ABORTED\n* LOCERR_EXTENGINE_GRPC_STATUS_OUT_OF_RANGE\n* LOCERR_EXTENGINE_GRPC_STATUS_UNIMPLEMENTED\n* LOCERR_EXTENGINE_GRPC_STATUS_INTERNAL\n* LOCERR_EXTENGINE_GRPC_STATUS_UNAVAILABLE\n* LOCERR_EXTENGINE_GRPC_STATUS_DATA_LOSS\n* LOCERR_EXTENGINE_GRPC_STATUS_UNAUTHENTICATED\n* LOCERR_LXW_INVALID_OBJ\n* LOCERR_LXW_INVALID_FILE\n* LOCERR_LXW_INVALID_SHEET\n* LOCERR_LXW_INVALID_EXPORT_RANGE\n* LOCERR_LXW_ERROR\n* LOCERR_LXW_ERROR_MEMORY_MALLOC_FAILED\n* LOCERR_LXW_ERROR_CREATING_XLSX_FILE\n* LOCERR_LXW_ERROR_CREATING_TMPFILE\n* LOCERR_LXW_ERROR_ZIP_FILE_OPERATION\n* LOCERR_LXW_ERROR_ZIP_FILE_ADD\n* LOCERR_LXW_ERROR_ZIP_CLOSE\n* LOCERR_LXW_ERROR_NULL_PARAMETER_IGNORED\n* LOCERR_LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED\n* LOCERR_LXW_ERROR_255_STRING_LENGTH_EXCEEDED\n* LOCERR_LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND\n* LOCERR_LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE\n* LOCERR_LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED\n* LOCERR_BDI_STATUS_OK\n* LOCERR_BDI_GENERIC_ERROR_NOT_TRANSLATED\n* LOCERR_TRENDLINE_INVALID_DEF\n* LOCERR_TRENDLINE_INVALID_MATH_ERROR\n* LOCERR_CURL_UNSUPPORTED_PROTOCOL\n* LOCERR_CURL_COULDNT_RESOLVE_PROXY\n* LOCERR_CURL_COULDNT_CONNECT\n* LOCERR_CURL_REMOTE_ACCESS_DENIED\n* LOCERR_CURL_FTP_ACCEPT_FAILED\n* LOCERR_CURL_FTP_ACCEPT_TIMEOUT\n* LOCERR_CURL_FTP_CANT_GET_HOST\n* LOCERR_CURL_PARTIAL_FILE\n* LOCERR_CURL_QUOTE_ERROR\n* LOCERR_CURL_WRITE_ERROR\n* LOCERR_CURL_UPLOAD_FAILED\n* LOCERR_CURL_OUT_OF_MEMORY\n* LOCERR_CURL_OPERATION_TIMEDOUT\n* LOCERR_CURL_FTP_COULDNT_USE_REST\n* LOCERR_CURL_HTTP_POST_ERROR\n* LOCERR_CURL_SSL_CONNECT_ERROR\n* LOCERR_CURL_FILE_COULDNT_READ_FILE\n* LOCERR_CURL_LDAP_CANNOT_BIND\n* LOCERR_CURL_LDAP_SEARCH_FAILED\n* LOCERR_CURL_TOO_MANY_REDIRECTS\n* LOCERR_CURL_PEER_FAILED_VERIFICATION\n* LOCERR_CURL_GOT_NOTHING\n* LOCERR_CURL_SSL_ENGINE_NOTFOUND\n* LOCERR_CURL_SSL_ENGINE_SETFAILED\n* LOCERR_CURL_SSL_CERTPROBLEM\n* LOCERR_CURL_SSL_CIPHER\n* LOCERR_CURL_SSL_CACERT\n* LOCERR_CURL_BAD_CONTENT_ENCODING\n* LOCERR_CURL_LDAP_INVALID_URL\n* LOCERR_CURL_USE_SSL_FAILED\n* LOCERR_CURL_SSL_ENGINE_INITFAILED\n* LOCERR_CURL_LOGIN_DENIED\n* LOCERR_CURL_TFTP_NOTFOUND\n* LOCERR_CURL_TFTP_ILLEGAL\n* LOCERR_CURL_SSH\n* LOCERR_SETEXPRESSION_TOO_LARGE\n* LOCERR_RELOAD_MERGE_LOAD_ERROR\n* LOCERR_WIN_FTP_DROPPED\n* LOCERR_WIN_FTP_NO_PASSIVE_MODE\n* LOCERR_WIN_HTTP_DOWNLEVEL_SERVER\n* LOCERR_WIN_HTTP_INVALID_SERVER_RESPONSE\n* LOCERR_WIN_HTTP_REDIRECT_NEEDS_CONFIRMATION\n* LOCERR_WIN_INTERNET_FORCE_RETRY\n* LOCERR_WIN_INTERNET_CANNOT_CONNECT\n* LOCERR_WIN_INTERNET_CONNECTION_ABORTED\n* LOCERR_WIN_INTERNET_CONNECTION_RESET\n* LOCERR_WIN_INTERNET_DISCONNECTED\n* LOCERR_WIN_INTERNET_INCORRECT_FORMAT\n* LOCERR_WIN_INTERNET_INVALID_CA\n* LOCERR_WIN_INTERNET_INVALID_OPERATION\n* LOCERR_WIN_INTERNET_INVALID_URL\n* LOCERR_WIN_INTERNET_ITEM_NOT_FOUND\n* LOCERR_WIN_INTERNET_LOGIN_FAILURE\n* LOCERR_WIN_INTERNET_NAME_NOT_RESOLVED\n* LOCERR_WIN_INTERNET_NEED_UI\n* LOCERR_WIN_INTERNET_SEC_CERT_CN_INVALID\n* LOCERR_WIN_INTERNET_SEC_CERT_DATE_INVALID\n* LOCERR_WIN_INTERNET_SEC_CERT_ERRORS\n* LOCERR_WIN_INTERNET_SEC_INVALID_CERT\n* LOCERR_WIN_INTERNET_SERVER_UNREACHABLE\n* LOCERR_BM_RESULT_TOO_LARGE",
            "$ref": "#/components/schemas/NxLocalizedErrorCode"
          }
        }
      },
      "DoReloadExParams": {
        "type": "object",
        "description": "Parameters for a reload.",
        "properties": {
          "qMode": {
            "type": "integer",
            "description": "0: for default mode.\n1: for ABEND; the reload of the script ends if an error occurs.\n2: for ignore; the reload of the script continues even if an error is detected in the script.",
            "format": "int32",
            "default": 0
          },
          "qPartial": {
            "type": "boolean",
            "description": "Set to true for partial reload.\nThe default value is false.",
            "default": false
          },
          "qDebug": {
            "type": "boolean",
            "description": "Set to true to debug reload.\nThe default value is false.",
            "default": false
          },
          "qReloadId": {
            "type": "string",
            "description": "Optional reload ID.\nID will be automatically generated if not set."
          },
          "qSkipStore": {
            "type": "boolean",
            "description": "Set to true to skip Store statements.\nThe default value is false.",
            "default": false
          },
          "qRowLimit": {
            "type": "integer",
            "description": "If greater than or equal 0, defines max number of rows loaded from a data source.",
            "format": "int64",
            "default": -1
          }
        }
      },
      "NxDownloadInfo": {
        "type": "object",
        "properties": {
          "qUrl": {
            "type": "string",
            "description": "URL to download the reduced app on."
          },
          "qFileSize": {
            "type": "integer",
            "description": "The filesize of the reduced app.",
            "format": "int32",
            "default": -1
          }
        }
      },
      "NxDownloadOptions": {
        "type": "object",
        "properties": {
          "qBookmarkId": {
            "type": "string",
            "description": "Bookmark Id to apply before reducing the application."
          },
          "qExpires": {
            "type": "integer",
            "description": "Time in seconds for how long the download link is valid.",
            "format": "int32",
            "default": 3600
          },
          "qServeOnce": {
            "type": "boolean",
            "default": false
          }
        }
      },
      "ScriptSyntaxError": {
        "type": "object",
        "properties": {
          "qErrLen": {
            "type": "integer",
            "description": "Length of the word where the error is located.",
            "format": "int32",
            "default": 0
          },
          "qTabIx": {
            "type": "integer",
            "description": "Number of the faulty section.",
            "format": "int32",
            "default": 0
          },
          "qLineInTab": {
            "type": "integer",
            "description": "Line number in the section where the error is located.",
            "format": "int32",
            "default": 0
          },
          "qColInLine": {
            "type": "integer",
            "description": "Position of the erroneous text from the beginning of the line.",
            "format": "int32",
            "default": 0
          },
          "qTextPos": {
            "type": "integer",
            "description": "Position of the erroneous text from the beginning of the script.",
            "format": "int32",
            "default": 0
          },
          "qSecondaryFailure": {
            "type": "boolean",
            "description": "The default value is false."
          }
        }
      },
      "Connection": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "string",
            "description": "Identifier of the connection.\nIs generated by the engine and is unique."
          },
          "qName": {
            "type": "string",
            "description": "Name of the connection.\nThis parameter is mandatory and must be set when creating or modifying a connection."
          },
          "qConnectionString": {
            "type": "string",
            "description": "One of:\n* ODBC CONNECT TO [&lt;provider name&gt;]\n* OLEDB CONNECT TO [&lt;provider name&gt;]\n* CUSTOM CONNECT TO [&lt;provider name&gt;]\n* \"&lt;local absolute or relative path, UNC path&gt;\"\n* \"&lt;URL&gt;\"\n\nConnection string.\nThis parameter is mandatory and must be set when creating or modifying a connection."
          },
          "qType": {
            "type": "string",
            "description": "One of:\n* ODBC\n* OLEDB\n* &lt;Name of the custom connection file&gt;\n* folder\n* internet\n\nType of the connection.\nThis parameter is mandatory and must be set when creating or modifying a connection.\nFor ODBC, OLEDB and custom connections, the engine checks that the connection type matches the connection string.\nThe type is not case sensitive."
          },
          "qUserName": {
            "type": "string",
            "description": "Name of the user who creates the connection.\nThis parameter is optional; it is only used for OLEDB, ODBC and CUSTOM connections.\nA call to _GetConnection Method_ does not return the user name."
          },
          "qPassword": {
            "type": "string",
            "description": "Password of the user who creates the connection.\nThis parameter is optional; it is only used for OLEDB, ODBC and CUSTOM connections.\nA call to _GetConnection Method_ does not return the password."
          },
          "qModifiedDate": {
            "type": "string",
            "description": "Is generated by the engine.\nCreation date of the connection or last modification date of the connection."
          },
          "qMeta": {
            "type": "object",
            "description": "Information about the connection.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qLogOn": {
            "type": "string",
            "description": "Select which user credentials to use to connect to the source.\n* LOG_ON_SERVICE_USER: Disables\n* LOG_ON_CURRENT_USER: Enables\n\nOne of:\n* LOG_ON_SERVICE_USER\n* LOG_ON_CURRENT_USER",
            "$ref": "#/components/schemas/LogOnType"
          }
        }
      },
      "LogOnType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "LOG_ON_SERVICE_USER"
          },
          {
            "x-qlik-const": 1,
            "title": "LOG_ON_CURRENT_USER"
          }
        ]
      },
      "DatabaseInfo": {
        "type": "object",
        "properties": {
          "qDBMSName": {
            "type": "string",
            "description": "Name of the product accessed by the provider."
          },
          "qDBUsage": {
            "type": "boolean",
            "description": "If set to true, it means that the data source contains some databases."
          },
          "qOwnerUsage": {
            "type": "boolean",
            "description": "If set to true, it means that the data source contains some owners."
          },
          "qDBSeparator": {
            "type": "string",
            "description": "Character string used after the database name.\nExample with separator \" **.** \":\nFROM LinkedTablesData.dbo.Months\nWhere:\n* **LinkedTablesData** is the database name\n* **dbo** is the owner name\n* **Months** is the table name"
          },
          "qOwnerSeparator": {
            "type": "string",
            "description": "Character string used after the owner name.\nExample with separator \" **.** \":\nFROM LinkedTablesData.dbo.Months\nWhere:\n* **LinkedTablesData** is the database name\n* **dbo** is the owner name\n* **Months** is the table name"
          },
          "qDBFirst": {
            "type": "boolean",
            "description": "If set to true, it means that the database is displayed first, before the owners and tables."
          },
          "qQuotePreffix": {
            "type": "string",
            "description": "Prefix used with field, database or owner names that contain special characters or keywords."
          },
          "qQuoteSuffix": {
            "type": "string",
            "description": "Suffix used with field, database or owner names that contain special characters or keywords."
          },
          "qSpecialChars": {
            "type": "string",
            "description": "List of the special characters."
          },
          "qDefaultDatabase": {
            "type": "string",
            "description": "Name of the default database."
          },
          "qKeywords": {
            "type": "array",
            "description": "List of the script keywords.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "Database": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the database."
          },
          "qIsDefault": {
            "type": "boolean",
            "description": "Is set to true if the database is set by default."
          }
        }
      },
      "DatabaseOwner": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the owner."
          }
        }
      },
      "DataTable": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the table."
          },
          "qType": {
            "type": "string",
            "description": "Type of the table.\nFor example: Table or View."
          }
        }
      },
      "DataField": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the field."
          },
          "qIsKey": {
            "type": "boolean",
            "description": "Is set to true if the field is a primary key.",
            "default": false
          },
          "qOriginalFieldName": {
            "type": "string",
            "description": "Is shown for fixed records.\n_qOriginalFieldName_ and _qName_ are identical if no field names are used in the file.\n_qOriginalFieldName_ differs from _qName_ if embedded file names are used in the file."
          }
        }
      },
      "DataRecord": {
        "type": "object",
        "properties": {
          "qValues": {
            "type": "array",
            "description": "List of values inside the table.\nThe first values (in _result/qPreview/0/qValues_ ) correspond to the field names in the table.\nThe following values (from _result/qPreview/1/qValues_ ) are the values of the fields in the table.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "FilterInfo": {
        "type": "object",
        "properties": {
          "qType": {
            "type": "string",
            "description": "\nOne of:\n* NONE or FILTER_TYPE_NONE\n* RAW or FILTER_TYPE_RAW",
            "$ref": "#/components/schemas/FilterType"
          },
          "qWherePredicate": {
            "type": "string"
          }
        }
      },
      "FilterType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "NONE",
            "description": "FILTER_TYPE_NONE"
          },
          {
            "x-qlik-const": 1,
            "title": "RAW",
            "description": "FILTER_TYPE_RAW"
          }
        ]
      },
      "FolderItem": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the folder item."
          },
          "qType": {
            "type": "string",
            "description": "Type of the folder item.\n\nOne of:\n* FOLDER or FOLDER_ITEM_FOLDER\n* FILE or FOLDER_ITEM_FILE\n* OTHER or FOLDER_ITEM_OTHER",
            "$ref": "#/components/schemas/FolderItemType"
          }
        }
      },
      "FolderItemType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "FOLDER",
            "description": "FOLDER_ITEM_FOLDER"
          },
          {
            "x-qlik-const": 1,
            "title": "FILE",
            "description": "FOLDER_ITEM_FILE"
          },
          {
            "x-qlik-const": 2,
            "title": "OTHER",
            "description": "FOLDER_ITEM_OTHER"
          }
        ]
      },
      "FileDataFormat": {
        "type": "object",
        "description": "### FileType\nRecognized file formats are:\n* _CSV_ for Delimited\n* _FIX_ for Fixed Record\n* _DIF_ for Data Interchange Format\n* _EXCEL_BIFF_ for Microsoft Excel (XLS)\n* _EXCEL_OOXML_ for Microsoft Excel (XLSX)\n* _HTML_ for HTML\n* _QVD_ for QVD file\n* _XML_ for XML\n* _QVX_ for QVX file\n* _JSON_ for JSON format\n* _KML_ for KML file\n* _PARQUET_ for PARQUET file",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Type of the file.\n\nOne of:\n* CSV or FILE_TYPE_CSV\n* FIX or FILE_TYPE_FIX\n* DIF or FILE_TYPE_DIF\n* EXCEL_BIFF or FILE_TYPE_EXCEL_BIFF\n* EXCEL_OOXML or FILE_TYPE_EXCEL_OOXML\n* HTML or FILE_TYPE_HTML\n* QVD or FILE_TYPE_QVD\n* XML or FILE_TYPE_XML\n* QVX or FILE_TYPE_QVX\n* JSON or FILE_TYPE_JSON\n* KML or FILE_TYPE_KML\n* PARQUET or FILE_TYPE_PARQUET",
            "$ref": "#/components/schemas/FileType"
          },
          "qLabel": {
            "type": "string",
            "description": "One of:\n* Embedded labels (field names are present in the file)\n* No labels\n* Explicit labels (for DIFfiles)"
          },
          "qQuote": {
            "type": "string",
            "description": "One of:\n* None (no quotes)\n* MSQ (Modern Style Quoting)\n* Standard (quotes \" \" or ' ' can be used, but only if they are the first and last non blank characters of a field value)\n\nThis property is used for delimited files."
          },
          "qComment": {
            "type": "string",
            "description": "String that marks the beginning of the comment line.\nExample: “#” or “//”\nThe engine ignores the commented lines during the data load.\nThis property is only used for delimited files."
          },
          "qDelimiter": {
            "type": "object",
            "description": "Information about the delimiter.\nThis property is used for delimited files.",
            "$ref": "#/components/schemas/DelimiterInfo"
          },
          "qCodePage": {
            "type": "integer",
            "description": "Character set used in the file.",
            "format": "int32"
          },
          "qHeaderSize": {
            "type": "integer",
            "description": "Size of the header.\nExample: If the header size is 2, the first two rows in the file are considered as header and not as data. The header can contain the field names.",
            "format": "int32"
          },
          "qRecordSize": {
            "type": "integer",
            "description": "Record length.\nEach record (row of data) contains a number of columns with a fixed field size.\nThis property is used for fixed record data files.",
            "format": "int32"
          },
          "qTabSize": {
            "type": "integer",
            "description": "Number of spaces that one tab character represents in the table file.\nThis property is used for fixed record data files.",
            "format": "int32"
          },
          "qIgnoreEOF": {
            "type": "boolean",
            "description": "Is set to true, the end-of-file character is not taken into account during reload.\nThis property is used for delimited files and fixed record data files."
          },
          "qFixedWidthDelimiters": {
            "type": "string",
            "description": "Positions of the field breaks in the table.\nThis property is used for fixed record data files."
          }
        }
      },
      "FileType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "CSV",
            "description": "FILE_TYPE_CSV"
          },
          {
            "x-qlik-const": 1,
            "title": "FIX",
            "description": "FILE_TYPE_FIX"
          },
          {
            "x-qlik-const": 2,
            "title": "DIF",
            "description": "FILE_TYPE_DIF"
          },
          {
            "x-qlik-const": 3,
            "title": "EXCEL_BIFF",
            "description": "FILE_TYPE_EXCEL_BIFF"
          },
          {
            "x-qlik-const": 4,
            "title": "EXCEL_OOXML",
            "description": "FILE_TYPE_EXCEL_OOXML"
          },
          {
            "x-qlik-const": 5,
            "title": "HTML",
            "description": "FILE_TYPE_HTML"
          },
          {
            "x-qlik-const": 6,
            "title": "QVD",
            "description": "FILE_TYPE_QVD"
          },
          {
            "x-qlik-const": 7,
            "title": "XML",
            "description": "FILE_TYPE_XML"
          },
          {
            "x-qlik-const": 8,
            "title": "QVX",
            "description": "FILE_TYPE_QVX"
          },
          {
            "x-qlik-const": 9,
            "title": "JSON",
            "description": "FILE_TYPE_JSON"
          },
          {
            "x-qlik-const": 10,
            "title": "KML",
            "description": "FILE_TYPE_KML"
          },
          {
            "x-qlik-const": 11,
            "title": "PARQUET",
            "description": "FILE_TYPE_PARQUET"
          }
        ]
      },
      "DelimiterInfo": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the delimiter.\nExample:\n\"Tab_DELIMITER\""
          },
          "qScriptCode": {
            "type": "string",
            "description": "Representation of the delimiter value that is used in the script.\nExample:\n\"'\\t'\""
          },
          "qNumber": {
            "type": "integer",
            "description": "Delimiter character number used by the engine to determine how to separate the values.",
            "format": "int32"
          },
          "qIsMultiple": {
            "type": "boolean",
            "description": "Is set to true if multiple spaces are used to separate the values."
          }
        }
      },
      "DataTableEx": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the table."
          },
          "qFields": {
            "type": "array",
            "description": "List of the fields in the table.",
            "items": {
              "$ref": "#/components/schemas/DataField"
            }
          },
          "qFormatSpec": {
            "type": "string",
            "description": "List of format specification items, within brackets.\nExamples of specification items:\n* file type\n* embedded labels, no labels\n* table is &lt;table name&gt;"
          }
        }
      },
      "SearchCombinationOptions": {
        "type": "object",
        "properties": {
          "qSearchFields": {
            "type": "array",
            "description": "List of the search fields.\nIf empty, the search is performed in all fields of the app.",
            "items": {
              "type": "string"
            }
          },
          "qContext": {
            "type": "string",
            "description": "Search context.\nThe default value is _LockedFieldsOnly_ .\n\nOne of:\n* Cleared or CONTEXT_CLEARED\n* LockedFieldsOnly or CONTEXT_LOCKED_FIELDS_ONLY\n* CurrentSelections or CONTEXT_CURRENT_SELECTIONS",
            "default": "CONTEXT_LOCKED_FIELDS_ONLY",
            "$ref": "#/components/schemas/SearchContextType"
          },
          "qCharEncoding": {
            "type": "string",
            "description": "Encoding used to compute qRanges of type SearchCharRange.\n<div class=note>Only affects the computation of the ranges. It does not impact the encoding of the text.</div>\n\nOne of:\n* Utf8 or CHAR_ENCODING_UTF8\n* Utf16 or CHAR_ENCODING_UTF16",
            "default": "CHAR_ENCODING_UTF8",
            "$ref": "#/components/schemas/CharEncodingType"
          },
          "qAttributes": {
            "type": "array",
            "description": "Optional.\n* For SearchSuggest method, this array is empty.\n* For SearchObjects method, this array is empty or contain _qProperty_ .\n* For SearchResults method, this array is empty, or contains _qNum_ and/or _qElemNum_ . It allows the user to request details in the outputted _SearchGroupItemMatch_ . For more information, see _SearchGroupItemMatch_.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "SearchContextType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "Cleared",
            "description": "CONTEXT_CLEARED"
          },
          {
            "x-qlik-const": 1,
            "title": "LockedFieldsOnly",
            "description": "CONTEXT_LOCKED_FIELDS_ONLY"
          },
          {
            "x-qlik-const": 2,
            "title": "CurrentSelections",
            "description": "CONTEXT_CURRENT_SELECTIONS"
          }
        ]
      },
      "CharEncodingType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "Utf8",
            "description": "CHAR_ENCODING_UTF8"
          },
          {
            "x-qlik-const": 1,
            "title": "Utf16",
            "description": "CHAR_ENCODING_UTF16"
          }
        ]
      },
      "SearchSuggestionResult": {
        "type": "object",
        "properties": {
          "qSuggestions": {
            "type": "array",
            "description": "List of suggestions.",
            "items": {
              "$ref": "#/components/schemas/SearchSuggestItem"
            }
          },
          "qFieldNames": {
            "type": "array",
            "description": "List of field names that contain search hits.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "SearchSuggestItem": {
        "type": "object",
        "properties": {
          "qValue": {
            "type": "string",
            "description": "Value of the suggestion."
          },
          "qTerm": {
            "type": "integer",
            "description": "Index of the suggestion value.\nThe indexing starts from 0 and from the left.",
            "format": "int32"
          }
        }
      },
      "SearchPage": {
        "type": "object",
        "properties": {
          "qOffset": {
            "type": "integer",
            "description": "Position from the top, starting from 0.\nIf the offset is set to 0, the first search result to be returned is at position 0.",
            "format": "int32"
          },
          "qCount": {
            "type": "integer",
            "description": "Number of search groups to return (in _qSearchGroupArray_ ).",
            "format": "int32"
          },
          "qMaxNbrFieldMatches": {
            "type": "integer",
            "description": "Maximum number of matching values to return per search result.\nThe default value is -1; all values are returned.\nThis property is to be used with the _SearchAssociations method_.",
            "format": "int32",
            "default": -1
          },
          "qGroupOptions": {
            "type": "array",
            "description": "Options of the search groups.\nIf this property is not set, all values are returned.\nThis property is to be used with the _SearchResults method_ or the _SearchObjects method_.",
            "items": {
              "$ref": "#/components/schemas/SearchGroupOptions"
            }
          },
          "qGroupItemOptions": {
            "type": "array",
            "description": "Options of the search group items.\nIf this property is not set, all values are returned.\nThis property is to be used with the _SearchResults method_ or the _SearchObjects method_.",
            "items": {
              "$ref": "#/components/schemas/SearchGroupItemOptions"
            }
          }
        }
      },
      "SearchGroupOptions": {
        "type": "object",
        "properties": {
          "qGroupType": {
            "type": "string",
            "description": "Type of the group. Can be:\n* GenericObjectType: the type of the search group item is a generic object. Groups have this type when you are calling _SearchObjects_ .\n* DatasetType: type of the search group item is a dataset association. Groups have this type when you are calling _SearchResults_ .\n\nOne of:\n* DatasetType or DATASET_GROUP\n* GenericObjectsType or GENERIC_OBJECTS_GROUP",
            "$ref": "#/components/schemas/SearchGroupType"
          },
          "qOffset": {
            "type": "integer",
            "description": "Position starting from 0.\nThe default value is 0.",
            "format": "int32",
            "default": 0
          },
          "qCount": {
            "type": "integer",
            "description": "Maximum number of items per group (in _qItems[ ]_ ).\nThe default value is -1; all values are returned.",
            "format": "int32",
            "default": -1
          }
        }
      },
      "SearchGroupType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 1,
            "title": "DatasetType",
            "description": "DATASET_GROUP"
          },
          {
            "x-qlik-const": 2,
            "title": "GenericObjectsType",
            "description": "GENERIC_OBJECTS_GROUP"
          }
        ]
      },
      "SearchGroupItemOptions": {
        "type": "object",
        "properties": {
          "qGroupItemType": {
            "type": "string",
            "description": "Type of the group item. Can be:\n* GenericObject: the type of the search group item is a generic object. Group items have this type when you are calling _SearchObjects_ .\n* Field: the type of the search group item is a field. Group items have this type when you are calling _SearchResults_ .\n\nOne of:\n* Field or FIELD\n* GenericObject or GENERIC_OBJECT",
            "$ref": "#/components/schemas/SearchGroupItemType"
          },
          "qOffset": {
            "type": "integer",
            "description": "Position starting from 0.\nThe default value is 0.",
            "format": "int32",
            "default": 0
          },
          "qCount": {
            "type": "integer",
            "description": "Maximum number of matches per item (in _qItemMatches[ ]_ ).\nThe default value is -1: all values are returned.",
            "format": "int32",
            "default": -1
          }
        }
      },
      "SearchGroupItemType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 1,
            "title": "Field",
            "description": "FIELD"
          },
          {
            "x-qlik-const": 2,
            "title": "GenericObject",
            "description": "GENERIC_OBJECT"
          }
        ]
      },
      "SearchAssociationResult": {
        "type": "object",
        "properties": {
          "qFieldNames": {
            "type": "array",
            "description": "List of the fields that contains search associations.",
            "items": {
              "type": "string"
            }
          },
          "qSearchTerms": {
            "type": "array",
            "description": "List of the search terms.",
            "items": {
              "type": "string"
            }
          },
          "qFieldDictionaries": {
            "type": "array",
            "description": "Information about the fields containing search hits.",
            "items": {
              "$ref": "#/components/schemas/SearchFieldDictionary"
            }
          },
          "qSearchTermsMatched": {
            "type": "array",
            "description": "List of search results.\nThe maximum number of search results in this list is set by _qPage/qCount_ .",
            "items": {
              "$ref": "#/components/schemas/SearchMatchCombinations"
            }
          },
          "qTotalSearchResults": {
            "type": "integer",
            "description": "Total number of search results.\nThis number is not limited by _qPage/qCount_ .",
            "format": "int32"
          }
        },
        "x-qlik-deprecated": true
      },
      "SearchFieldDictionary": {
        "type": "object",
        "properties": {
          "qField": {
            "type": "integer",
            "description": "Position of the field in the list of fields, starting from 0.\nThe list of fields is defined in _qResults/qFieldNames_ and contains the search associations.",
            "format": "int32"
          },
          "qResult": {
            "type": "array",
            "description": "List of the matching values.\nThe maximum number of values in this list is set by _qMaxNbrFieldMatches_ .",
            "items": {
              "$ref": "#/components/schemas/SearchTermResult"
            }
          }
        },
        "x-qlik-deprecated": true
      },
      "SearchTermResult": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Text of the associated value."
          },
          "qElemNumber": {
            "type": "integer",
            "description": "Element number of the associated value.",
            "format": "int32"
          },
          "qRanges": {
            "type": "array",
            "description": "List of ranges.\nFor example, if the user searches the term _read_ and the associative value is _Reading_ , then the corresponding range would be _Read_ in _Reading_ .",
            "items": {
              "$ref": "#/components/schemas/SearchCharRange"
            }
          }
        },
        "x-qlik-deprecated": true
      },
      "SearchCharRange": {
        "type": "object",
        "properties": {
          "qCharPos": {
            "type": "integer",
            "description": "Starting position of the match in the search result, starting from 0.",
            "format": "int32"
          },
          "qCharCount": {
            "type": "integer",
            "description": "Length of the match in the search result.",
            "format": "int32"
          },
          "qTerm": {
            "type": "integer",
            "description": "Position of the term in the list of search terms, starting from 0.",
            "format": "int32"
          }
        }
      },
      "SearchMatchCombinations": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/SearchMatchCombination"
        },
        "x-qlik-deprecated": true
      },
      "SearchMatchCombination": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "integer",
            "description": "Index of the search result, starting from 0.",
            "format": "int32"
          },
          "qFieldMatches": {
            "type": "array",
            "description": "Information about the search matches.",
            "items": {
              "$ref": "#/components/schemas/SearchFieldMatch"
            }
          }
        },
        "x-qlik-deprecated": true
      },
      "SearchFieldMatch": {
        "type": "object",
        "properties": {
          "qField": {
            "type": "integer",
            "description": "Position of the field in the list of fields, starting from 0.\nThe list of fields is defined in _qResults/qFieldNames_ and contains the search associations.",
            "format": "int32"
          },
          "qValues": {
            "type": "array",
            "description": "Positions of the matching values in the search results.\nThe maximum number of values in this list is defined by _qMaxNbrFieldMatches_ .",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "qTerms": {
            "type": "array",
            "description": "Positions of the search terms, starting from 0.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qNoOfMatches": {
            "type": "integer",
            "description": "Number of search hits in the field.\nThe number of values in _qValues_ and the value of _qNoOfMatches_ are equal if _qMaxNbrFieldMatches_ is -1.",
            "format": "int32"
          }
        },
        "x-qlik-deprecated": true
      },
      "SearchResult": {
        "type": "object",
        "properties": {
          "qSearchTerms": {
            "type": "array",
            "description": "List of the search terms.",
            "items": {
              "type": "string"
            }
          },
          "qTotalNumberOfGroups": {
            "type": "integer",
            "description": "Total number of groups.",
            "format": "int32"
          },
          "qSearchGroupArray": {
            "type": "array",
            "description": "List of search groups.\nThe groups are numbered from the value of _SearchPage.qOffset_ to the value of _SearchPage.qOffset + SearchPage.qCount_ .",
            "items": {
              "$ref": "#/components/schemas/SearchGroup"
            }
          }
        }
      },
      "SearchGroup": {
        "type": "object",
        "properties": {
          "qId": {
            "type": "integer",
            "description": "Identifier of the search group.",
            "format": "int32"
          },
          "qGroupType": {
            "type": "string",
            "description": "Type of the search group.\n\nOne of:\n* DatasetType or DATASET_GROUP\n* GenericObjectsType or GENERIC_OBJECTS_GROUP",
            "$ref": "#/components/schemas/SearchGroupType"
          },
          "qSearchTermsMatched": {
            "type": "array",
            "description": "Indexes of the search terms that are included in the group. These search terms are related to the list of terms defined in _SearchResult.qSearchTerms_ .",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qTotalNumberOfItems": {
            "type": "integer",
            "description": "Total number of distinct items in the search group.",
            "format": "int32"
          },
          "qItems": {
            "type": "array",
            "description": "List of items in the search group.\nThe group items are numbered from the value of _SearchGroupOptions.qOffset_ to the value of _SearchGroupOptions.qOffset_ \\+ _SearchGroupOptions.qCount_",
            "items": {
              "$ref": "#/components/schemas/SearchGroupItem"
            }
          }
        }
      },
      "SearchGroupItem": {
        "type": "object",
        "properties": {
          "qItemType": {
            "type": "string",
            "description": "Type of the group item.\n\nOne of:\n* Field or FIELD\n* GenericObject or GENERIC_OBJECT",
            "$ref": "#/components/schemas/SearchGroupItemType"
          },
          "qTotalNumberOfMatches": {
            "type": "integer",
            "description": "Total number of distinct matches in the search group item.",
            "format": "int32"
          },
          "qIdentifier": {
            "type": "string",
            "description": "Identifier of the item.\nIt corresponds to:\n* The name of the field, if the type of the search group is data set.\n* The id of the generic object if the type of the search group is generic object."
          },
          "qItemMatches": {
            "type": "array",
            "description": "List of matches in the search group item.\nThe group item matches are numbered from the value of _SearchGroupItemOptions.qOffset_ to the value of _SearchGroupItemOptions.qOffset_ \\+ _SearchGroupItemOptions.qCount_ .",
            "items": {
              "$ref": "#/components/schemas/SearchGroupItemMatch"
            }
          },
          "qSearchTermsMatched": {
            "type": "array",
            "description": "Indexes of the search terms that are included in the group item. These search terms are related to the list of terms defined in _SearchResult.qSearchTerms_ .",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qMatchType": {
            "type": "string",
            "description": "Match type applied in this result group.\n\nOne of:\n* FieldMatchNone or FM_NONE\n* FieldMatchSubString or FM_SUBSTRING\n* FieldMatchWord or FM_WORD\n* FieldMatchExact or FM_EXACT\n* FieldMatchLast or FM_LAST",
            "$ref": "#/components/schemas/SearchFieldMatchType"
          }
        }
      },
      "SearchGroupItemMatch": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string",
            "description": "Search match value.\nValue of the search group item.\nIf the match is found in a field, it corresponds to the value of the field.\nIf the match is found in a generic object property, it corresponds to the property value."
          },
          "qFieldSelectionMode": {
            "type": "string",
            "description": "Selection mode of a field.\nSuppressed by default. One and always one field value is selected when set to _OneAndOnlyOne_.",
            "$ref": "#/components/schemas/SearchFieldSelectionMode"
          },
          "qRanges": {
            "type": "array",
            "description": "List of ranges.\nFor example, if the search terms are Price and Make, and the search group item value is Make by Price vs Mileage, then there are two ranges: one for Price and one for Make.",
            "items": {
              "$ref": "#/components/schemas/SearchCharRange"
            }
          },
          "qAttributes": {
            "type": "array",
            "description": "Provides detail of the match as requested by the user in _SearchObjectsOptions.qAttributes_ or _SearchCombinationOptions.qAttributes_\nIf the user requests _SearchObjects_ or _SearchResults_ with an empty _qAttributes_ option, the outputted _qAttributes_ is returned empty.\nFor _SearchObjects_ requested with _qProperty_ , the _SearchGroupItemMatch.qAttributes_ return value contains _[“qProperty”, \"qMetaDef/title”]_ if the match has been found in the title of the item. For dimension values, the returned _qProperty_ will be _“*”_ .\nFor _SearchResults_ requested with _qNum_ , the _SearchGroupItemMatch.qAttributes_ return value contains _[\"qNum\", N]_ where _N_ is the numeric value of the element or _NaN_ if the value is not numeric.\nFor _SearchResults_ requested with _qElemNum_ , the _SearchGroupItemMatch.qAttributes_ return value contains _[\"qElemNum\", N]_ where _N_ is the value index of the element.",
            "items": {
              "$ref": "#/components/schemas/SearchAttribute"
            }
          }
        }
      },
      "SearchFieldSelectionMode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "OneAndOnlyOne",
            "description": "ONE_AND_ONLY_ONE"
          }
        ]
      },
      "SearchAttribute": {
        "type": "object",
        "properties": {
          "qKey": {
            "type": "string",
            "description": "String corresponding to _SearchObjectOptions.qAttributes_. It will be _qProperty_ for _SearchObjectOptions_."
          },
          "qValue": {
            "type": "string",
            "description": "String corresponding to _qKey_ for the current _SearchGroupItemMatch_. For example, if the match is _Make by Price_ found in the title of a generic object, _qValue_ will be _qMetaDef/title_."
          }
        }
      },
      "SearchFieldMatchType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "FieldMatchNone",
            "description": "FM_NONE"
          },
          {
            "x-qlik-const": 1,
            "title": "FieldMatchSubString",
            "description": "FM_SUBSTRING"
          },
          {
            "x-qlik-const": 2,
            "title": "FieldMatchWord",
            "description": "FM_WORD"
          },
          {
            "x-qlik-const": 3,
            "title": "FieldMatchExact",
            "description": "FM_EXACT"
          },
          {
            "x-qlik-const": 4,
            "title": "FieldMatchLast",
            "description": "FM_LAST"
          }
        ]
      },
      "SearchObjectOptions": {
        "type": "object",
        "properties": {
          "qAttributes": {
            "type": "array",
            "description": "This array is either empty or contains _qProperty_ .",
            "items": {
              "type": "string"
            }
          },
          "qCharEncoding": {
            "type": "string",
            "description": "Encoding used to compute qRanges of type SearchCharRange.\n<div class=note>Only affects the computation of the ranges. It does not impact the encoding of the text.</div>\n\nOne of:\n* Utf8 or CHAR_ENCODING_UTF8\n* Utf16 or CHAR_ENCODING_UTF16",
            "default": "CHAR_ENCODING_UTF8",
            "$ref": "#/components/schemas/CharEncodingType"
          }
        }
      },
      "FieldOrColumn": {
        "type": "object",
        "properties": {
          "qFieldName": {
            "type": "string",
            "description": "Name of the field or column to be matched."
          },
          "qTableName": {
            "type": "string",
            "description": "Name of the table to be matched on. This parameter is optional. If TableName is set, FieldName represent the Table column with that name. If TableName is not set, FieldName represents the the field with that name."
          }
        }
      },
      "SampleResult": {
        "type": "object",
        "properties": {
          "qFieldOrColumn": {
            "type": "object",
            "description": "Name of field or column.",
            "$ref": "#/components/schemas/FieldOrColumn"
          },
          "qValues": {
            "type": "array",
            "description": "Matched values part of the sample.",
            "items": {
              "$ref": "#/components/schemas/FieldValue"
            }
          }
        }
      },
      "AppScript": {
        "type": "object",
        "properties": {
          "qScript": {
            "type": "string",
            "description": "Script text."
          },
          "qMeta": {
            "type": "object",
            "description": "Information about publishing and permissions.\nThis parameter is optional.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qIsLocked": {
            "type": "boolean",
            "description": "True if user is temporarily locked from modifying the script. Meta contains the ID of the last modifier. Only applicable to QCS."
          }
        }
      },
      "SearchValueOptions": {
        "type": "object",
        "properties": {
          "qSearchFields": {
            "type": "array",
            "description": "List of the search fields.\nIf empty, the search is performed in all fields of the app.",
            "items": {
              "type": "string"
            }
          }
        },
        "x-qlik-stability": "experimental"
      },
      "SearchValuePage": {
        "type": "object",
        "properties": {
          "qOffset": {
            "type": "integer",
            "description": "Position from the top, starting from 0.\nIf the offset is set to 0, the first search result to be returned is at position 0.",
            "format": "int32"
          },
          "qCount": {
            "type": "integer",
            "description": "Number of search fields to return",
            "format": "int32"
          },
          "qMaxNbrFieldMatches": {
            "type": "integer",
            "description": "Maximum number of matching values to return per search result.",
            "format": "int32",
            "default": -1
          }
        },
        "x-qlik-stability": "experimental"
      },
      "SearchValueResult": {
        "type": "object",
        "properties": {
          "qSearchTerms": {
            "type": "array",
            "description": "List of the search terms.",
            "items": {
              "type": "string"
            }
          },
          "qFieldMatches": {
            "type": "array",
            "description": "List of search groups.\nThe groups are numbered from the value of _SearchPage.qOffset_ to the value of _SearchPage.qOffset + SearchPage.qCount_ .",
            "items": {
              "$ref": "#/components/schemas/SearchFieldValueItem"
            }
          }
        },
        "x-qlik-stability": "experimental"
      },
      "SearchFieldValueItem": {
        "type": "object",
        "properties": {
          "qFieldName": {
            "type": "string",
            "description": "Field name of matches."
          },
          "qValues": {
            "type": "array",
            "description": "List of search matches.",
            "items": {
              "$ref": "#/components/schemas/SearchFieldMatchesItem"
            }
          }
        },
        "x-qlik-stability": "experimental"
      },
      "SearchFieldMatchesItem": {
        "type": "object",
        "properties": {
          "qText": {
            "type": "string"
          },
          "qElemNo": {
            "type": "integer",
            "format": "int32"
          },
          "qSearchTermsMatched": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          }
        },
        "x-qlik-stability": "experimental"
      },
      "NxFieldResourceId": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the field to get the resource id for."
          },
          "qResourceIds": {
            "type": "array",
            "description": "Field level resource Id per table that the field is part of",
            "items": {
              "$ref": "#/components/schemas/NxFieldTableResourceId"
            }
          }
        }
      },
      "NxFieldTableResourceId": {
        "type": "object",
        "properties": {
          "qTable": {
            "type": "string",
            "description": "Name of the table that the field belongs to get the resource id for"
          },
          "qResourceId": {
            "type": "string",
            "description": "Resource identifier for the field"
          }
        }
      },
      "BNFDef": {
        "type": "object",
        "properties": {
          "qBnf": {
            "type": "array",
            "description": "Array of token references that all together build up the definition of the current token.\nGenerally, if the array is not empty, the definition is a BNF rule (_qIsBnfRule_ is set to true). However, some BNF  rules do have an empty array (_qIsBnfRule_ is set to true, but _qBnf_ is empty).",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "qNbr": {
            "type": "integer",
            "description": "Number of the current token definition.",
            "format": "int32"
          },
          "qPNbr": {
            "type": "integer",
            "description": "Number of the parent rule definition.",
            "format": "int32"
          },
          "qHelpId": {
            "type": "integer",
            "description": "Reference identifier to a function described in the documentation. The identifier is stored in the definition of the token containing the function name.\nIs not used in Qlik Sense.",
            "format": "int32"
          },
          "qName": {
            "type": "string",
            "description": "Token name.\nOne of:\n* A rule name\n* An identifier\n* A literal value"
          },
          "qStr": {
            "type": "string",
            "description": "Literal string of the token.\nExamples: 'Round' and '('."
          },
          "qIsBnfRule": {
            "type": "boolean",
            "description": "If set to true, a list of related rule tokens is assigned to _qBnf_ .\nThis parameter is optional. The default value is false.",
            "default": false
          },
          "qScriptStatement": {
            "type": "boolean",
            "description": "If set to true, the definition specifies a script statement.\nThis parameter is optional. The default value is false.",
            "default": false
          },
          "qControlStatement": {
            "type": "boolean",
            "description": "If set to true, the definition specifies a control statement.\nThis parameter is optional. The default value is false.",
            "default": false
          },
          "qBnfLiteral": {
            "type": "boolean",
            "description": "If set to true, the definition specifies a literal token.\nThis parameter is optional. The default value is false.",
            "default": false
          },
          "qQvFunc": {
            "type": "boolean",
            "description": "If set to true, the definition is related to a Qlik Sense function. It cannot be an aggregation function.\nThis parameter is optional. The default value is false.",
            "default": false
          },
          "qAggrFunc": {
            "type": "boolean",
            "description": "If set to true, the definition is related to an aggregation function.\nThis parameter is optional. The default value is false.",
            "default": false
          },
          "qFG": {
            "type": "string",
            "description": "Group of the function.\n\nOne of:\n* ALL or FUNC_GROUP_ALL\n* U or FUNC_GROUP_UNKNOWN\n* NONE or FUNC_GROUP_NONE\n* AGGR or FUNC_GROUP_AGGR\n* NUM or FUNC_GROUP_NUMERIC\n* RNG or FUNC_GROUP_RANGE\n* EXP or FUNC_GROUP_EXPONENTIAL_AND_LOGARITHMIC\n* TRIG or FUNC_GROUP_TRIGONOMETRIC_AND_HYPERBOLIC\n* FIN or FUNC_GROUP_FINANCIAL\n* MATH or FUNC_GROUP_MATH_CONSTANT_AND_PARAM_FREE\n* COUNT or FUNC_GROUP_COUNTER\n* STR or FUNC_GROUP_STRING\n* MAPP or FUNC_GROUP_MAPPING\n* RCRD or FUNC_GROUP_INTER_RECORD\n* CND or FUNC_GROUP_CONDITIONAL\n* LOG or FUNC_GROUP_LOGICAL\n* NULL or FUNC_GROUP_NULL\n* SYS or FUNC_GROUP_SYSTEM\n* FILE or FUNC_GROUP_FILE\n* TBL or FUNC_GROUP_TABLE\n* DATE or FUNC_GROUP_DATE_AND_TIME\n* NUMI or FUNC_GROUP_NUMBER_INTERPRET\n* FRMT or FUNC_GROUP_FORMATTING\n* CLR or FUNC_GROUP_COLOR\n* RNK or FUNC_GROUP_RANKING\n* GEO or FUNC_GROUP_GEO\n* EXT or FUNC_GROUP_EXTERNAL\n* PROB or FUNC_GROUP_PROBABILITY\n* ARRAY or FUNC_GROUP_ARRAY\n* LEG or FUNC_GROUP_LEGACY\n* DB or FUNC_GROUP_DB_NATIVE\n* WINDOW or FUNC_GROUP_WINDOW",
            "$ref": "#/components/schemas/FunctionGroup"
          },
          "qFieldFlag": {
            "type": "boolean",
            "description": "If set to true, the definition is related to a field.\nThis parameter is optional. The default value is false.",
            "default": false
          },
          "qMT": {
            "type": "string",
            "description": "Type of the data.\n\nOne of:\n* N or NOT_META\n* D or META_DOC_NAME\n* R or META_RET_TYPE\n* V or META_DEFAULT_VALUE",
            "$ref": "#/components/schemas/BNFDefMetaType"
          },
          "qDepr": {
            "type": "boolean",
            "description": "Indicates whether a script statement, a chart or a script function is deprecated (not recommended for use).\nIf set to true, the script statement or the function is not recommended for use in Qlik Sense.\nThis parameter is optional. The default value is false.",
            "default": false
          },
          "qFGList": {
            "type": "array",
            "description": "List of groups the function belongs to.",
            "items": {
              "$ref": "#/components/schemas/FunctionGroup"
            }
          }
        }
      },
      "FunctionGroup": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "ALL",
            "description": "FUNC_GROUP_ALL"
          },
          {
            "x-qlik-const": 1,
            "title": "U",
            "description": "FUNC_GROUP_UNKNOWN"
          },
          {
            "x-qlik-const": 2,
            "title": "NONE",
            "description": "FUNC_GROUP_NONE"
          },
          {
            "x-qlik-const": 3,
            "title": "AGGR",
            "description": "FUNC_GROUP_AGGR"
          },
          {
            "x-qlik-const": 4,
            "title": "NUM",
            "description": "FUNC_GROUP_NUMERIC"
          },
          {
            "x-qlik-const": 5,
            "title": "RNG",
            "description": "FUNC_GROUP_RANGE"
          },
          {
            "x-qlik-const": 6,
            "title": "EXP",
            "description": "FUNC_GROUP_EXPONENTIAL_AND_LOGARITHMIC"
          },
          {
            "x-qlik-const": 7,
            "title": "TRIG",
            "description": "FUNC_GROUP_TRIGONOMETRIC_AND_HYPERBOLIC"
          },
          {
            "x-qlik-const": 8,
            "title": "FIN",
            "description": "FUNC_GROUP_FINANCIAL"
          },
          {
            "x-qlik-const": 9,
            "title": "MATH",
            "description": "FUNC_GROUP_MATH_CONSTANT_AND_PARAM_FREE"
          },
          {
            "x-qlik-const": 10,
            "title": "COUNT",
            "description": "FUNC_GROUP_COUNTER"
          },
          {
            "x-qlik-const": 11,
            "title": "STR",
            "description": "FUNC_GROUP_STRING"
          },
          {
            "x-qlik-const": 12,
            "title": "MAPP",
            "description": "FUNC_GROUP_MAPPING"
          },
          {
            "x-qlik-const": 13,
            "title": "RCRD",
            "description": "FUNC_GROUP_INTER_RECORD"
          },
          {
            "x-qlik-const": 14,
            "title": "CND",
            "description": "FUNC_GROUP_CONDITIONAL"
          },
          {
            "x-qlik-const": 15,
            "title": "LOG",
            "description": "FUNC_GROUP_LOGICAL"
          },
          {
            "x-qlik-const": 16,
            "title": "NULL",
            "description": "FUNC_GROUP_NULL"
          },
          {
            "x-qlik-const": 17,
            "title": "SYS",
            "description": "FUNC_GROUP_SYSTEM"
          },
          {
            "x-qlik-const": 18,
            "title": "FILE",
            "description": "FUNC_GROUP_FILE"
          },
          {
            "x-qlik-const": 19,
            "title": "TBL",
            "description": "FUNC_GROUP_TABLE"
          },
          {
            "x-qlik-const": 20,
            "title": "DATE",
            "description": "FUNC_GROUP_DATE_AND_TIME"
          },
          {
            "x-qlik-const": 21,
            "title": "NUMI",
            "description": "FUNC_GROUP_NUMBER_INTERPRET"
          },
          {
            "x-qlik-const": 22,
            "title": "FRMT",
            "description": "FUNC_GROUP_FORMATTING"
          },
          {
            "x-qlik-const": 23,
            "title": "CLR",
            "description": "FUNC_GROUP_COLOR"
          },
          {
            "x-qlik-const": 24,
            "title": "RNK",
            "description": "FUNC_GROUP_RANKING"
          },
          {
            "x-qlik-const": 25,
            "title": "GEO",
            "description": "FUNC_GROUP_GEO"
          },
          {
            "x-qlik-const": 26,
            "title": "EXT",
            "description": "FUNC_GROUP_EXTERNAL"
          },
          {
            "x-qlik-const": 27,
            "title": "PROB",
            "description": "FUNC_GROUP_PROBABILITY"
          },
          {
            "x-qlik-const": 28,
            "title": "ARRAY",
            "description": "FUNC_GROUP_ARRAY"
          },
          {
            "x-qlik-const": 29,
            "title": "LEG",
            "description": "FUNC_GROUP_LEGACY"
          },
          {
            "x-qlik-const": 30,
            "title": "DB",
            "description": "FUNC_GROUP_DB_NATIVE"
          },
          {
            "x-qlik-const": 31,
            "title": "WINDOW",
            "description": "FUNC_GROUP_WINDOW"
          }
        ]
      },
      "BNFDefMetaType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "N",
            "description": "NOT_META"
          },
          {
            "x-qlik-const": 1,
            "title": "D",
            "description": "META_DOC_NAME"
          },
          {
            "x-qlik-const": 2,
            "title": "R",
            "description": "META_RET_TYPE"
          },
          {
            "x-qlik-const": 3,
            "title": "V",
            "description": "META_DEFAULT_VALUE"
          }
        ]
      },
      "TransformAppParameters": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "The name (title) of the application"
          },
          "qSpaceId": {
            "type": "string",
            "description": "ID of the space where the app is to be created. Empty value implies Personal space"
          },
          "qScriptParameterPrefix": {
            "type": "string",
            "description": "Prefix to be used on inserted ScriptParameters, only applicable for template apps"
          }
        }
      },
      "TransformAppResult": {
        "type": "object",
        "properties": {
          "qAppId": {
            "type": "string",
            "description": "ID of created App"
          }
        }
      },
      "NxTempBookmarkOptions": {
        "type": "object",
        "properties": {
          "qIncludeVariables": {
            "type": "boolean",
            "description": "IncludeVariables If true all variables will be stored in the temporary bookmark"
          },
          "qIncludeAllPatches": {
            "type": "boolean",
            "description": "IncludeAllPatches If true all patches will be stored in the temporary bookmark, if false ObjectIdsToPatch will determine what patches to include"
          }
        }
      },
      "AppScriptMeta": {
        "type": "object",
        "properties": {
          "qMeta": {
            "type": "object",
            "description": "Information about publishing and permissions.\nThis parameter is optional.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qIsLocked": {
            "type": "boolean",
            "description": "True if user is temporarily locked from modifying the script. Meta contains the ID of the last modifier. Only applicable to QCS."
          }
        },
        "x-qlik-stability": "experimental"
      },
      "ProgressData": {
        "type": "object",
        "properties": {
          "qStarted": {
            "type": "boolean",
            "description": "True if the request is started."
          },
          "qFinished": {
            "type": "boolean",
            "description": "True if the request is finished."
          },
          "qCompleted": {
            "type": "integer",
            "description": "This property is not used.",
            "format": "int64"
          },
          "qTotal": {
            "type": "integer",
            "description": "This property is not used.",
            "format": "int64"
          },
          "qKB": {
            "type": "integer",
            "description": "This property is not used.",
            "format": "int32"
          },
          "qMillisecs": {
            "type": "integer",
            "description": "Request duration in milliseconds.",
            "format": "int32"
          },
          "qUserInteractionWanted": {
            "type": "boolean",
            "description": "True when the engine pauses the script execution and waits for a user interaction."
          },
          "qPersistentProgress": {
            "type": "string",
            "description": "A progress message is persistent when it informs about the start or end of a statement. For example, it can inform about the total number of lines fetched from a data source or tell that the app was saved. All persistent progress messages between two *GetProgress* calls are summarized in this string. Contrarily to *qPersistentProgressMessages*, the content of the localized message string is displayed (not its message code)."
          },
          "qTransientProgress": {
            "type": "string",
            "description": "A progress message is transient when it informs about the progress of an ongoing statement. For example, it can tell how many lines are currently fetched from a data source. All transient progress messages between two *GetProgress* calls are summarized in this string. Contrarily to *qTransientProgressMessage*, the content of the localized message string is displayed (not its message code)."
          },
          "qErrorData": {
            "type": "array",
            "description": "Information about the error messages that occur during the script execution.",
            "items": {
              "$ref": "#/components/schemas/ErrorData"
            }
          },
          "qPersistentProgressMessages": {
            "type": "array",
            "description": "List of persistent progress messages.",
            "items": {
              "$ref": "#/components/schemas/ProgressMessage"
            }
          },
          "qTransientProgressMessage": {
            "type": "object",
            "description": "Transient progress message.",
            "$ref": "#/components/schemas/ProgressMessage"
          }
        }
      },
      "ErrorData": {
        "type": "object",
        "properties": {
          "qErrorString": {
            "type": "string",
            "description": "Detailed information about the error message."
          },
          "qLineEnd": {
            "type": "string",
            "description": "Line termination characters."
          },
          "qLine": {
            "type": "string",
            "description": "Script statement where the error occurs."
          },
          "qErrorDataCode": {
            "type": "string",
            "description": "Type of the error messages.\n\nOne of:\n* EDC_ERROR\n* EDC_WARNING\n* EDC_CIRCULAR_REFERENCE",
            "$ref": "#/components/schemas/ErrorDataCode"
          },
          "qMessage": {
            "type": "object",
            "$ref": "#/components/schemas/ProgressMessage"
          }
        }
      },
      "ErrorDataCode": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "EDC_ERROR"
          },
          {
            "x-qlik-const": 1,
            "title": "EDC_WARNING"
          },
          {
            "x-qlik-const": 2,
            "title": "EDC_CIRCULAR_REFERENCE"
          }
        ]
      },
      "ProgressMessage": {
        "type": "object",
        "properties": {
          "qMessageCode": {
            "type": "integer",
            "description": "Code number to the corresponding localized message string.",
            "format": "int32"
          },
          "qMessageParameters": {
            "type": "array",
            "description": "Parameters to be inserted in the localized message string.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "DocListEntry": {
        "type": "object",
        "properties": {
          "qDocName": {
            "type": "string",
            "description": "Name of the app."
          },
          "qConnectedUsers": {
            "type": "integer",
            "description": "Not used.",
            "format": "int32"
          },
          "qFileTime": {
            "type": "number",
            "description": "Last modified time stamp of the app.\nThis property is used only with Qlik Sense Desktop.\nIt is set to 0 for Qlik Sense Enterprise.",
            "format": "double"
          },
          "qFileSize": {
            "type": "number",
            "description": "Size of remote app.\nThis property is used only with Qlik Sense Desktop.\nIt is set to 0 for Qlik Sense Enterprise.",
            "format": "double"
          },
          "qDocId": {
            "type": "string",
            "description": "Identifier of the app.\n* In Qlik Sense Desktop, the identifier is the path and name of the app.\n* In Qlik Sense Enterprise, the identifier is the app's GUID."
          },
          "qMeta": {
            "type": "object",
            "description": "Meta data related to the app.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qLastReloadTime": {
            "type": "string",
            "description": "Last reload time of the app."
          },
          "qReadOnly": {
            "type": "boolean",
            "description": "If set to true, the app is read-only."
          },
          "qTitle": {
            "type": "string",
            "description": "Title of the app."
          },
          "qThumbnail": {
            "type": "object",
            "description": "Thumbnail of the app.",
            "$ref": "#/components/schemas/StaticContentUrl"
          },
          "qHasSectionAccess": {
            "type": "boolean",
            "description": "If true the app has section access configured."
          },
          "qIsDirectQueryMode": {
            "type": "boolean",
            "description": "Is the app a Direct Query app?"
          },
          "qUsage": {
            "type": "string",
            "description": "\nOne of:\n* ANALYTICS\n* DATA_PREPARATION\n* DATAFLOW_PREP\n* SINGLE_TABLE_PREP",
            "$ref": "#/components/schemas/UsageEnum"
          }
        }
      },
      "InteractDef": {
        "type": "object",
        "properties": {
          "qType": {
            "type": "string",
            "description": "Interaction type.\n\nOne of:\n* IT_MSGBOX\n* IT_SCRIPTLINE\n* IT_BREAK\n* IT_INPUT\n* IT_END\n* IT_PASSWD\n* IT_USERNAME",
            "$ref": "#/components/schemas/InteractType"
          },
          "qTitle": {
            "type": "string",
            "description": "Title used in the message box dialog.\nThis property is relevant if _qType_ is *IT_MSGBOX*."
          },
          "qMsg": {
            "type": "string",
            "description": "Message used in the message box dialog.\nThis property is relevant if _qType_ is *IT_MSGBOX*."
          },
          "qButtons": {
            "type": "integer",
            "description": "Buttons displayed in the message box dialog.\nThis property is relevant if _qType_ is *IT_MSGBOX*.\nOne of:\n* 0 means that the _qButtons_ property is not relevant.\n* 17 means that the message box contains the **OK** and **Cancel** buttons or the **stop** -sign icon.",
            "format": "int32"
          },
          "qLine": {
            "type": "string",
            "description": "Next script statement to be executed.\nThis property is used if the type of interaction is *IT_SCRIPTLINE*."
          },
          "qOldLineNr": {
            "type": "integer",
            "description": "First line number of the previously executed statement.\nThis property is used if the type of interaction is *IT_SCRIPTLINE*.",
            "format": "int32"
          },
          "qNewLineNr": {
            "type": "integer",
            "description": "First line number of the next statement to be executed.\nThis property is used if the type of interaction is *IT_SCRIPTLINE*.",
            "format": "int32"
          },
          "qPath": {
            "type": "string",
            "description": "Path specified by the **Include** script variable.\nThis property is used if the type of interaction is *IT_SCRIPTLINE*.\nExample of an **Include** variable:\n_$(Include=lib:\\\\\\MyDataFiles\\abc.txt);_"
          },
          "qHidden": {
            "type": "boolean",
            "description": "This property is set to true if the returned statement is an hidden script statement."
          },
          "qResult": {
            "type": "integer",
            "description": "Not relevant for describing the requested user interaction.",
            "format": "int32"
          },
          "qInput": {
            "type": "string",
            "description": "Is not used in Qlik Sense."
          }
        }
      },
      "InteractType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "IT_MSGBOX"
          },
          {
            "x-qlik-const": 1,
            "title": "IT_SCRIPTLINE"
          },
          {
            "x-qlik-const": 2,
            "title": "IT_BREAK"
          },
          {
            "x-qlik-const": 3,
            "title": "IT_INPUT"
          },
          {
            "x-qlik-const": 4,
            "title": "IT_END"
          },
          {
            "x-qlik-const": 5,
            "title": "IT_PASSWD"
          },
          {
            "x-qlik-const": 6,
            "title": "IT_USERNAME"
          }
        ]
      },
      "AppEntry": {
        "type": "object",
        "properties": {
          "qID": {
            "type": "string",
            "description": "Identifier of the app."
          },
          "qTitle": {
            "type": "string",
            "description": "Title of the app."
          },
          "qPath": {
            "type": "string",
            "description": "Path of the app."
          },
          "qLastReloadTime": {
            "type": "string",
            "description": "Last reload time of the app."
          },
          "qReadOnly": {
            "type": "boolean",
            "description": "Is set to true if the app is read-only."
          },
          "qMeta": {
            "type": "object",
            "description": "Meta data.",
            "$ref": "#/components/schemas/NxMeta"
          },
          "qThumbnail": {
            "type": "object",
            "description": "App thumbnail.",
            "$ref": "#/components/schemas/StaticContentUrl"
          },
          "qFileSize": {
            "type": "integer",
            "format": "int64"
          },
          "qHasSectionAccess": {
            "type": "boolean",
            "description": "If true the app has section access configured."
          }
        }
      },
      "BNFType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "S",
            "description": "SCRIPT_TEXT_SCRIPT"
          },
          {
            "x-qlik-const": 1,
            "title": "E",
            "description": "SCRIPT_TEXT_EXPRESSION"
          }
        ]
      },
      "Function": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the script function."
          },
          "qGroup": {
            "type": "string",
            "description": "Group of the script function.\n\nOne of:\n* ALL or FUNC_GROUP_ALL\n* U or FUNC_GROUP_UNKNOWN\n* NONE or FUNC_GROUP_NONE\n* AGGR or FUNC_GROUP_AGGR\n* NUM or FUNC_GROUP_NUMERIC\n* RNG or FUNC_GROUP_RANGE\n* EXP or FUNC_GROUP_EXPONENTIAL_AND_LOGARITHMIC\n* TRIG or FUNC_GROUP_TRIGONOMETRIC_AND_HYPERBOLIC\n* FIN or FUNC_GROUP_FINANCIAL\n* MATH or FUNC_GROUP_MATH_CONSTANT_AND_PARAM_FREE\n* COUNT or FUNC_GROUP_COUNTER\n* STR or FUNC_GROUP_STRING\n* MAPP or FUNC_GROUP_MAPPING\n* RCRD or FUNC_GROUP_INTER_RECORD\n* CND or FUNC_GROUP_CONDITIONAL\n* LOG or FUNC_GROUP_LOGICAL\n* NULL or FUNC_GROUP_NULL\n* SYS or FUNC_GROUP_SYSTEM\n* FILE or FUNC_GROUP_FILE\n* TBL or FUNC_GROUP_TABLE\n* DATE or FUNC_GROUP_DATE_AND_TIME\n* NUMI or FUNC_GROUP_NUMBER_INTERPRET\n* FRMT or FUNC_GROUP_FORMATTING\n* CLR or FUNC_GROUP_COLOR\n* RNK or FUNC_GROUP_RANKING\n* GEO or FUNC_GROUP_GEO\n* EXT or FUNC_GROUP_EXTERNAL\n* PROB or FUNC_GROUP_PROBABILITY\n* ARRAY or FUNC_GROUP_ARRAY\n* LEG or FUNC_GROUP_LEGACY\n* DB or FUNC_GROUP_DB_NATIVE\n* WINDOW or FUNC_GROUP_WINDOW",
            "$ref": "#/components/schemas/FunctionGroup"
          },
          "qSignature": {
            "type": "string",
            "description": "Signature of the script function.\nGives general information about the function."
          }
        }
      },
      "OdbcDsn": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the ODBC connection."
          },
          "qDescription": {
            "type": "string",
            "description": "Description of the ODBC connection."
          },
          "qBit32": {
            "type": "boolean",
            "description": "Is set to true if the version of ODBC is 32-bit.\nThis parameter is optional. Default is false.",
            "default": false
          },
          "qUserOnly": {
            "type": "boolean",
            "description": "Is set to true if the connection is User DSN. The connection works only for a specific user.\nDefault is false.\nThis parameter is optional.",
            "default": false
          }
        }
      },
      "OleDbProvider": {
        "type": "object",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the OLEDB provider."
          },
          "qDescription": {
            "type": "string",
            "description": "Description of the OLEDB provider."
          },
          "qBit32": {
            "type": "boolean",
            "description": "Is set to true if the version of the OLEDB provider is 32-bit.\nDefault is false.\nThis parameter is optional.",
            "default": false
          }
        }
      },
      "DriveInfo": {
        "type": "object",
        "properties": {
          "qDrive": {
            "type": "string",
            "description": "Value of the drive.\nExamples:\nC:\\\\\\, E:\\\\\\"
          },
          "qType": {
            "type": "string",
            "description": "Type of the drive.\n_Fixed_ means physical drive."
          },
          "qName": {
            "type": "string",
            "description": "Name of the drive."
          },
          "qTypeIdentifier": {
            "type": "string",
            "description": "Information about the drive type.\n\nOne of:\n* REMOVABLE\n* FIXED\n* NETWORK\n* CD_ROM\n* RAM\n* UNKNOWN_TYPE",
            "$ref": "#/components/schemas/DriveType"
          },
          "qUnnamedDrive": {
            "type": "boolean"
          }
        }
      },
      "DriveType": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "REMOVABLE"
          },
          {
            "x-qlik-const": 1,
            "title": "FIXED"
          },
          {
            "x-qlik-const": 2,
            "title": "NETWORK"
          },
          {
            "x-qlik-const": 3,
            "title": "CD_ROM"
          },
          {
            "x-qlik-const": 4,
            "title": "RAM"
          },
          {
            "x-qlik-const": 5,
            "title": "UNKNOWN_TYPE"
          }
        ]
      },
      "CodePage": {
        "type": "object",
        "properties": {
          "qNumber": {
            "type": "integer",
            "description": "Number of the code page.",
            "format": "int32"
          },
          "qName": {
            "type": "string",
            "description": "Name of the code page."
          },
          "qDescription": {
            "type": "string",
            "description": "Description of the code page."
          }
        }
      },
      "CustomConnector": {
        "type": "object",
        "properties": {
          "qProvider": {
            "type": "string",
            "description": "Name of the custom connector file."
          },
          "qParent": {
            "type": "string",
            "description": "Name of the parent folder that contains the custom connector file."
          },
          "qDisplayName": {
            "type": "string",
            "description": "Name of the custom connector as displayed in the Qlik interface."
          },
          "qMachineMode": {
            "type": "string",
            "description": "Mode of the machine (64 or 32 bits).\n\nOne of:\n* CONNECT_DEFAULT\n* CONNECT_64\n* CONNECT_32",
            "$ref": "#/components/schemas/GenericConnectMachine"
          },
          "qSupportFileStreaming": {
            "type": "boolean"
          }
        }
      },
      "GenericConnectMachine": {
        "type": "string",
        "oneOf": [
          {
            "x-qlik-const": 0,
            "title": "CONNECT_DEFAULT"
          },
          {
            "x-qlik-const": 1,
            "title": "CONNECT_64"
          },
          {
            "x-qlik-const": 2,
            "title": "CONNECT_32"
          }
        ]
      },
      "NxStreamListEntry": {
        "type": "object",
        "description": "<div class=warning>This struct is deprecated (not recommended to use).</div>",
        "properties": {
          "qName": {
            "type": "string",
            "description": "Name of the stream."
          },
          "qId": {
            "type": "string",
            "description": "Identifier of the stream."
          }
        },
        "x-qlik-deprecated": true
      },
      "NxEngineVersion": {
        "type": "object",
        "properties": {
          "qComponentVersion": {
            "type": "string",
            "description": "Version number of the Qlik engine component."
          }
        }
      }
    },
    "errors": {
      "GenericErrors": {
        "oneOf": [
          {
            "$ref": "#/components/errors/LOCERR_INTERNAL_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_OK"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_NOT_SET"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_ALREADY_EXISTS"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_INVALID_PATH"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_ACCESS_DENIED"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_OUT_OF_MEMORY"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_NOT_INITIALIZED"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_INVALID_PARAMETERS"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_EMPTY_PARAMETERS"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_INTERNAL_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_CORRUPT_DATA"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_MEMORY_INCONSISTENCY"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_INVISIBLE_OWNER_ABORT"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_PROHIBIT_VALIDATE"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_ABORTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_CONNECTION_LOST"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_UNSUPPORTED_IN_PRODUCT_VERSION"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_REST_CONNECTION_FAILURE"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_MEMORY_LIMIT_REACHED"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_NOT_IMPLEMENTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_ENGINE_TERMINATED"
          },
          {
            "$ref": "#/components/errors/LOCERR_GENERIC_WRITE_OPERATIONS_LIMIT_REACHED"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_400"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_401"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_402"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_403"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_404"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_405"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_406"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_407"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_408"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_409"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_410"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_411"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_412"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_413"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_414"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_415"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_416"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_417"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_422"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_423"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_429"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_500"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_501"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_502"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_503"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_504"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_505"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_509"
          },
          {
            "$ref": "#/components/errors/LOCERR_HTTP_COULD_NOT_RESOLVE_HOST"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_ALREADY_EXISTS"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_INVALID_NAME"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_ALREADY_OPEN"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_IMPORT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_SAVE_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_CREATE_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_INVALID"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_CONNECT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_ALREADY_OPEN_IN_DIFFERENT_MODE"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_MIGRATION_COULD_NOT_CONTACT_MIGRATION_SERVICE"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_MIGRATION_COULD_NOT_START_MIGRATION"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_MIGRATION_FAILURE"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_SCRIPT_MISSING"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_EXPORT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_SIZE_EXCEEDED"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_DIRECT_QUERY_WORKLOAD_NOT_SUPPORTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_NOT_OPEN"
          },
          {
            "$ref": "#/components/errors/LOCERR_APP_EVENT_SOURCE_TIMEOUT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CONNECTION_ALREADY_EXISTS"
          },
          {
            "$ref": "#/components/errors/LOCERR_CONNECTION_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_CONNECTION_FAILED_TO_LOAD"
          },
          {
            "$ref": "#/components/errors/LOCERR_CONNECTION_FAILED_TO_IMPORT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CONNECTION_NAME_IS_INVALID"
          },
          {
            "$ref": "#/components/errors/LOCERR_CONNECTION_MISSING_CREDENTIALS"
          },
          {
            "$ref": "#/components/errors/LOCERR_CONNECTOR_NO_FILE_STREAMING_SUPPORT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CONNECTOR_FILESIZE_EXCEEDED_BUFFER_SIZE"
          },
          {
            "$ref": "#/components/errors/LOCERR_FILE_ACCESS_DENIED"
          },
          {
            "$ref": "#/components/errors/LOCERR_FILE_NAME_INVALID"
          },
          {
            "$ref": "#/components/errors/LOCERR_FILE_CORRUPT"
          },
          {
            "$ref": "#/components/errors/LOCERR_FILE_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_FILE_FORMAT_UNSUPPORTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_FILE_OPENED_IN_UNSUPPORTED_MODE"
          },
          {
            "$ref": "#/components/errors/LOCERR_FILE_TABLE_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_USER_ACCESS_DENIED"
          },
          {
            "$ref": "#/components/errors/LOCERR_USER_IMPERSONATION_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_OUT_OF_SESSION_AND_USER_CALS"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_OUT_OF_SESSION_CALS"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_OUT_OF_USAGE_CALS"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_OUT_OF_CALS"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_OUT_OF_NAMED_CALS"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_OFF_DUTY"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_BUSY"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_LICENSE_EXPIRED"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_AJAX_DISABLED"
          },
          {
            "$ref": "#/components/errors/LOCERR_SERVER_NO_TOKEN"
          },
          {
            "$ref": "#/components/errors/LOCERR_HC_INVALID_OBJECT"
          },
          {
            "$ref": "#/components/errors/LOCERR_HC_RESULT_TOO_LARGE"
          },
          {
            "$ref": "#/components/errors/LOCERR_HC_INVALID_OBJECT_STATE"
          },
          {
            "$ref": "#/components/errors/LOCERR_HC_MODAL_OBJECT_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_INVALID_DEF"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_NOT_IN_LIB"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_HEAP_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_TOO_LARGE"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_TIMEOUT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_EVAL_CONDITION_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_MIXED_LINKED_AGGREGATION"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_MISSING_LINKED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_INVALID_COL_SORT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_PAGES_TOO_LARGE"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_SEMANTIC_FIELD_NOT_ALLOWED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_VALIDATION_STATE_INVALID"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_PIVOT_DIMENSIONS_ALREADY_EXISTS"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_MISSING_LINKED_FIELD"
          },
          {
            "$ref": "#/components/errors/LOCERR_CALC_NOT_CALCULATED"
          },
          {
            "$ref": "#/components/errors/LOCERR_LAYOUT_EXTENDS_INVALID_ID"
          },
          {
            "$ref": "#/components/errors/LOCERR_LAYOUT_LINKED_OBJECT_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_LAYOUT_LINKED_OBJECT_INVALID"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_WRITE_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_READ_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_DELETE_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_UNSUPPORTED_VERSION"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_MIGRATION_FAILED_READ_ONLY"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_MIGRATION_CANCELLED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_MIGRATION_BACKUP_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_DISK_FULL"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_NOT_SUPPORTED_FOR_SESSION_APP"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_MOVE_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_OBJECT_LOCKED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_ENCRYPTION_KEY_MIGRATION_ONGOING"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_SYNC_SET_CHUNK_INVALID_PARAMETERS"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSISTENCE_SYNC_GET_CHUNK_INVALID_PARAMETERS"
          },
          {
            "$ref": "#/components/errors/LOCERR_SCRIPT_DATASOURCE_ACCESS_DENIED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_IN_PROGRESS"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_TABLE_X_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_UNKNOWN_STATEMENT"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_SOMETHING_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_NOTHING_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_ONE_OF_1_TOKENS_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_ONE_OF_2_TOKENS_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_ONE_OF_3_TOKENS_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_ONE_OF_4_TOKENS_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_ONE_OF_5_TOKENS_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_ONE_OF_6_TOKENS_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_ONE_OF_7_TOKENS_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_EXPECTED_ONE_OF_8_OR_MORE_TOKENS_FOUND_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_FIELD_X_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_MAPPING_TABLE_X_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_LIB_CONNECTION_X_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_NAME_ALREADY_TAKEN"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_WRONG_FILE_FORMAT_DIF"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_WRONG_FILE_FORMAT_BIFF"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_WRONG_FILE_FORMAT_ENCRYPTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_OPEN_FILE_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_AUTO_GENERATE_COUNT"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_PE_ILLEGAL_PREFIX_COMB"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_MATCHING_CONTROL_STATEMENT_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_MATCHING_LIBPATH_X_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_MATCHING_LIBPATH_X_INVALID"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_MATCHING_LIBPATH_X_OUTSIDE"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_NO_QUALIFIED_PATH_FOR_FILE"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_MODE_STATEMENT_ONLY_FOR_LIB_PATHS"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_INCONSISTENT_USE_OF_SEMANTIC_FIELDS"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_NO_OPEN_DATABASE"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_AGGREGATION_REQUIRED_BY_GROUP_BY"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CONNECT_MUST_USE_LIB_PREFIX_IN_THIS_MODE"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_ODBC_CONNECT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_OLEDB_CONNECT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CUSTOM_CONNECT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_ODBC_READ_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_OLEDB_READ_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CUSTOM_READ_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_BINARY_LOAD_PROHIBITED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CONNECTOR_START_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CONNECTOR_NOT_RESPONDING"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CONNECTOR_REPLY_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CONNECTOR_CONNECT_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CONNECTOR_NOT_FOUND_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_INPUT_FIELD_WITH_DUPLICATE_KEYS"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_CONCATENATE_LOAD_NO_PREVIOUS_TABLE"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_WRONG_FILE_FORMAT_QVD"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_ACTION_BLOCKED_ENTITLEMENT"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSONAL_NEW_VERSION_AVAILABLE"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSONAL_VERSION_EXPIRED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSONAL_SECTION_ACCESS_DETECTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_PERSONAL_APP_DELETION_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_USER_AUTHENTICATION_FAILURE"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXPORT_OUT_OF_MEMORY"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXPORT_NO_DATA"
          },
          {
            "$ref": "#/components/errors/LOCERR_SYNC_INVALID_OFFSET"
          },
          {
            "$ref": "#/components/errors/LOCERR_SEARCH_TIMEOUT"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_LINKED_EXPRESSION_FAIL"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_ROWCOUNT_OVERFLOW"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_EMPTY_RESULT"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_DB_CONNECTION_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_MEASURE_NOT_ALLOWED"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_DETAIL_NOT_ALLOWED"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_NOT_SYNTH_CIRCULAR_ALLOWED"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_ONLY_ONE_DD_TABLE_ALLOWED"
          },
          {
            "$ref": "#/components/errors/LOCERR_DIRECT_DISCOVERY_DB_AUTHORIZATION_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_SMART_LOAD_TABLE_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_SMART_LOAD_TABLE_DUPLICATED"
          },
          {
            "$ref": "#/components/errors/LOCERR_VARIABLE_NO_NAME"
          },
          {
            "$ref": "#/components/errors/LOCERR_VARIABLE_DUPLICATE_NAME"
          },
          {
            "$ref": "#/components/errors/LOCERR_VARIABLE_INCONSISTENCY"
          },
          {
            "$ref": "#/components/errors/LOCERR_VARIABLE_CONSTRAINT_INCONSISTENCY"
          },
          {
            "$ref": "#/components/errors/LOCERR_VARIABLE_CONSTRAINT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_MEDIA_LIBRARY_LIST_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_MEDIA_LIBRARY_CONTENT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_MEDIA_BUNDLING_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_MEDIA_UNBUNDLING_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_MEDIA_LIBRARY_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_FEATURE_DISABLED"
          },
          {
            "$ref": "#/components/errors/LOCERR_LOAD_TOO_MANY_FIELDS"
          },
          {
            "$ref": "#/components/errors/LOCERR_LOAD_TOO_MANY_TABLES"
          },
          {
            "$ref": "#/components/errors/LOCERR_JSON_RPC_INVALID_REQUEST"
          },
          {
            "$ref": "#/components/errors/LOCERR_JSON_RPC_METHOD_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_JSON_RPC_INVALID_PARAMETERS"
          },
          {
            "$ref": "#/components/errors/LOCERR_JSON_RPC_INTERNAL_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_JSON_RPC_RESPONSE_TOO_LARGE"
          },
          {
            "$ref": "#/components/errors/LOCERR_JSON_RPC_PARSE_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_MQ_SOCKET_CONNECT_FAILURE"
          },
          {
            "$ref": "#/components/errors/LOCERR_MQ_SOCKET_OPEN_FAILURE"
          },
          {
            "$ref": "#/components/errors/LOCERR_MQ_PROTOCOL_NO_RESPONE"
          },
          {
            "$ref": "#/components/errors/LOCERR_MQ_PROTOCOL_LIBRARY_EXCEPTION"
          },
          {
            "$ref": "#/components/errors/LOCERR_MQ_PROTOCOL_CONNECTION_CLOSED"
          },
          {
            "$ref": "#/components/errors/LOCERR_MQ_PROTOCOL_CHANNEL_CLOSED"
          },
          {
            "$ref": "#/components/errors/LOCERR_MQ_PROTOCOL_UNKNOWN_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_MQ_PROTOCOL_INVALID_STATUS"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_OK"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_CANCELLED"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_UNKNOWN"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_INVALID_ARGUMENT"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_DEADLINE_EXCEEDED"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_ALREADY_EXISTS"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_PERMISSION_DENIED"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_RESOURCE_EXHAUSTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_FAILED_PRECONDITION"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_ABORTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_OUT_OF_RANGE"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_UNIMPLEMENTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_INTERNAL"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_UNAVAILABLE"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_DATA_LOSS"
          },
          {
            "$ref": "#/components/errors/LOCERR_EXTENGINE_GRPC_STATUS_UNAUTHENTICATED"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_INVALID_OBJ"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_INVALID_FILE"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_INVALID_SHEET"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_INVALID_EXPORT_RANGE"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_MEMORY_MALLOC_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_CREATING_XLSX_FILE"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_CREATING_TMPFILE"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_ZIP_FILE_OPERATION"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_ZIP_FILE_ADD"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_ZIP_CLOSE"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_NULL_PARAMETER_IGNORED"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_255_STRING_LENGTH_EXCEEDED"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE"
          },
          {
            "$ref": "#/components/errors/LOCERR_LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED"
          },
          {
            "$ref": "#/components/errors/LOCERR_BDI_STATUS_OK"
          },
          {
            "$ref": "#/components/errors/LOCERR_BDI_GENERIC_ERROR_NOT_TRANSLATED"
          },
          {
            "$ref": "#/components/errors/LOCERR_TRENDLINE_INVALID_DEF"
          },
          {
            "$ref": "#/components/errors/LOCERR_TRENDLINE_INVALID_MATH_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_UNSUPPORTED_PROTOCOL"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_COULDNT_RESOLVE_PROXY"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_COULDNT_CONNECT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_REMOTE_ACCESS_DENIED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_FTP_ACCEPT_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_FTP_ACCEPT_TIMEOUT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_FTP_CANT_GET_HOST"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_PARTIAL_FILE"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_QUOTE_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_WRITE_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_UPLOAD_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_OUT_OF_MEMORY"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_OPERATION_TIMEDOUT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_FTP_COULDNT_USE_REST"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_HTTP_POST_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_SSL_CONNECT_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_FILE_COULDNT_READ_FILE"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_LDAP_CANNOT_BIND"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_LDAP_SEARCH_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_TOO_MANY_REDIRECTS"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_PEER_FAILED_VERIFICATION"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_GOT_NOTHING"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_SSL_ENGINE_NOTFOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_SSL_ENGINE_SETFAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_SSL_CERTPROBLEM"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_SSL_CIPHER"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_SSL_CACERT"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_BAD_CONTENT_ENCODING"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_LDAP_INVALID_URL"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_USE_SSL_FAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_SSL_ENGINE_INITFAILED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_LOGIN_DENIED"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_TFTP_NOTFOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_TFTP_ILLEGAL"
          },
          {
            "$ref": "#/components/errors/LOCERR_CURL_SSH"
          },
          {
            "$ref": "#/components/errors/LOCERR_SETEXPRESSION_TOO_LARGE"
          },
          {
            "$ref": "#/components/errors/LOCERR_RELOAD_MERGE_LOAD_ERROR"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_FTP_DROPPED"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_FTP_NO_PASSIVE_MODE"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_HTTP_DOWNLEVEL_SERVER"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_HTTP_INVALID_SERVER_RESPONSE"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_HTTP_REDIRECT_NEEDS_CONFIRMATION"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_FORCE_RETRY"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_CANNOT_CONNECT"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_CONNECTION_ABORTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_CONNECTION_RESET"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_DISCONNECTED"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_INCORRECT_FORMAT"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_INVALID_CA"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_INVALID_OPERATION"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_INVALID_URL"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_ITEM_NOT_FOUND"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_LOGIN_FAILURE"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_NAME_NOT_RESOLVED"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_NEED_UI"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_SEC_CERT_CN_INVALID"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_SEC_CERT_DATE_INVALID"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_SEC_CERT_ERRORS"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_SEC_INVALID_CERT"
          },
          {
            "$ref": "#/components/errors/LOCERR_WIN_INTERNET_SERVER_UNREACHABLE"
          },
          {
            "$ref": "#/components/errors/LOCERR_BM_RESULT_TOO_LARGE"
          }
        ]
      },
      "LOCERR_INTERNAL_ERROR": {
        "code": -128,
        "message": "Internal error"
      },
      "LOCERR_GENERIC_UNKNOWN": {
        "code": -1,
        "message": "Unknown error"
      },
      "LOCERR_GENERIC_OK": {
        "code": 0,
        "message": "OK"
      },
      "LOCERR_GENERIC_NOT_SET": {
        "code": 1,
        "message": "Resource not set"
      },
      "LOCERR_GENERIC_NOT_FOUND": {
        "code": 2,
        "message": "Resource not found"
      },
      "LOCERR_GENERIC_ALREADY_EXISTS": {
        "code": 3,
        "message": "Resource already exists"
      },
      "LOCERR_GENERIC_INVALID_PATH": {
        "code": 4,
        "message": "Invalid path"
      },
      "LOCERR_GENERIC_ACCESS_DENIED": {
        "code": 5,
        "message": "Access denied"
      },
      "LOCERR_GENERIC_OUT_OF_MEMORY": {
        "code": 6,
        "message": "Out of memory"
      },
      "LOCERR_GENERIC_NOT_INITIALIZED": {
        "code": 7,
        "message": "Not initialized"
      },
      "LOCERR_GENERIC_INVALID_PARAMETERS": {
        "code": 8,
        "message": "Invalid parameters"
      },
      "LOCERR_GENERIC_EMPTY_PARAMETERS": {
        "code": 9,
        "message": "Empty parameters"
      },
      "LOCERR_GENERIC_INTERNAL_ERROR": {
        "code": 10,
        "message": "Internal error"
      },
      "LOCERR_GENERIC_CORRUPT_DATA": {
        "code": 11,
        "message": "Corrupt data"
      },
      "LOCERR_GENERIC_MEMORY_INCONSISTENCY": {
        "code": 12,
        "message": "Memory inconsistency"
      },
      "LOCERR_GENERIC_INVISIBLE_OWNER_ABORT": {
        "code": 13,
        "message": "Invisible owner abort"
      },
      "LOCERR_GENERIC_PROHIBIT_VALIDATE": {
        "code": 14,
        "message": "Prohibit validate"
      },
      "LOCERR_GENERIC_ABORTED": {
        "code": 15,
        "message": "Request aborted"
      },
      "LOCERR_GENERIC_CONNECTION_LOST": {
        "code": 16,
        "message": "Unknown error"
      },
      "LOCERR_GENERIC_UNSUPPORTED_IN_PRODUCT_VERSION": {
        "code": 17,
        "message": "Unsupported in product version"
      },
      "LOCERR_GENERIC_REST_CONNECTION_FAILURE": {
        "code": 18,
        "message": "Unknown error"
      },
      "LOCERR_GENERIC_MEMORY_LIMIT_REACHED": {
        "code": 19,
        "message": "Memory limit reached"
      },
      "LOCERR_GENERIC_NOT_IMPLEMENTED": {
        "code": 20,
        "message": "Not implemented"
      },
      "LOCERR_GENERIC_ENGINE_TERMINATED": {
        "code": 21,
        "message": "Engine Terminated"
      },
      "LOCERR_GENERIC_WRITE_OPERATIONS_LIMIT_REACHED": {
        "code": 22,
        "message": "Write operations limit reached"
      },
      "LOCERR_HTTP_400": {
        "code": 400,
        "message": "Bad Request"
      },
      "LOCERR_HTTP_401": {
        "code": 401,
        "message": "Unauthorized"
      },
      "LOCERR_HTTP_402": {
        "code": 402,
        "message": "Payment Required"
      },
      "LOCERR_HTTP_403": {
        "code": 403,
        "message": "Forbidden"
      },
      "LOCERR_HTTP_404": {
        "code": 404,
        "message": "Not Found"
      },
      "LOCERR_HTTP_405": {
        "code": 405,
        "message": "Method Not Allowed"
      },
      "LOCERR_HTTP_406": {
        "code": 406,
        "message": "Not Acceptable"
      },
      "LOCERR_HTTP_407": {
        "code": 407,
        "message": "Proxy Authentication Required"
      },
      "LOCERR_HTTP_408": {
        "code": 408,
        "message": "Request Timeout"
      },
      "LOCERR_HTTP_409": {
        "code": 409,
        "message": "Conflict"
      },
      "LOCERR_HTTP_410": {
        "code": 410,
        "message": "Gone"
      },
      "LOCERR_HTTP_411": {
        "code": 411,
        "message": "Length Required"
      },
      "LOCERR_HTTP_412": {
        "code": 412,
        "message": "Precondition Failed"
      },
      "LOCERR_HTTP_413": {
        "code": 413,
        "message": "Request Entity Too Large"
      },
      "LOCERR_HTTP_414": {
        "code": 414,
        "message": "Request-URI Too Long"
      },
      "LOCERR_HTTP_415": {
        "code": 415,
        "message": "Unsupported Media Type"
      },
      "LOCERR_HTTP_416": {
        "code": 416,
        "message": "Requested Range Not Satisfiable"
      },
      "LOCERR_HTTP_417": {
        "code": 417,
        "message": "Expectation Failed"
      },
      "LOCERR_HTTP_422": {
        "code": 422,
        "message": "Unprocessable Entity"
      },
      "LOCERR_HTTP_423": {
        "code": 423,
        "message": "Unknown error"
      },
      "LOCERR_HTTP_429": {
        "code": 429,
        "message": "Too Many Requests"
      },
      "LOCERR_HTTP_500": {
        "code": 500,
        "message": "Internal Server Error"
      },
      "LOCERR_HTTP_501": {
        "code": 501,
        "message": "Not Implemented"
      },
      "LOCERR_HTTP_502": {
        "code": 502,
        "message": "Bad Gateway"
      },
      "LOCERR_HTTP_503": {
        "code": 503,
        "message": "Service Unavailable"
      },
      "LOCERR_HTTP_504": {
        "code": 504,
        "message": "Gateway Timeout"
      },
      "LOCERR_HTTP_505": {
        "code": 505,
        "message": "HTTP Version Not Supported"
      },
      "LOCERR_HTTP_509": {
        "code": 509,
        "message": "Bandwidth Limit Exceeded"
      },
      "LOCERR_HTTP_COULD_NOT_RESOLVE_HOST": {
        "code": 700,
        "message": "Host could not be resolved"
      },
      "LOCERR_APP_ALREADY_EXISTS": {
        "code": 1000,
        "message": "App already exists"
      },
      "LOCERR_APP_INVALID_NAME": {
        "code": 1001,
        "message": "Invalid app name"
      },
      "LOCERR_APP_ALREADY_OPEN": {
        "code": 1002,
        "message": "App already open"
      },
      "LOCERR_APP_NOT_FOUND": {
        "code": 1003,
        "message": "App not found"
      },
      "LOCERR_APP_IMPORT_FAILED": {
        "code": 1004,
        "message": "App import failed"
      },
      "LOCERR_APP_SAVE_FAILED": {
        "code": 1005,
        "message": "App save failed"
      },
      "LOCERR_APP_CREATE_FAILED": {
        "code": 1006,
        "message": "App creation failed"
      },
      "LOCERR_APP_INVALID": {
        "code": 1007,
        "message": "App invalid"
      },
      "LOCERR_APP_CONNECT_FAILED": {
        "code": 1008,
        "message": "Failed to connect to app"
      },
      "LOCERR_APP_ALREADY_OPEN_IN_DIFFERENT_MODE": {
        "code": 1009,
        "message": "App already open in different mode"
      },
      "LOCERR_APP_MIGRATION_COULD_NOT_CONTACT_MIGRATION_SERVICE": {
        "code": 1010,
        "message": "App migration service could not be contacted"
      },
      "LOCERR_APP_MIGRATION_COULD_NOT_START_MIGRATION": {
        "code": 1011,
        "message": "Could not start the app migration"
      },
      "LOCERR_APP_MIGRATION_FAILURE": {
        "code": 1012,
        "message": "Migration service could not migrate app"
      },
      "LOCERR_APP_SCRIPT_MISSING": {
        "code": 1013,
        "message": "Unknown error"
      },
      "LOCERR_APP_EXPORT_FAILED": {
        "code": 1014,
        "message": "App export failed"
      },
      "LOCERR_APP_SIZE_EXCEEDED": {
        "code": 1015,
        "message": "Static App size exceeded"
      },
      "LOCERR_APP_DIRECT_QUERY_WORKLOAD_NOT_SUPPORTED": {
        "code": 1016,
        "message": "Direct Query mode not supported"
      },
      "LOCERR_APP_NOT_OPEN": {
        "code": 1017,
        "message": "Unknown error"
      },
      "LOCERR_APP_EVENT_SOURCE_TIMEOUT": {
        "code": 1018,
        "message": "App event source timeout"
      },
      "LOCERR_CONNECTION_ALREADY_EXISTS": {
        "code": 2000,
        "message": "Connection already exists"
      },
      "LOCERR_CONNECTION_NOT_FOUND": {
        "code": 2001,
        "message": "Connection not found"
      },
      "LOCERR_CONNECTION_FAILED_TO_LOAD": {
        "code": 2002,
        "message": "Failed to load connection"
      },
      "LOCERR_CONNECTION_FAILED_TO_IMPORT": {
        "code": 2003,
        "message": "Failed to import connection"
      },
      "LOCERR_CONNECTION_NAME_IS_INVALID": {
        "code": 2004,
        "message": "Connection name is invalid. Should be 1-256 characters and not contain <>:\"/|?*"
      },
      "LOCERR_CONNECTION_MISSING_CREDENTIALS": {
        "code": 2005,
        "message": "Connection is missing credentials"
      },
      "LOCERR_CONNECTOR_NO_FILE_STREAMING_SUPPORT": {
        "code": 2300,
        "message": "Connector does not support file streaming"
      },
      "LOCERR_CONNECTOR_FILESIZE_EXCEEDED_BUFFER_SIZE": {
        "code": 2301,
        "message": "Data file size exceeded file streaming buffer size"
      },
      "LOCERR_FILE_ACCESS_DENIED": {
        "code": 3000,
        "message": "File access denied"
      },
      "LOCERR_FILE_NAME_INVALID": {
        "code": 3001,
        "message": "Invalid file name"
      },
      "LOCERR_FILE_CORRUPT": {
        "code": 3002,
        "message": "File corrupted"
      },
      "LOCERR_FILE_NOT_FOUND": {
        "code": 3003,
        "message": "File not found"
      },
      "LOCERR_FILE_FORMAT_UNSUPPORTED": {
        "code": 3004,
        "message": "Unsupported file format version"
      },
      "LOCERR_FILE_OPENED_IN_UNSUPPORTED_MODE": {
        "code": 3005,
        "message": "File opened in unsupported mode"
      },
      "LOCERR_FILE_TABLE_NOT_FOUND": {
        "code": 3006,
        "message": "Table not found"
      },
      "LOCERR_USER_ACCESS_DENIED": {
        "code": 4000,
        "message": "User access denied"
      },
      "LOCERR_USER_IMPERSONATION_FAILED": {
        "code": 4001,
        "message": "User impersonation failed"
      },
      "LOCERR_SERVER_OUT_OF_SESSION_AND_USER_CALS": {
        "code": 5000,
        "message": "Server out of session and usage cals"
      },
      "LOCERR_SERVER_OUT_OF_SESSION_CALS": {
        "code": 5001,
        "message": "File not found"
      },
      "LOCERR_SERVER_OUT_OF_USAGE_CALS": {
        "code": 5002,
        "message": "File not found"
      },
      "LOCERR_SERVER_OUT_OF_CALS": {
        "code": 5003,
        "message": "Server out of cals"
      },
      "LOCERR_SERVER_OUT_OF_NAMED_CALS": {
        "code": 5004,
        "message": "Server out of named cals"
      },
      "LOCERR_SERVER_OFF_DUTY": {
        "code": 5005,
        "message": "Server off duty"
      },
      "LOCERR_SERVER_BUSY": {
        "code": 5006,
        "message": "Server busy"
      },
      "LOCERR_SERVER_LICENSE_EXPIRED": {
        "code": 5007,
        "message": "License has expired"
      },
      "LOCERR_SERVER_AJAX_DISABLED": {
        "code": 5008,
        "message": "Ajax disabled"
      },
      "LOCERR_SERVER_NO_TOKEN": {
        "code": 5009,
        "message": "No user license available for the user of this session"
      },
      "LOCERR_HC_INVALID_OBJECT": {
        "code": 6000,
        "message": "Invalid hypercube object"
      },
      "LOCERR_HC_RESULT_TOO_LARGE": {
        "code": 6001,
        "message": "Result too large"
      },
      "LOCERR_HC_INVALID_OBJECT_STATE": {
        "code": 6002,
        "message": "Invalid hypercube object state"
      },
      "LOCERR_HC_MODAL_OBJECT_ERROR": {
        "code": 6003,
        "message": "Function not allowed on this object in app modal mode"
      },
      "LOCERR_CALC_INVALID_DEF": {
        "code": 7000,
        "message": "All expressions disabled"
      },
      "LOCERR_CALC_NOT_IN_LIB": {
        "code": 7001,
        "message": "Dimension or measure not in library"
      },
      "LOCERR_CALC_HEAP_ERROR": {
        "code": 7002,
        "message": "Out of object memory"
      },
      "LOCERR_CALC_TOO_LARGE": {
        "code": 7003,
        "message": "Too many cells"
      },
      "LOCERR_CALC_TIMEOUT": {
        "code": 7004,
        "message": "Calculation timed out"
      },
      "LOCERR_CALC_EVAL_CONDITION_FAILED": {
        "code": 7005,
        "message": "Calculation condition unfulfilled"
      },
      "LOCERR_CALC_MIXED_LINKED_AGGREGATION": {
        "code": 7006,
        "message": "Mixed DBMS and in-memory aggregation is not supported"
      },
      "LOCERR_CALC_MISSING_LINKED": {
        "code": 7007,
        "message": "Direct query attempted against missing or non-direct table"
      },
      "LOCERR_CALC_INVALID_COL_SORT": {
        "code": 7008,
        "message": "Invalid properties sort order"
      },
      "LOCERR_CALC_PAGES_TOO_LARGE": {
        "code": 7009,
        "message": "Calculation pages too large"
      },
      "LOCERR_CALC_SEMANTIC_FIELD_NOT_ALLOWED": {
        "code": 7010,
        "message": "Semantic fields not allowed in calculation"
      },
      "LOCERR_CALC_VALIDATION_STATE_INVALID": {
        "code": 7011,
        "message": "The object is not in a valid data state"
      },
      "LOCERR_CALC_PIVOT_DIMENSIONS_ALREADY_EXISTS": {
        "code": 7012,
        "message": "The pivot dimensions already exist"
      },
      "LOCERR_CALC_MISSING_LINKED_FIELD": {
        "code": 7013,
        "message": "A direct table field is missing"
      },
      "LOCERR_CALC_NOT_CALCULATED": {
        "code": 7014,
        "message": "A calculation condition stopped the calculation"
      },
      "LOCERR_LAYOUT_EXTENDS_INVALID_ID": {
        "code": 8000,
        "message": "Invalid extends id for properties"
      },
      "LOCERR_LAYOUT_LINKED_OBJECT_NOT_FOUND": {
        "code": 8001,
        "message": "Linked object not found on layout"
      },
      "LOCERR_LAYOUT_LINKED_OBJECT_INVALID": {
        "code": 8002,
        "message": "Invalid linked object"
      },
      "LOCERR_PERSISTENCE_WRITE_FAILED": {
        "code": 9000,
        "message": "Write Failed"
      },
      "LOCERR_PERSISTENCE_READ_FAILED": {
        "code": 9001,
        "message": "Read Failed"
      },
      "LOCERR_PERSISTENCE_DELETE_FAILED": {
        "code": 9002,
        "message": "Delete Failed"
      },
      "LOCERR_PERSISTENCE_NOT_FOUND": {
        "code": 9003,
        "message": "Resource not found"
      },
      "LOCERR_PERSISTENCE_UNSUPPORTED_VERSION": {
        "code": 9004,
        "message": "Unsupported version"
      },
      "LOCERR_PERSISTENCE_MIGRATION_FAILED_READ_ONLY": {
        "code": 9005,
        "message": "Migration failed since the file was write protected"
      },
      "LOCERR_PERSISTENCE_MIGRATION_CANCELLED": {
        "code": 9006,
        "message": "Migration was aborted"
      },
      "LOCERR_PERSISTENCE_MIGRATION_BACKUP_FAILED": {
        "code": 9007,
        "message": "Backup of original file failed when migrating"
      },
      "LOCERR_PERSISTENCE_DISK_FULL": {
        "code": 9008,
        "message": "The disk is out of space"
      },
      "LOCERR_PERSISTENCE_NOT_SUPPORTED_FOR_SESSION_APP": {
        "code": 9009,
        "message": "Unknown error"
      },
      "LOCERR_PERSISTENCE_MOVE_FAILED": {
        "code": 9010,
        "message": "Unknown error"
      },
      "LOCERR_PERSISTENCE_OBJECT_LOCKED": {
        "code": 9011,
        "message": "Object locked"
      },
      "LOCERR_PERSISTENCE_ENCRYPTION_KEY_MIGRATION_ONGOING": {
        "code": 9012,
        "message": "Encryption key migration ongoing"
      },
      "LOCERR_PERSISTENCE_SYNC_SET_CHUNK_INVALID_PARAMETERS": {
        "code": 9510,
        "message": "Invalid parameters to SetChunk"
      },
      "LOCERR_PERSISTENCE_SYNC_GET_CHUNK_INVALID_PARAMETERS": {
        "code": 9511,
        "message": "Invalid parameters to GetChunk"
      },
      "LOCERR_SCRIPT_DATASOURCE_ACCESS_DENIED": {
        "code": 10000,
        "message": "Data source access denied"
      },
      "LOCERR_RELOAD_IN_PROGRESS": {
        "code": 11000,
        "message": "Reload in progress"
      },
      "LOCERR_RELOAD_TABLE_X_NOT_FOUND": {
        "code": 11001,
        "message": "Table '{0}' not found"
      },
      "LOCERR_RELOAD_UNKNOWN_STATEMENT": {
        "code": 11002,
        "message": "Unknown statement: {0}"
      },
      "LOCERR_RELOAD_EXPECTED_SOMETHING_FOUND_UNKNOWN": {
        "code": 11003,
        "message": "Unexpected token: {0}"
      },
      "LOCERR_RELOAD_EXPECTED_NOTHING_FOUND_UNKNOWN": {
        "code": 11004,
        "message": "Unexpected token: '{0}', expected nothing"
      },
      "LOCERR_RELOAD_EXPECTED_ONE_OF_1_TOKENS_FOUND_UNKNOWN": {
        "code": 11005,
        "message": "Unexpected token: '{0}', expected: '{1}'"
      },
      "LOCERR_RELOAD_EXPECTED_ONE_OF_2_TOKENS_FOUND_UNKNOWN": {
        "code": 11006,
        "message": "Unexpected token: '{0}', expected one of: '{1}', '{2}'"
      },
      "LOCERR_RELOAD_EXPECTED_ONE_OF_3_TOKENS_FOUND_UNKNOWN": {
        "code": 11007,
        "message": "Unexpected token: '{0}', expected one of: '{1}', '{2}', '{3}'"
      },
      "LOCERR_RELOAD_EXPECTED_ONE_OF_4_TOKENS_FOUND_UNKNOWN": {
        "code": 11008,
        "message": "Unexpected token: '{0}', expected one of: '{1}', '{2}', '{3}', '{4}'"
      },
      "LOCERR_RELOAD_EXPECTED_ONE_OF_5_TOKENS_FOUND_UNKNOWN": {
        "code": 11009,
        "message": "Unexpected token: '{0}', expected one of: '{1}', '{2}', '{3}', '{4}', '{5}'"
      },
      "LOCERR_RELOAD_EXPECTED_ONE_OF_6_TOKENS_FOUND_UNKNOWN": {
        "code": 11010,
        "message": "Unexpected token: '{0}', expected one of: '{1}', '{2}', '{3}', '{4}', '{5}', '{6}'"
      },
      "LOCERR_RELOAD_EXPECTED_ONE_OF_7_TOKENS_FOUND_UNKNOWN": {
        "code": 11011,
        "message": "Unexpected token: '{0}', expected one of: '{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}'"
      },
      "LOCERR_RELOAD_EXPECTED_ONE_OF_8_OR_MORE_TOKENS_FOUND_UNKNOWN": {
        "code": 11012,
        "message": "Unexpected token: '{0}', expected one of: '{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}', ..."
      },
      "LOCERR_RELOAD_FIELD_X_NOT_FOUND": {
        "code": 11013,
        "message": "Field '{0}' not found"
      },
      "LOCERR_RELOAD_MAPPING_TABLE_X_NOT_FOUND": {
        "code": 11014,
        "message": "Mapping table '{0}' not found"
      },
      "LOCERR_RELOAD_LIB_CONNECTION_X_NOT_FOUND": {
        "code": 11015,
        "message": "Connection '{0}' not found"
      },
      "LOCERR_RELOAD_NAME_ALREADY_TAKEN": {
        "code": 11016,
        "message": "The name '{0}' already exists."
      },
      "LOCERR_RELOAD_WRONG_FILE_FORMAT_DIF": {
        "code": 11017,
        "message": "Unsupported or bad format in DIF file"
      },
      "LOCERR_RELOAD_WRONG_FILE_FORMAT_BIFF": {
        "code": 11018,
        "message": "Unsupported or bad format in BIFF file"
      },
      "LOCERR_RELOAD_WRONG_FILE_FORMAT_ENCRYPTED": {
        "code": 11019,
        "message": "Cannot read file because it is encrypted"
      },
      "LOCERR_RELOAD_OPEN_FILE_ERROR": {
        "code": 11020,
        "message": "Cannot open file: '{0}'"
      },
      "LOCERR_RELOAD_AUTO_GENERATE_COUNT": {
        "code": 11021,
        "message": "Invalid Autogenerate count: {0}"
      },
      "LOCERR_RELOAD_PE_ILLEGAL_PREFIX_COMB": {
        "code": 11022,
        "message": "Illegal combination of prefixes"
      },
      "LOCERR_RELOAD_MATCHING_CONTROL_STATEMENT_ERROR": {
        "code": 11023,
        "message": "The control statement is not correctly matched with its corresponding start statement."
      },
      "LOCERR_RELOAD_MATCHING_LIBPATH_X_NOT_FOUND": {
        "code": 11024,
        "message": "Connection not found: {0}"
      },
      "LOCERR_RELOAD_MATCHING_LIBPATH_X_INVALID": {
        "code": 11025,
        "message": "Connection {0} is invalid"
      },
      "LOCERR_RELOAD_MATCHING_LIBPATH_X_OUTSIDE": {
        "code": 11026,
        "message": "The path '{0}' is outside the folder defined by the connection"
      },
      "LOCERR_RELOAD_NO_QUALIFIED_PATH_FOR_FILE": {
        "code": 11027,
        "message": "No qualified path for file: {0}"
      },
      "LOCERR_RELOAD_MODE_STATEMENT_ONLY_FOR_LIB_PATHS": {
        "code": 11028,
        "message": "This statement only works with lib:// paths in this script mode"
      },
      "LOCERR_RELOAD_INCONSISTENT_USE_OF_SEMANTIC_FIELDS": {
        "code": 11029,
        "message": "Inconsistent use of semantic fields"
      },
      "LOCERR_RELOAD_NO_OPEN_DATABASE": {
        "code": 11030,
        "message": "There is no open data connection."
      },
      "LOCERR_RELOAD_AGGREGATION_REQUIRED_BY_GROUP_BY": {
        "code": 11031,
        "message": "Aggregation expressions required by GROUP BY clause."
      },
      "LOCERR_RELOAD_CONNECT_MUST_USE_LIB_PREFIX_IN_THIS_MODE": {
        "code": 11032,
        "message": "CONNECTs other than LIB CONNECT are not available in this script mode."
      },
      "LOCERR_RELOAD_ODBC_CONNECT_FAILED": {
        "code": 11033,
        "message": "ODBC connection failed"
      },
      "LOCERR_RELOAD_OLEDB_CONNECT_FAILED": {
        "code": 11034,
        "message": "OLEDB connection failed"
      },
      "LOCERR_RELOAD_CUSTOM_CONNECT_FAILED": {
        "code": 11035,
        "message": "Custom connection failed"
      },
      "LOCERR_RELOAD_ODBC_READ_FAILED": {
        "code": 11036,
        "message": "ODBC read failed"
      },
      "LOCERR_RELOAD_OLEDB_READ_FAILED": {
        "code": 11037,
        "message": "OLEDB read failed"
      },
      "LOCERR_RELOAD_CUSTOM_READ_FAILED": {
        "code": 11038,
        "message": "Custom read failed"
      },
      "LOCERR_RELOAD_BINARY_LOAD_PROHIBITED": {
        "code": 11039,
        "message": "Binary Load is not allowed on: {0}"
      },
      "LOCERR_RELOAD_CONNECTOR_START_FAILED": {
        "code": 11040,
        "message": "Failed to start connector: {0}"
      },
      "LOCERR_RELOAD_CONNECTOR_NOT_RESPONDING": {
        "code": 11041,
        "message": "Connector is not responding"
      },
      "LOCERR_RELOAD_CONNECTOR_REPLY_ERROR": {
        "code": 11042,
        "message": "Connector reply error: {0}"
      },
      "LOCERR_RELOAD_CONNECTOR_CONNECT_ERROR": {
        "code": 11043,
        "message": "Connector connect error: {0}"
      },
      "LOCERR_RELOAD_CONNECTOR_NOT_FOUND_ERROR": {
        "code": 11044,
        "message": "Connector {0} not found"
      },
      "LOCERR_RELOAD_INPUT_FIELD_WITH_DUPLICATE_KEYS": {
        "code": 11045,
        "message": "Duplicate keys when loading Input Field {0}"
      },
      "LOCERR_RELOAD_CONCATENATE_LOAD_NO_PREVIOUS_TABLE": {
        "code": 11046,
        "message": "No previous table for concatenate load."
      },
      "LOCERR_RELOAD_WRONG_FILE_FORMAT_QVD": {
        "code": 11047,
        "message": "Unsupported or bad format in QVD file"
      },
      "LOCERR_RELOAD_ACTION_BLOCKED_ENTITLEMENT": {
        "code": 11048,
        "message": "Action is blocked due to that an entitlement quota limit has been reached."
      },
      "LOCERR_PERSONAL_NEW_VERSION_AVAILABLE": {
        "code": 12000,
        "message": "New Qlik Sense Desktop version available"
      },
      "LOCERR_PERSONAL_VERSION_EXPIRED": {
        "code": 12001,
        "message": "This engine has expired"
      },
      "LOCERR_PERSONAL_SECTION_ACCESS_DETECTED": {
        "code": 12002,
        "message": "Section access detected when opening an app"
      },
      "LOCERR_PERSONAL_APP_DELETION_FAILED": {
        "code": 12003,
        "message": "Unknown error"
      },
      "LOCERR_USER_AUTHENTICATION_FAILURE": {
        "code": 12004,
        "message": "User authentication failure"
      },
      "LOCERR_EXPORT_OUT_OF_MEMORY": {
        "code": 13000,
        "message": "Out of memory"
      },
      "LOCERR_EXPORT_NO_DATA": {
        "code": 13001,
        "message": "No data"
      },
      "LOCERR_SYNC_INVALID_OFFSET": {
        "code": 14000,
        "message": "Unknown error"
      },
      "LOCERR_SEARCH_TIMEOUT": {
        "code": 15000,
        "message": "Search timeout"
      },
      "LOCERR_DIRECT_DISCOVERY_LINKED_EXPRESSION_FAIL": {
        "code": 16000,
        "message": "Direct Discovery expression failed"
      },
      "LOCERR_DIRECT_DISCOVERY_ROWCOUNT_OVERFLOW": {
        "code": 16001,
        "message": "Direct Discovery row count overflow"
      },
      "LOCERR_DIRECT_DISCOVERY_EMPTY_RESULT": {
        "code": 16002,
        "message": "Unknown error"
      },
      "LOCERR_DIRECT_DISCOVERY_DB_CONNECTION_FAILED": {
        "code": 16003,
        "message": "Database connection failed"
      },
      "LOCERR_DIRECT_DISCOVERY_MEASURE_NOT_ALLOWED": {
        "code": 16004,
        "message": "Unknown error"
      },
      "LOCERR_DIRECT_DISCOVERY_DETAIL_NOT_ALLOWED": {
        "code": 16005,
        "message": "Unknown error"
      },
      "LOCERR_DIRECT_DISCOVERY_NOT_SYNTH_CIRCULAR_ALLOWED": {
        "code": 16006,
        "message": "Unknown error"
      },
      "LOCERR_DIRECT_DISCOVERY_ONLY_ONE_DD_TABLE_ALLOWED": {
        "code": 16007,
        "message": "Unknown error"
      },
      "LOCERR_DIRECT_DISCOVERY_DB_AUTHORIZATION_FAILED": {
        "code": 16008,
        "message": "Unknown error"
      },
      "LOCERR_SMART_LOAD_TABLE_NOT_FOUND": {
        "code": 17000,
        "message": "Table not found in current App"
      },
      "LOCERR_SMART_LOAD_TABLE_DUPLICATED": {
        "code": 17001,
        "message": "Found duplicated table names"
      },
      "LOCERR_VARIABLE_NO_NAME": {
        "code": 18000,
        "message": "Variable must have a name"
      },
      "LOCERR_VARIABLE_DUPLICATE_NAME": {
        "code": 18001,
        "message": "Variable already exists"
      },
      "LOCERR_VARIABLE_INCONSISTENCY": {
        "code": 18002,
        "message": "Variable inconsistency"
      },
      "LOCERR_VARIABLE_CONSTRAINT_INCONSISTENCY": {
        "code": 18003,
        "message": "Variable constraint inconsistency"
      },
      "LOCERR_VARIABLE_CONSTRAINT_FAILED": {
        "code": 18004,
        "message": "Variable constraint failed"
      },
      "LOCERR_MEDIA_LIBRARY_LIST_FAILED": {
        "code": 19000,
        "message": "Failed getting list of content libraries"
      },
      "LOCERR_MEDIA_LIBRARY_CONTENT_FAILED": {
        "code": 19001,
        "message": "Failed getting list of library content"
      },
      "LOCERR_MEDIA_BUNDLING_FAILED": {
        "code": 19002,
        "message": "Media bundling failed"
      },
      "LOCERR_MEDIA_UNBUNDLING_FAILED": {
        "code": 19003,
        "message": "Media unbundling failed"
      },
      "LOCERR_MEDIA_LIBRARY_NOT_FOUND": {
        "code": 19004,
        "message": "Content library not found"
      },
      "LOCERR_FEATURE_DISABLED": {
        "code": 20000,
        "message": "Feature disabled"
      },
      "LOCERR_LOAD_TOO_MANY_FIELDS": {
        "code": 21000,
        "message": "Too many fields in file"
      },
      "LOCERR_LOAD_TOO_MANY_TABLES": {
        "code": 21001,
        "message": "Too many tables in file"
      },
      "LOCERR_JSON_RPC_INVALID_REQUEST": {
        "code": -32600,
        "message": "Invalid JSON request"
      },
      "LOCERR_JSON_RPC_METHOD_NOT_FOUND": {
        "code": -32601,
        "message": "Method does not exist"
      },
      "LOCERR_JSON_RPC_INVALID_PARAMETERS": {
        "code": -32602,
        "message": "Invalid method parameter(s)"
      },
      "LOCERR_JSON_RPC_INTERNAL_ERROR": {
        "code": -32603,
        "message": "Internal JSON-RPC error"
      },
      "LOCERR_JSON_RPC_RESPONSE_TOO_LARGE": {
        "code": -32604,
        "message": "Response too large"
      },
      "LOCERR_JSON_RPC_PARSE_ERROR": {
        "code": -32700,
        "message": "JSON parse error"
      },
      "LOCERR_MQ_SOCKET_CONNECT_FAILURE": {
        "code": 33000,
        "message": "Unknown error"
      },
      "LOCERR_MQ_SOCKET_OPEN_FAILURE": {
        "code": 33001,
        "message": "Unknown error"
      },
      "LOCERR_MQ_PROTOCOL_NO_RESPONE": {
        "code": 33002,
        "message": "Unknown error"
      },
      "LOCERR_MQ_PROTOCOL_LIBRARY_EXCEPTION": {
        "code": 33003,
        "message": "Unknown error"
      },
      "LOCERR_MQ_PROTOCOL_CONNECTION_CLOSED": {
        "code": 33004,
        "message": "Unknown error"
      },
      "LOCERR_MQ_PROTOCOL_CHANNEL_CLOSED": {
        "code": 33005,
        "message": "Unknown error"
      },
      "LOCERR_MQ_PROTOCOL_UNKNOWN_ERROR": {
        "code": 33006,
        "message": "Unknown error"
      },
      "LOCERR_MQ_PROTOCOL_INVALID_STATUS": {
        "code": 33007,
        "message": "Unknown error"
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_OK": {
        "code": 22000,
        "message": "OK"
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_CANCELLED": {
        "code": 22001,
        "message": "Operation cancelled."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_UNKNOWN": {
        "code": 22002,
        "message": "Unknown error."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_INVALID_ARGUMENT": {
        "code": 22003,
        "message": "Invalid argument."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_DEADLINE_EXCEEDED": {
        "code": 22004,
        "message": "Deadline exceeded."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_NOT_FOUND": {
        "code": 22005,
        "message": "Resource not found."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_ALREADY_EXISTS": {
        "code": 22006,
        "message": "Resource already exists."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_PERMISSION_DENIED": {
        "code": 22007,
        "message": "Permission Denied."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_RESOURCE_EXHAUSTED": {
        "code": 22008,
        "message": "Resource exhausted."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_FAILED_PRECONDITION": {
        "code": 22009,
        "message": "Operation rejected, failed precondition."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_ABORTED": {
        "code": 22010,
        "message": "Operation aborted."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_OUT_OF_RANGE": {
        "code": 22011,
        "message": "Operation out of range."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_UNIMPLEMENTED": {
        "code": 22012,
        "message": "Operation not implemented."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_INTERNAL": {
        "code": 22013,
        "message": "Internal error."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_UNAVAILABLE": {
        "code": 22014,
        "message": "Service unavailable."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_DATA_LOSS": {
        "code": 22015,
        "message": "Unrecoverable data loss or corruption."
      },
      "LOCERR_EXTENGINE_GRPC_STATUS_UNAUTHENTICATED": {
        "code": 22016,
        "message": "Invalid authentication."
      },
      "LOCERR_LXW_INVALID_OBJ": {
        "code": 23001,
        "message": "Invalid xlsx object."
      },
      "LOCERR_LXW_INVALID_FILE": {
        "code": 23002,
        "message": "Invalid xlsx file."
      },
      "LOCERR_LXW_INVALID_SHEET": {
        "code": 23003,
        "message": "Invalid xlsx sheet."
      },
      "LOCERR_LXW_INVALID_EXPORT_RANGE": {
        "code": 23004,
        "message": "Invalid xlsx export range."
      },
      "LOCERR_LXW_ERROR": {
        "code": 23005,
        "message": "General error with xlsx writing."
      },
      "LOCERR_LXW_ERROR_MEMORY_MALLOC_FAILED": {
        "code": 23006,
        "message": "Can not allocate memory when writing xlsx file."
      },
      "LOCERR_LXW_ERROR_CREATING_XLSX_FILE": {
        "code": 23007,
        "message": "Error creating output xlsx file. Usually a permissions error."
      },
      "LOCERR_LXW_ERROR_CREATING_TMPFILE": {
        "code": 23008,
        "message": "Error encountered when creating a tmpfile during file assembly."
      },
      "LOCERR_LXW_ERROR_ZIP_FILE_OPERATION": {
        "code": 23009,
        "message": "Zlib error with a file operation while creating xlsx file."
      },
      "LOCERR_LXW_ERROR_ZIP_FILE_ADD": {
        "code": 23010,
        "message": "Zlib error when adding sub file to xlsx file."
      },
      "LOCERR_LXW_ERROR_ZIP_CLOSE": {
        "code": 23011,
        "message": "Zlib error when closing xlsx file."
      },
      "LOCERR_LXW_ERROR_NULL_PARAMETER_IGNORED": {
        "code": 23012,
        "message": "NULL function parameter ignored."
      },
      "LOCERR_LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED": {
        "code": 23013,
        "message": "String exceeds Excel's limit of 32,767 characters."
      },
      "LOCERR_LXW_ERROR_255_STRING_LENGTH_EXCEEDED": {
        "code": 23014,
        "message": "Parameter exceeds Excel's limit of 255 characters."
      },
      "LOCERR_LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND": {
        "code": 23015,
        "message": "Error finding internal string index."
      },
      "LOCERR_LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE": {
        "code": 23016,
        "message": "Worksheet row or column index out of range."
      },
      "LOCERR_LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED": {
        "code": 23017,
        "message": "Maximum number of worksheet URLs (65530) exceeded."
      },
      "LOCERR_BDI_STATUS_OK": {
        "code": 24000,
        "message": "OK"
      },
      "LOCERR_BDI_GENERIC_ERROR_NOT_TRANSLATED": {
        "code": 24001,
        "message": "Direct Query Mode error"
      },
      "LOCERR_TRENDLINE_INVALID_DEF": {
        "code": 25000,
        "message": "Invalid trendline def"
      },
      "LOCERR_TRENDLINE_INVALID_MATH_ERROR": {
        "code": 25001,
        "message": "Math error"
      },
      "LOCERR_CURL_UNSUPPORTED_PROTOCOL": {
        "code": 30000,
        "message": "Provided URL use an unsupported protocol"
      },
      "LOCERR_CURL_COULDNT_RESOLVE_PROXY": {
        "code": 30001,
        "message": "Provided proxy can not be resolved"
      },
      "LOCERR_CURL_COULDNT_CONNECT": {
        "code": 30002,
        "message": "Failed to connect to host or proxy"
      },
      "LOCERR_CURL_REMOTE_ACCESS_DENIED": {
        "code": 30003,
        "message": "Access denied for resource in the URL"
      },
      "LOCERR_CURL_FTP_ACCEPT_FAILED": {
        "code": 30004,
        "message": "FTP accept failed"
      },
      "LOCERR_CURL_FTP_ACCEPT_TIMEOUT": {
        "code": 30005,
        "message": "FTP accept timeout"
      },
      "LOCERR_CURL_FTP_CANT_GET_HOST": {
        "code": 30006,
        "message": "FTP can not get the host"
      },
      "LOCERR_CURL_PARTIAL_FILE": {
        "code": 30007,
        "message": "File transfer did not match the expected transfer size"
      },
      "LOCERR_CURL_QUOTE_ERROR": {
        "code": 30008,
        "message": "Custom QUOTE commands failed"
      },
      "LOCERR_CURL_WRITE_ERROR": {
        "code": 30009,
        "message": "Write failed"
      },
      "LOCERR_CURL_UPLOAD_FAILED": {
        "code": 30010,
        "message": "Upload failed"
      },
      "LOCERR_CURL_OUT_OF_MEMORY": {
        "code": 30011,
        "message": "Memory allocation failed"
      },
      "LOCERR_CURL_OPERATION_TIMEDOUT": {
        "code": 30012,
        "message": "Operation timeout"
      },
      "LOCERR_CURL_FTP_COULDNT_USE_REST": {
        "code": 30013,
        "message": "FTP REST command failed"
      },
      "LOCERR_CURL_HTTP_POST_ERROR": {
        "code": 30014,
        "message": "POST command failed"
      },
      "LOCERR_CURL_SSL_CONNECT_ERROR": {
        "code": 30015,
        "message": "SSL/TSL handshake failed. Certificates and/or passwords are invalid"
      },
      "LOCERR_CURL_FILE_COULDNT_READ_FILE": {
        "code": 30016,
        "message": "File read failed"
      },
      "LOCERR_CURL_LDAP_CANNOT_BIND": {
        "code": 30017,
        "message": "LDAP bind failed"
      },
      "LOCERR_CURL_LDAP_SEARCH_FAILED": {
        "code": 30018,
        "message": "LDAP search failed"
      },
      "LOCERR_CURL_TOO_MANY_REDIRECTS": {
        "code": 30019,
        "message": "Failure due to too many redirects"
      },
      "LOCERR_CURL_PEER_FAILED_VERIFICATION": {
        "code": 30020,
        "message": "SSL certificate or SSH md5 fingerprint failed to verify"
      },
      "LOCERR_CURL_GOT_NOTHING": {
        "code": 30021,
        "message": "Got nothing from remote server"
      },
      "LOCERR_CURL_SSL_ENGINE_NOTFOUND": {
        "code": 30022,
        "message": "Specified crypto engine not found"
      },
      "LOCERR_CURL_SSL_ENGINE_SETFAILED": {
        "code": 30023,
        "message": "Failed to set the selected SSL crypto engine"
      },
      "LOCERR_CURL_SSL_CERTPROBLEM": {
        "code": 30024,
        "message": "Problem with the local client certificate"
      },
      "LOCERR_CURL_SSL_CIPHER": {
        "code": 30025,
        "message": "Specified cipher can not be used"
      },
      "LOCERR_CURL_SSL_CACERT": {
        "code": 30026,
        "message": "Peer certificate cannot be authenticated"
      },
      "LOCERR_CURL_BAD_CONTENT_ENCODING": {
        "code": 30027,
        "message": "Bad content encoding"
      },
      "LOCERR_CURL_LDAP_INVALID_URL": {
        "code": 30028,
        "message": "Invalid LDAP URL"
      },
      "LOCERR_CURL_USE_SSL_FAILED": {
        "code": 30029,
        "message": "Requested FTP SSL level failed"
      },
      "LOCERR_CURL_SSL_ENGINE_INITFAILED": {
        "code": 30030,
        "message": "Initiating the SSL Engine failed"
      },
      "LOCERR_CURL_LOGIN_DENIED": {
        "code": 30031,
        "message": "Remote server login denied"
      },
      "LOCERR_CURL_TFTP_NOTFOUND": {
        "code": 30032,
        "message": "File on FTP server not found"
      },
      "LOCERR_CURL_TFTP_ILLEGAL": {
        "code": 30033,
        "message": "Illegal TFTP operation"
      },
      "LOCERR_CURL_SSH": {
        "code": 30034,
        "message": "Error occurred during SSH session"
      },
      "LOCERR_SETEXPRESSION_TOO_LARGE": {
        "code": 30100,
        "message": "Set analysis expression too large"
      },
      "LOCERR_RELOAD_MERGE_LOAD_ERROR": {
        "code": 30101,
        "message": "Merge Load error: {0}"
      },
      "LOCERR_WIN_FTP_DROPPED": {
        "code": 30200,
        "message": "The FTP operation was not completed because the session was aborted"
      },
      "LOCERR_WIN_FTP_NO_PASSIVE_MODE": {
        "code": 30201,
        "message": "Passive mode is not available on the server"
      },
      "LOCERR_WIN_HTTP_DOWNLEVEL_SERVER": {
        "code": 30210,
        "message": "The server did not return any headers"
      },
      "LOCERR_WIN_HTTP_INVALID_SERVER_RESPONSE": {
        "code": 30211,
        "message": "The server response could not be parsed"
      },
      "LOCERR_WIN_HTTP_REDIRECT_NEEDS_CONFIRMATION": {
        "code": 30212,
        "message": "The redirection requires user confirmation"
      },
      "LOCERR_WIN_INTERNET_FORCE_RETRY": {
        "code": 30220,
        "message": "The function needs to redo the request"
      },
      "LOCERR_WIN_INTERNET_CANNOT_CONNECT": {
        "code": 30221,
        "message": "The attempt to connect to the server failed"
      },
      "LOCERR_WIN_INTERNET_CONNECTION_ABORTED": {
        "code": 30222,
        "message": "The connection with the server has been terminated"
      },
      "LOCERR_WIN_INTERNET_CONNECTION_RESET": {
        "code": 30223,
        "message": "The connection with the server has been reset"
      },
      "LOCERR_WIN_INTERNET_DISCONNECTED": {
        "code": 30224,
        "message": "The Internet connection has been lost"
      },
      "LOCERR_WIN_INTERNET_INCORRECT_FORMAT": {
        "code": 30225,
        "message": "The format of the request is invalid"
      },
      "LOCERR_WIN_INTERNET_INVALID_CA": {
        "code": 30226,
        "message": "The function is unfamiliar with the Certificate Authority that generated the server's certificate"
      },
      "LOCERR_WIN_INTERNET_INVALID_OPERATION": {
        "code": 30227,
        "message": "The requested operation is invalid"
      },
      "LOCERR_WIN_INTERNET_INVALID_URL": {
        "code": 30228,
        "message": "The URL is invalid"
      },
      "LOCERR_WIN_INTERNET_ITEM_NOT_FOUND": {
        "code": 30229,
        "message": "The requested item could not be located"
      },
      "LOCERR_WIN_INTERNET_LOGIN_FAILURE": {
        "code": 30230,
        "message": "The request to connect and log on to an FTP server failed"
      },
      "LOCERR_WIN_INTERNET_NAME_NOT_RESOLVED": {
        "code": 30231,
        "message": "The server name could not be resolved"
      },
      "LOCERR_WIN_INTERNET_NEED_UI": {
        "code": 30232,
        "message": "A user interface or other blocking operation has been requested"
      },
      "LOCERR_WIN_INTERNET_SEC_CERT_CN_INVALID": {
        "code": 30233,
        "message": "SSL certificate common name(host name field) is incorrect. For example, if you entered www.server.com, and the common name on the certificate says www.different.com"
      },
      "LOCERR_WIN_INTERNET_SEC_CERT_DATE_INVALID": {
        "code": 30234,
        "message": "SSL certificate date that was received from the server is invalid. The certificate has expired"
      },
      "LOCERR_WIN_INTERNET_SEC_CERT_ERRORS": {
        "code": 30235,
        "message": "The SSL certificate contains errors"
      },
      "LOCERR_WIN_INTERNET_SEC_INVALID_CERT": {
        "code": 30236,
        "message": "The SSL certificate is invalid"
      },
      "LOCERR_WIN_INTERNET_SERVER_UNREACHABLE": {
        "code": 30237,
        "message": "The website or server indicated is unreachable"
      },
      "LOCERR_BM_RESULT_TOO_LARGE": {
        "code": 31000,
        "message": "Unknown error"
      }
    }
  },
  "x-qlik-visibility": "public",
  "x-qlik-stability": "locked"
}