{
  "info": {
    "title": "di-projects",
    "version": ""
  },
  "paths": {
    "/api/v1/di-projects": {
      "get": {
        "tags": [
          "data project"
        ],
        "summary": "List projects",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListDiProjectsRsp"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "query",
            "name": "spaceId",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by space id"
          }
        ],
        "description": "List data integration projects.",
        "operationId": "list_projects",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "1",
          "limit": 1000
        }
      },
      "post": {
        "tags": [
          "data project"
        ],
        "summary": "Create a new project",
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DiProjectItemRsp"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "description": "Creates a new data integration project in the specified space.",
        "operationId": "create_project",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDiProjectReq"
              }
            }
          },
          "required": true,
          "description": "The details of the project to create"
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}": {
      "get": {
        "tags": [
          "data project"
        ],
        "summary": "Get a project",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DiProjectItemRsp"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Get a specific data integration project.",
        "operationId": "get_project",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "1",
          "limit": 1000
        }
      }
    },
    "/api/v1/di-projects/{projectId}/actions/export": {
      "post": {
        "tags": [
          "data project deployment"
        ],
        "summary": "Export a project",
        "responses": {
          "200": {
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          },
          {
            "in": "header",
            "name": "Accept",
            "schema": {
              "enum": [
                "application/octet-stream"
              ],
              "type": "string"
            },
            "required": false,
            "description": "Optional; only 'application/octet-stream' is supported."
          }
        ],
        "description": "Exports the specified data integration project.",
        "operationId": "export_project",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExportDiProjectReq"
              }
            }
          },
          "description": "Options for the export process"
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/actions/import": {
      "post": {
        "tags": [
          "data project deployment"
        ],
        "summary": "Import a project",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImportDiProjectRsp"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Imports a data integration project from a `.zip` file.",
        "operationId": "import_project",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "zip": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              }
            }
          },
          "required": true,
          "description": "The ZIP file containing the project to import"
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/actions/prepare": {
      "post": {
        "tags": [
          "data project actions"
        ],
        "summary": "Prepare a project",
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AsyncActionRsp"
                }
              }
            },
            "headers": {
              "Location": {
                "$ref": "#/components/headers/AsyncActionLocation"
              }
            },
            "description": "Preparation started"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Invalid request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Project not found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Prepares the data integration project and its tasks for execution.",
        "operationId": "prepare_project",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PrepareProjectReq"
              }
            }
          },
          "required": true
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/actions/validate": {
      "post": {
        "tags": [
          "data project actions"
        ],
        "summary": "Validate project",
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AsyncActionRsp"
                }
              }
            },
            "headers": {
              "Location": {
                "$ref": "#/components/headers/AsyncActionLocation"
              }
            },
            "description": "Validation started"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Invalid request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Project not found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Validates the data integration project and its tasks.",
        "operationId": "validate_project",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ValidateProjectReq"
              }
            }
          },
          "required": true
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/bindings": {
      "get": {
        "tags": [
          "data project deployment"
        ],
        "summary": "Get project export variables",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetDiExportProjectVariablesRsp"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          },
          {
            "in": "query",
            "name": "recalculate",
            "schema": {
              "type": "boolean",
              "default": true
            },
            "examples": {
              "example": {
                "value": true
              }
            },
            "required": false,
            "description": "Recalculate the bindings if true, otherwise saved bindings are returned."
          }
        ],
        "description": "Retrieves the export variables for a specific data integration project.",
        "operationId": "get_project_export_variables",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "1",
          "limit": 1000
        }
      },
      "put": {
        "tags": [
          "data project deployment"
        ],
        "summary": "Update project export variables",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateDiExportProjectVariablesRsp"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Updates the export variables for a specific data integration project.",
        "operationId": "update_project_export_variables",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDiExportProjectVariablesReq"
              }
            }
          },
          "required": true,
          "description": "The details of the export variables to update"
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks": {
      "get": {
        "tags": [
          "data task"
        ],
        "summary": "List project tasks",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListDataTasksRsp"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Lists data tasks within a given data integration project.",
        "operationId": "list_project_tasks",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "1",
          "limit": 1000
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}": {
      "get": {
        "tags": [
          "data task"
        ],
        "summary": "Get a project task",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataTaskItemRsp"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "task-cYSY"
              }
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Get a specific data task within a project.",
        "operationId": "get_data_task",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "1",
          "limit": 1000
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}/actions/prepare": {
      "post": {
        "tags": [
          "data task actions"
        ],
        "summary": "Prepare a project task",
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AsyncActionRsp"
                }
              }
            },
            "headers": {
              "Location": {
                "$ref": "#/components/headers/AsyncActionLocation"
              }
            },
            "description": "Preparation started"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Invalid request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Task not found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "task-cYSY"
              }
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Prepares the specified data task for execution.",
        "operationId": "prepare_task",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PrepareTaskReq"
              }
            }
          },
          "required": false
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}/actions/recreate-datasets": {
      "post": {
        "tags": [
          "data task actions"
        ],
        "summary": "Recreate task datasets",
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AsyncActionRsp"
                }
              }
            },
            "headers": {
              "Location": {
                "$ref": "#/components/headers/AsyncActionLocation"
              }
            },
            "description": "Started recreating datasets"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Invalid request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Task or project not found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "task-cYSY"
              }
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Recreates datasets in the specified data task.",
        "operationId": "recreate_task_datasets",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RecreateTaskDatasetsReq"
              }
            }
          },
          "required": false
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}/actions/request-reload": {
      "post": {
        "tags": [
          "data task actions"
        ],
        "summary": "Request dataset reload",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReloadRequestResponse"
                }
              }
            },
            "description": "Reload request registered."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "task-cYSY"
              }
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Registers a request to reload the datasets associated with the specified data task. The reload does not occur immediately; it will take effect on the next scheduled or manual run of the task.\n",
        "operationId": "reload_task",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReloadDiTaskReq"
              },
              "examples": {
                "example": {
                  "value": {
                    "reloadStrategy": "COMPARE_AND_APPLY",
                    "selectedDatasets": [
                      {
                        "datasetId": "dataset-123"
                      }
                    ]
                  },
                  "summary": "Reload selected datasets on next run"
                }
              }
            }
          },
          "required": true
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}/actions/validate": {
      "post": {
        "tags": [
          "data task actions"
        ],
        "summary": "Validate a project task",
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AsyncActionRsp"
                }
              }
            },
            "headers": {
              "Location": {
                "$ref": "#/components/headers/AsyncActionLocation"
              }
            },
            "description": "Validation started"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Invalid request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Task not found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "task-cYSY"
              }
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Validates the specified data task.",
        "operationId": "validate_task",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ValidateTaskReq"
              }
            }
          },
          "required": false
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}/runtime/actions/start": {
      "post": {
        "tags": [
          "data task runtime"
        ],
        "summary": "Start a project task",
        "responses": {
          "204": {
            "description": "NO CONTENT"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "task-cYSY"
              }
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Start a data task on a data integration project.",
        "operationId": "start_data_task",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StartTaskReq"
              }
            }
          },
          "required": false
        },
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}/runtime/actions/stop": {
      "post": {
        "tags": [
          "data task runtime"
        ],
        "summary": "Stop a project task",
        "responses": {
          "204": {
            "description": "NO CONTENT"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "task-cYSY"
              }
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Stop a data task on a data integration project.",
        "operationId": "stop_data_task",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "2",
          "limit": 100
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}/runtime/state": {
      "get": {
        "tags": [
          "data task runtime"
        ],
        "summary": "Get project task runtime state",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataTaskRuntimeState"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "task-cYSY"
              }
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "65424a71c11367914c1e659b"
              }
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Get the current runtime state of a data task",
        "operationId": "get_data_task_runtime_state",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "special",
          "limit": 120
        }
      }
    },
    "/api/v1/di-projects/{projectId}/di-tasks/{dataTaskId}/runtime/state/datasets": {
      "get": {
        "tags": [
          "data task runtime"
        ],
        "summary": "List runtime dataset states",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "datasets": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/DataTaskDatasetState"
                      }
                    }
                  }
                }
              }
            },
            "description": "Returns all datasets for the specified data task"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "dataTaskId",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Identifier of the data task."
          },
          {
            "in": "path",
            "name": "projectId",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Identifier of the data project."
          }
        ],
        "description": "Returns dataset-level runtime state for a data task",
        "operationId": "list_data_task_datasets",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "special",
          "limit": 120
        }
      }
    },
    "/api/v1/di-projects/actions/{actionId}": {
      "get": {
        "tags": [
          "async actions"
        ],
        "summary": "Get Action status",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AsyncActionDetails"
                }
              }
            },
            "description": "OK"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Errors"
                }
              }
            },
            "description": "Action not found"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "actionId",
            "schema": {
              "type": "string"
            },
            "examples": {
              "example": {
                "value": "action-123456"
              }
            },
            "required": true,
            "description": "Identifier of the action."
          },
          {
            "in": "query",
            "name": "detailed",
            "schema": {
              "type": "boolean",
              "default": false
            },
            "required": false,
            "description": "Specifies whether to include detailed status information in the response. Set to `true` to return detailed information."
          }
        ],
        "description": "Retrieves the status of an asynchronous operation.",
        "operationId": "get_async_action_status",
        "x-qlik-visibility": "public",
        "x-qlik-stability": "stable",
        "x-qlik-deprecated": false,
        "x-qlik-tier": {
          "tier": "1",
          "limit": 1000
        }
      }
    }
  },
  "openapi": "3.0.0",
  "components": {
    "headers": {
      "AsyncActionLocation": {
        "schema": {
          "type": "string"
        },
        "examples": {
          "example": {
            "value": "/api/v1/di-projects/actions/action-123456"
          }
        },
        "description": "URL to check the status of the async action"
      }
    },
    "schemas": {
      "AsyncActionDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "Prepare project myspace.demoproject",
            "description": "Name of the async operation"
          },
          "type": {
            "$ref": "#/components/schemas/AsyncActionType"
          },
          "error": {
            "$ref": "#/components/schemas/AsyncActionError"
          },
          "state": {
            "$ref": "#/components/schemas/AsyncCallStatus"
          },
          "endTime": {
            "type": "string",
            "format": "date-time"
          },
          "startTime": {
            "type": "string",
            "format": "date-time"
          },
          "taskDetails": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "info": {
                  "type": "string",
                  "description": "Additional details about task state"
                },
                "name": {
                  "type": "string"
                },
                "error": {
                  "$ref": "#/components/schemas/AsyncActionError"
                },
                "state": {
                  "$ref": "#/components/schemas/AsyncCallStatus"
                },
                "taskId": {
                  "type": "string"
                }
              }
            }
          },
          "taskProgress": {
            "$ref": "#/components/schemas/AsyncActionTaskProgress"
          }
        }
      },
      "AsyncActionError": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Error code"
          },
          "details": {
            "type": "string",
            "description": "Additional error details"
          },
          "message": {
            "type": "string",
            "description": "Error message"
          }
        }
      },
      "AsyncActionRsp": {
        "type": "object",
        "required": [
          "actionId"
        ],
        "properties": {
          "actionId": {
            "type": "string",
            "example": "action-123456",
            "description": "Identifier for tracking the action"
          }
        }
      },
      "AsyncActionTaskProgress": {
        "type": "object",
        "properties": {
          "failed": {
            "type": "integer",
            "description": "Number of tasks that failed"
          },
          "pending": {
            "type": "integer",
            "description": "Number of tasks pending execution"
          },
          "skipped": {
            "type": "integer",
            "description": "Number of tasks skipped due to conflicts"
          },
          "canceled": {
            "type": "integer",
            "description": "Number of tasks canceled"
          },
          "completed": {
            "type": "integer",
            "description": "Number of tasks completed successfully"
          },
          "executing": {
            "type": "integer",
            "description": "Number of tasks currently executing"
          }
        }
      },
      "AsyncActionType": {
        "enum": [
          "PROJECT_PREPARE",
          "PROJECT_VALIDATE",
          "TASK_PREPARE",
          "TASK_VALIDATE"
        ],
        "type": "string",
        "description": "Type of action being performed"
      },
      "AsyncCallStatus": {
        "enum": [
          "PENDING",
          "EXECUTING",
          "COMPLETED",
          "FAILED",
          "CANCELED",
          "SKIPPED"
        ],
        "type": "string",
        "description": "State of the action"
      },
      "CreateDiProjectReq": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "New Project",
            "description": "The name of the project"
          },
          "type": {
            "enum": [
              "DATA_PIPELINE",
              "DATA_MOVEMENT"
            ],
            "type": "string",
            "example": "DATA_PIPELINE",
            "description": "The type of the project"
          },
          "space": {
            "type": "string",
            "example": "space-456",
            "description": "The ID of the space where the project will be created"
          },
          "description": {
            "type": "string",
            "example": "This is a new data integration project.",
            "description": "A description of the project"
          },
          "platformType": {
            "enum": [
              "SNOWFLAKE",
              "BIGQUERY",
              "SYNAPSE",
              "DATABRICKS",
              "REDSHIFT",
              "MSSQL",
              "FABRIC",
              "QLIK_QVD",
              "QLIK_QVD_CUSTOMER_MANAGED"
            ],
            "type": "string",
            "example": "SNOWFLAKE",
            "description": "The platform type of the project. Supported values: - SNOWFLAKE: Snowflake - BIGQUERY: Google BigQuery - SYNAPSE: Azure Synapse - DATABRICKS: Databricks - REDSHIFT: Amazon Redshift - MSSQL: Microsoft SQL Server - FABRIC: Microsoft Fabric (OneLake) - QLIK_QVD: Qlik-managed QVD - QLIK_QVD_CUSTOMER_MANAGED: Customer-managed QVD\n"
          },
          "platformConnection": {
            "type": "string",
            "example": "connection-string",
            "description": "The platform connection string"
          },
          "cloudStagingConnection": {
            "type": "string",
            "example": "storage-connection-string",
            "description": "The cloud staging connection string"
          }
        }
      },
      "DataTaskDatasetState": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the dataset"
          },
          "fullLoad": {
            "type": "object",
            "properties": {
              "state": {
                "enum": [
                  "QUEUED",
                  "LOADING",
                  "COMPLETED",
                  "ERROR"
                ],
                "type": "string"
              },
              "endTime": {
                "type": "string",
                "format": "date-time"
              },
              "message": {
                "type": "string"
              },
              "duration": {
                "type": "string",
                "description": "Duration in HH:MM:SS format (hours:minutes:seconds)"
              },
              "fileStats": {
                "$ref": "#/components/schemas/FileStatistics"
              },
              "startTime": {
                "type": "string",
                "format": "date-time"
              },
              "cachedChangesCount": {
                "type": "number",
                "description": "Number of changes captured and cached during full load (CDC landing/replication tasks only)"
              },
              "failedRecordsCount": {
                "type": "number",
                "description": "Number of records that failed to load (currently only for knowledge marts)"
              },
              "totalProcessedCount": {
                "type": "number",
                "description": "Number of records (or docs in knowledge marts) were loaded."
              }
            }
          },
          "cdcStatus": {
            "type": "object",
            "properties": {
              "state": {
                "enum": [
                  "QUEUED",
                  "PROCESSING",
                  "ACCUMULATING_CHANGES",
                  "COMPLETED",
                  "ERROR"
                ],
                "type": "string"
              },
              "message": {
                "type": "string"
              },
              "ddlCount": {
                "type": "number",
                "description": "Number of DDL statements executed during the last run"
              },
              "deleteCount": {
                "type": "number",
                "description": "delete portion of totalProcessedCount. Only available for some task types"
              },
              "insertCount": {
                "type": "number",
                "description": "Insert portion of totalProcessedCount. Only available for some task types"
              },
              "updateCount": {
                "type": "number",
                "description": "update portion of totalProcessedCount. Only available for some task types"
              },
              "lastProcessed": {
                "type": "string",
                "format": "date-time"
              },
              "totalProcessedCount": {
                "type": "number",
                "description": "Total number of changes/DMLs applied to the dataset"
              }
            }
          },
          "datasetId": {
            "type": "string",
            "description": "Id of the dataset"
          },
          "streaming": {
            "type": "object",
            "properties": {
              "state": {
                "enum": [
                  "QUEUED",
                  "RUNNING",
                  "ERROR"
                ],
                "type": "string"
              },
              "message": {
                "type": "string"
              },
              "lastProcessed": {
                "type": "string",
                "format": "date-time",
                "description": "Timestamp of the latest source record inserted into the target dataset."
              },
              "parseIssueCount": {
                "type": "number",
                "description": "Number of records that had parsing issues"
              },
              "recordsWrittenCount": {
                "type": "number",
                "description": "Total number of records written to the dataset"
              },
              "totalProcessedCount": {
                "type": "number",
                "description": "Total number of processed changes for the dataset"
              },
              "recordsFilteredCount": {
                "type": "number",
                "description": "Total number of records filtered out and not written to the dataset"
              },
              "unoptimizedRecordsCount": {
                "type": "number",
                "description": "Queryable records pending merge into optimized Iceberg partitions."
              }
            }
          },
          "sourceName": {
            "type": "string",
            "description": "Original name of the dataset, relevant only for data movement tasks"
          },
          "dataReadiness": {
            "enum": [
              "READY",
              "NOT_READY",
              "ERROR"
            ],
            "type": "string",
            "description": "Is the data ready for use?"
          },
          "lastBatchOfChanges": {
            "type": "object",
            "properties": {
              "state": {
                "enum": [
                  "QUEUED",
                  "PROCESSING",
                  "COMPLETED",
                  "ERROR"
                ],
                "type": "string"
              },
              "endTime": {
                "type": "string",
                "format": "date-time"
              },
              "message": {
                "type": "string"
              },
              "duration": {
                "type": "string",
                "description": "Duration in HH:MM:SS format (hours:minutes:seconds)"
              },
              "fileStats": {
                "$ref": "#/components/schemas/FileStatistics"
              },
              "startTime": {
                "type": "string",
                "format": "date-time"
              },
              "operationStats": {
                "$ref": "#/components/schemas/OperationStatistics"
              },
              "totalProcessedCount": {
                "type": "number"
              },
              "throughputInRecordsPerSecond": {
                "type": "number",
                "description": "Throughput in records per second"
              }
            }
          }
        }
      },
      "DataTaskInstanceState": {
        "type": "object",
        "properties": {
          "state": {
            "enum": [
              "STARTING",
              "RUNNING",
              "COMPLETED",
              "FAILED",
              "CANCELED",
              "STOPPING"
            ],
            "type": "string"
          },
          "endTime": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp indicating when the task instance ended"
          },
          "general": {
            "type": "object",
            "properties": {
              "gatewayId": {
                "type": "string",
                "description": "For tasks that run on a gateway, this is the id of the gateway"
              },
              "gatewayName": {
                "type": "string",
                "description": "For tasks that run on a gateway, this is the name of the gateway"
              },
              "datasetCount": {
                "type": "number",
                "description": "Total number of datasets produced by the task, including ones in error"
              },
              "gatewayTaskName": {
                "type": "string",
                "description": "For tasks that run on a gateway, this is the internal name of the task on the gateway"
              },
              "dataTaskUpdatedTo": {
                "type": "string",
                "format": "date-time",
                "description": "The latest point in time the data reflects, based on updates from the source system."
              },
              "lakehouseClusterId": {
                "type": "string",
                "description": "For lakehouse storage tasks, this is the id of the cluster where the task runs"
              },
              "liveViewsUpdatedTo": {
                "type": "string",
                "format": "date-time",
                "description": "The latest point in time the live views reflect, based on updates from the source system."
              },
              "datasetsInErrorCount": {
                "type": "number",
                "description": "Count of datasets that encountered errors"
              },
              "lakehouseClusterName": {
                "type": "string",
                "description": "For lakehouse storage tasks, this is the name of the cluster where the task runs"
              }
            }
          },
          "message": {
            "type": "string"
          },
          "duration": {
            "type": "string",
            "description": "Duration in HH:MM:SS format (hours:minutes:seconds)"
          },
          "fullLoad": {
            "type": "object",
            "properties": {
              "errorCount": {
                "type": "number",
                "description": "Number of datasets that have failed full load in this task run"
              },
              "queuedCount": {
                "type": "number",
                "description": "Number of datasets that are queued for full load in this task run"
              },
              "loadingCount": {
                "type": "number",
                "description": "Number of datasets that are currently being loaded in this task run"
              },
              "completedCount": {
                "type": "number",
                "description": "Number of datasets that have completed full load in this task run"
              }
            }
          },
          "cdcStatus": {
            "type": "object",
            "properties": {
              "latency": {
                "type": "string",
                "example": "01:30:45",
                "description": "Duration in HH:MM:SS format (hours:minutes:seconds)"
              },
              "totalProcessedCount": {
                "type": "number"
              },
              "applyingChangesCount": {
                "type": "number"
              },
              "accumulatingChangesCount": {
                "type": "number"
              },
              "throughputInKilobytesPerSecond": {
                "type": "number",
                "description": "Throughput in kilobytes per second"
              }
            }
          },
          "startTime": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp indicating when the task instance started"
          },
          "streaming": {
            "type": "object",
            "properties": {
              "latency": {
                "type": "string",
                "description": "Duration in HH:MM:SS format (hours:minutes:seconds)"
              },
              "errorCount": {
                "type": "number",
                "description": "Number of streaming datasets that have encountered errors"
              },
              "queuedCount": {
                "type": "number",
                "description": "Number of streaming datasets that are queued"
              },
              "runningCount": {
                "type": "number",
                "description": "Number of streaming datasets that are currently running"
              },
              "totalProcessedCount": {
                "type": "number",
                "description": "Total number of records processed"
              }
            }
          },
          "lastBatchOfChanges": {
            "type": "object",
            "properties": {
              "relatesToRecordsTo": {
                "type": "string",
                "format": "date-time",
                "description": "This batch ends with operational source changes from this time."
              },
              "totalProcessedCount": {
                "type": "number"
              },
              "relatesToRecordsFrom": {
                "type": "string",
                "format": "date-time",
                "description": "This batch starts with operational source changes from this time."
              },
              "throughputInRecordsPerSecond": {
                "type": "number",
                "description": "Throughput in records per second"
              }
            }
          }
        }
      },
      "DataTaskItemRsp": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/DataTaskType"
          },
          "ownerId": {
            "type": "string"
          },
          "spaceId": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        }
      },
      "DataTaskRuntimeState": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the data task"
          },
          "type": {
            "$ref": "#/components/schemas/DataTaskType"
          },
          "lastRun": {
            "$ref": "#/components/schemas/DataTaskInstanceState"
          },
          "runReadiness": {
            "type": "object",
            "properties": {
              "state": {
                "enum": [
                  "READY_TO_RUN",
                  "ALREADY_RUNNING",
                  "NOT_RUNNABLE"
                ],
                "type": "string"
              },
              "message": {
                "type": "string"
              }
            }
          }
        }
      },
      "DataTaskType": {
        "enum": [
          "LANDING",
          "STORAGE",
          "QVD_STORAGE",
          "TRANSFORM",
          "DATAMART",
          "REGISTERED_DATA",
          "REPLICATION",
          "DISTRIBUTION",
          "LAKE_LANDING",
          "KNOWLEDGE_MART",
          "FILE_BASED_KNOWLEDGE_MART",
          "LAKEHOUSE_STORAGE",
          "LAKEHOUSE_MIRROR",
          "STREAMING_LAKE_LANDING",
          "STREAMING_TRANSFORM"
        ],
        "type": "string",
        "x-enum-varnames": [
          "LANDING",
          "STORAGE",
          "QVD_STORAGE",
          "TRANSFORM",
          "DATAMART",
          "REGISTERED_DATA",
          "REPLICATION",
          "LAKE_LANDING",
          "KNOWLEDGE_MART",
          "FILE_BASED_KNOWLEDGE_MART",
          "LAKEHOUSE_STORAGE",
          "LAKEHOUSE_MIRROR",
          "STREAMING_LAKE_LANDING",
          "STREAMING_TRANSFORM"
        ]
      },
      "DiProjectItemRsp": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "ownerId": {
            "type": "string"
          },
          "spaceId": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        }
      },
      "DiProjectOperationSelectedTask": {
        "type": "object",
        "required": [
          "taskId"
        ],
        "properties": {
          "taskId": {
            "type": "string",
            "description": "Task identifier"
          }
        }
      },
      "Error": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "detail": {
            "type": "string"
          },
          "source": {
            "$ref": "#/components/schemas/ErrorSource"
          },
          "status": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "Errors": {
        "type": "object",
        "properties": {
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Error"
            }
          },
          "traceId": {
            "type": "string"
          }
        }
      },
      "ErrorSource": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          },
          "parameter": {
            "type": "string"
          }
        }
      },
      "ExportDiProjectReq": {
        "type": "object",
        "properties": {
          "includeBindings": {
            "type": "boolean",
            "example": false,
            "description": "Include bindings in the exported zip file (optional, default is false)"
          }
        }
      },
      "FileStatistics": {
        "type": "object",
        "properties": {
          "volume": {
            "type": "string",
            "description": "Volume of data processed (e.g. '10.91 MiB')."
          },
          "processedCount": {
            "type": "number",
            "description": "Number of files processed."
          }
        },
        "description": "Statistics for file-based tasks."
      },
      "GetDiExportProjectVariablesRsp": {
        "type": "object",
        "properties": {
          "variables": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "example": "value",
              "description": "The value of the variable"
            }
          },
          "nameToIdMap": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "example": "value",
              "description": "The calculated ID of the variable value, when relevant."
            }
          }
        }
      },
      "ImportDiProjectRsp": {
        "type": "object"
      },
      "ListDataTasksRsp": {
        "type": "object",
        "properties": {
          "dataTasks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataTaskItemRsp"
            }
          }
        }
      },
      "ListDiProjectsRsp": {
        "type": "object",
        "properties": {
          "projects": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DiProjectItemRsp"
            }
          }
        }
      },
      "OperationStatistics": {
        "type": "object",
        "properties": {
          "deleteCount": {
            "type": "number",
            "description": "Number of delete operations."
          },
          "failedCount": {
            "type": "number",
            "description": "Number of failed operations."
          },
          "insertCount": {
            "type": "number",
            "description": "Number of insert operations."
          },
          "updateCount": {
            "type": "number",
            "description": "Number of update operations."
          }
        },
        "description": "Breakdown of operations for record-oriented tasks."
      },
      "PrepareProjectReq": {
        "type": "object",
        "properties": {
          "allowRecreate": {
            "type": "boolean",
            "default": false
          },
          "selectedTasks": {
            "$ref": "#/components/schemas/TaskSelectionList"
          }
        }
      },
      "PrepareTaskReq": {
        "type": "object",
        "required": [
          "allowRecreate"
        ],
        "properties": {
          "allowRecreate": {
            "type": "boolean",
            "default": false,
            "description": "Allow recreation of existing artifacts"
          }
        }
      },
      "RecreateTaskDatasetsReq": {
        "type": "object",
        "description": "Request body to recreate task datasets."
      },
      "ReloadDiTaskReq": {
        "type": "object",
        "properties": {
          "reloadStrategy": {
            "enum": [
              "NONE",
              "TRUNCATE",
              "COMPARE_AND_APPLY"
            ],
            "type": "string",
            "description": "Reload strategy (optional, applies to materialized SQL transformations and transformation flows tasks)"
          },
          "selectedDatasets": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "datasetId": {
                  "type": "string"
                }
              }
            },
            "description": "Datasets to reload (optional, if omitted or empty, all datasets will be reloaded)."
          }
        }
      },
      "ReloadRequestResponse": {
        "type": "object",
        "required": [
          "success"
        ],
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Always true when the server successfully registers the request."
          }
        },
        "description": "Indicates whether the reload request was registered successfully."
      },
      "StartTaskReq": {
        "type": "object",
        "properties": {
          "option": {
            "enum": [
              "PROCESS_CHANGES_FROM_TIMESTAMP",
              "PROCESS_CHANGES_FROM_POSITION",
              "RECOVER_USING_LOCALLY_STORED_CHECKPOINT"
            ],
            "type": "string",
            "description": "Task run option for the task (optional, applies to Replication tasks only)."
          },
          "processChangesFrom": {
            "type": "string",
            "description": "The value indicating where to resume the process, either a timestamp or an offset depending on the run option (optional, applies to Replication tasks only)."
          }
        }
      },
      "TaskSelectionList": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/DiProjectOperationSelectedTask"
        },
        "description": "Array of tasks to prepare. Leave empty to trigger project-level orchestration using built-in logic (same as in the user interface)."
      },
      "UpdateDiExportProjectVariablesReq": {
        "type": "object",
        "properties": {
          "variables": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "example": "value",
              "description": "The value of the variable"
            }
          }
        }
      },
      "UpdateDiExportProjectVariablesRsp": {
        "type": "object"
      },
      "ValidateProjectReq": {
        "type": "object",
        "properties": {
          "selectedTasks": {
            "$ref": "#/components/schemas/TaskSelectionList"
          }
        }
      },
      "ValidateTaskReq": {
        "type": "object",
        "description": "Request body for task validation"
      }
    }
  },
  "servers": [
    {
      "url": "https://{tenant}.{region}.qlikcloud.com",
      "variables": {
        "region": {
          "default": "us",
          "description": "The region the tenant is hosted in"
        },
        "tenant": {
          "default": "your-tenant",
          "description": "Name of the tenant that will be called"
        }
      }
    }
  ]
}