Skip to content

Commit d4dabcf

Browse files
chore: updating API specs from qlik.dev (#86)
* chore: updating API specs from qlik.dev * chore: updating consolidated OpenAPI spec from API specs --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent 23624cd commit d4dabcf

3 files changed

Lines changed: 567 additions & 19 deletions

File tree

consolidated/qlik-cloud.json

Lines changed: 284 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"info": {
44
"title": "Qlik Cloud",
55
"description": "Consolidated OpenAPI specification for published Qlik Cloud APIs.\n\nSee [withdave/qc-specs](https://github.com/withdave/qc-specs) for detailed configuration steps.\n\n## Authentication\n\nEndpoints on the path in this collection support authentication via API key or OAuth2. Use API key authentication if you want to get started fast or access content as your interactive user, or OAuth2 Machine-to-Machine authentication for the best security and deeper integration.",
6-
"version": "1.0.48",
6+
"version": "1.0.49",
77
"contact": {
88
"name": "Dave Channon",
99
"url": "https://github.com/withdave/qc-specs"
@@ -16144,7 +16144,7 @@
1614416144
"description": "Internal server error."
1614516145
}
1614616146
},
16147-
"description": "Updates one or more authentication settings for the tenant using JSON Patch (RFC 6902). Supports `replace` operations on `/userSessionInactivityTimeoutMinutes` and `/maxUserSessionLifespanMinutes`. The value for `maxUserSessionLifespanMinutes` must be a whole number of hours (divisible by 60). The user must be assigned the `TenantAdmin` role.",
16147+
"description": "Updates one or more authentication settings for the tenant using JSON Patch (RFC 6902). Supports `replace` operations on `/userSessionInactivityTimeoutMinutes`, `/maxUserSessionLifespanMinutes`, and `/dynamicClientRegistrationEnabled`. The value for `maxUserSessionLifespanMinutes` must be a whole number of hours (divisible by 60). The user must be assigned the `TenantAdmin` role.",
1614816148
"operationId": "updateAuthSettings",
1614916149
"requestBody": {
1615016150
"content": {
@@ -26467,6 +26467,113 @@
2646726467
}
2646826468
}
2646926469
},
26470+
"/api/v1/di-projects/{projectId}/actions/import-async": {
26471+
"post": {
26472+
"tags": [
26473+
"data project deployment"
26474+
],
26475+
"summary": "Import a project asynchronously",
26476+
"responses": {
26477+
"202": {
26478+
"content": {
26479+
"application/json": {
26480+
"schema": {
26481+
"$ref": "#/components/schemas/AsyncActionRsp"
26482+
}
26483+
}
26484+
},
26485+
"headers": {
26486+
"Location": {
26487+
"$ref": "#/components/headers/AsyncActionLocation"
26488+
}
26489+
},
26490+
"description": "The project import has started. Poll the returned `actionId` using `GET /di-projects/actions/{actionId}` to track progress."
26491+
},
26492+
"400": {
26493+
"content": {
26494+
"application/json": {
26495+
"schema": {
26496+
"$ref": "#/components/schemas/Errors"
26497+
}
26498+
}
26499+
},
26500+
"description": "Bad Request"
26501+
},
26502+
"404": {
26503+
"content": {
26504+
"application/json": {
26505+
"schema": {
26506+
"$ref": "#/components/schemas/Errors"
26507+
}
26508+
}
26509+
},
26510+
"description": "Not Found"
26511+
},
26512+
"409": {
26513+
"content": {
26514+
"application/json": {
26515+
"schema": {
26516+
"$ref": "#/components/schemas/Errors"
26517+
}
26518+
}
26519+
},
26520+
"description": "Conflict"
26521+
},
26522+
"500": {
26523+
"content": {
26524+
"application/json": {
26525+
"schema": {
26526+
"$ref": "#/components/schemas/Errors"
26527+
}
26528+
}
26529+
},
26530+
"description": "Internal Server Error"
26531+
}
26532+
},
26533+
"parameters": [
26534+
{
26535+
"in": "path",
26536+
"name": "projectId",
26537+
"schema": {
26538+
"type": "string"
26539+
},
26540+
"examples": {
26541+
"example": {
26542+
"value": "65424a71c11367914c1e659b"
26543+
}
26544+
},
26545+
"required": true,
26546+
"description": "Identifier of the data project."
26547+
}
26548+
],
26549+
"description": "Imports a data integration project from a `.zip` file and returns an action identifier for tracking the background import operation. Accepts both JSON-based (legacy) and YAML-based project formats, making it the recommended endpoint for deploying YAML-defined pipeline definitions programmatically. Poll the import status using `GET /di-projects/actions/{actionId}`.\n",
26550+
"operationId": "import_project_async",
26551+
"requestBody": {
26552+
"content": {
26553+
"multipart/form-data": {
26554+
"schema": {
26555+
"type": "object",
26556+
"properties": {
26557+
"zip": {
26558+
"type": "string",
26559+
"format": "binary"
26560+
}
26561+
}
26562+
}
26563+
}
26564+
},
26565+
"required": true,
26566+
"description": "A `.zip` file containing the project to import. Accepts both JSON-based (legacy) and YAML-based formats."
26567+
},
26568+
"x-qlik-visibility": "public",
26569+
"x-qlik-stability": "stable",
26570+
"x-qlik-deprecated": false,
26571+
"x-qlik-tier": {
26572+
"tier": "2",
26573+
"limit": 100
26574+
}
26575+
}
26576+
},
2647026577
"/api/v1/di-projects/{projectId}/actions/prepare": {
2647126578
"post": {
2647226579
"tags": [
@@ -27990,6 +28097,82 @@
2799028097
}
2799128098
}
2799228099
},
28100+
"/api/v1/di-projects/utils/actions/validate-project-definitions": {
28101+
"post": {
28102+
"tags": [
28103+
"data project deployment"
28104+
],
28105+
"summary": "Validate project definitions",
28106+
"responses": {
28107+
"200": {
28108+
"content": {
28109+
"application/json": {
28110+
"schema": {
28111+
"$ref": "#/components/schemas/ValidateProjectDefinitionsRsp"
28112+
}
28113+
}
28114+
},
28115+
"description": "Validation completed. The response contains a report of warnings and errors found in the project definitions."
28116+
},
28117+
"400": {
28118+
"content": {
28119+
"application/json": {
28120+
"schema": {
28121+
"$ref": "#/components/schemas/Errors"
28122+
}
28123+
}
28124+
},
28125+
"description": "Bad Request"
28126+
},
28127+
"404": {
28128+
"content": {
28129+
"application/json": {
28130+
"schema": {
28131+
"$ref": "#/components/schemas/Errors"
28132+
}
28133+
}
28134+
},
28135+
"description": "Not Found"
28136+
},
28137+
"500": {
28138+
"content": {
28139+
"application/json": {
28140+
"schema": {
28141+
"$ref": "#/components/schemas/Errors"
28142+
}
28143+
}
28144+
},
28145+
"description": "Internal Server Error"
28146+
}
28147+
},
28148+
"description": "Validates the project definition files in a `.zip` and returns a structured report of warnings and errors. The validation runs synchronously and completes before the response is returned. Use this operation before importing with `POST /di-projects/{projectId}/actions/import-async` to confirm that YAML-based pipeline definitions are correct.\n",
28149+
"operationId": "validate_project_definitions",
28150+
"requestBody": {
28151+
"content": {
28152+
"multipart/form-data": {
28153+
"schema": {
28154+
"type": "object",
28155+
"properties": {
28156+
"zip": {
28157+
"type": "string",
28158+
"format": "binary"
28159+
}
28160+
}
28161+
}
28162+
}
28163+
},
28164+
"required": true,
28165+
"description": "A `.zip` file containing the project definition files to validate."
28166+
},
28167+
"x-qlik-visibility": "public",
28168+
"x-qlik-stability": "stable",
28169+
"x-qlik-deprecated": false,
28170+
"x-qlik-tier": {
28171+
"tier": "2",
28172+
"limit": 100
28173+
}
28174+
}
28175+
},
2799328176
"/api/v1/direct-access-agents/{agentId}/actions/{agentAction}": {
2799428177
"post": {
2799528178
"tags": [
@@ -70732,19 +70915,38 @@
7073270915
"path": {
7073370916
"enum": [
7073470917
"/userSessionInactivityTimeoutMinutes",
70735-
"/maxUserSessionLifespanMinutes"
70918+
"/maxUserSessionLifespanMinutes",
70919+
"/dynamicClientRegistrationEnabled",
70920+
"/dcrAllowedAuthenticationMethods"
7073670921
],
7073770922
"type": "string",
70738-
"description": "A JSON Pointer to the authentication settings field.",
70923+
"description": "A JSON Pointer to the authentication settings field. Use `/dynamicClientRegistrationEnabled` only with a boolean `value`. Field `/dcrAllowedAuthenticationMethods` is only available when dynamic client registration is enabled.",
7073970924
"x-oapi-codegen-extra-tags": {
70740-
"validate": "required,oneof=/userSessionInactivityTimeoutMinutes /maxUserSessionLifespanMinutes"
70925+
"validate": "required,oneof=/userSessionInactivityTimeoutMinutes /maxUserSessionLifespanMinutes /dynamicClientRegistrationEnabled /dcrAllowedAuthenticationMethods"
7074170926
}
7074270927
},
7074370928
"value": {
70744-
"type": "integer",
70745-
"format": "int64",
70929+
"oneOf": [
70930+
{
70931+
"type": "integer",
70932+
"format": "int64"
70933+
},
70934+
{
70935+
"type": "boolean"
70936+
},
70937+
{
70938+
"type": "string"
70939+
},
70940+
{
70941+
"type": "array",
70942+
"items": {
70943+
"type": "string"
70944+
}
70945+
}
70946+
],
7074670947
"example": 1440,
70747-
"description": "Integer value in minutes to set for the targeted authentication settings field. For `maxUserSessionLifespanMinutes`, the value must be a whole number of hours (divisible by 60)."
70948+
"x-go-type": "any",
70949+
"description": "Value to set for the targeted authentication settings field. Timeout fields accept only integer values, `/dynamicClientRegistrationEnabled` accepts only boolean values, and `/dcrAllowedAuthenticationMethods` accepts an array of strings."
7074870950
}
7074970951
},
7075070952
"description": "A JSON Patch document for authentication settings as defined in http://tools.ietf.org/html/rfc6902."
@@ -70764,6 +70966,18 @@
7076470966
"op": "replace",
7076570967
"path": "/maxUserSessionLifespanMinutes",
7076670968
"value": 1440
70969+
},
70970+
{
70971+
"op": "replace",
70972+
"path": "/dynamicClientRegistrationEnabled",
70973+
"value": true
70974+
},
70975+
{
70976+
"op": "replace",
70977+
"path": "/dcrAllowedAuthenticationMethods",
70978+
"value": [
70979+
"client_secret"
70980+
]
7076770981
}
7076870982
],
7076970983
"description": "An array of JSON Patch documents for authentication settings."
@@ -70805,6 +71019,27 @@
7080571019
"x-go-name": "MaxUserSessionLifespanMinutes",
7080671020
"description": "Maximum total lifespan for a user session, in minutes. Sessions are invalidated after this duration regardless of activity."
7080771021
},
71022+
"dcrAllowedAuthenticationMethods": {
71023+
"type": "array",
71024+
"items": {
71025+
"enum": [
71026+
"none",
71027+
"client_secret"
71028+
],
71029+
"type": "string"
71030+
},
71031+
"example": [
71032+
"client_secret"
71033+
],
71034+
"x-go-name": "DcrAllowedAuthenticationMethods",
71035+
"description": "The allowed authentication methods for dynamic client registration. Only present when dynamic client registration is enabled."
71036+
},
71037+
"dynamicClientRegistrationEnabled": {
71038+
"type": "boolean",
71039+
"example": false,
71040+
"x-go-name": "DynamicClientRegistrationEnabled",
71041+
"description": "Indicates whether dynamic client registration is enabled for this tenant."
71042+
},
7080871043
"userSessionInactivityTimeoutMinutes": {
7080971044
"type": "integer",
7081071045
"format": "int64",
@@ -76955,7 +77190,8 @@
7695577190
"LAKEHOUSE_STORAGE",
7695677191
"LAKEHOUSE_MIRROR",
7695777192
"STREAMING_LAKE_LANDING",
76958-
"STREAMING_TRANSFORM"
77193+
"STREAMING_TRANSFORM",
77194+
"REPLICATE_LANDING"
7695977195
],
7696077196
"type": "string",
7696177197
"x-enum-varnames": [
@@ -76972,7 +77208,8 @@
7697277208
"LAKEHOUSE_STORAGE",
7697377209
"LAKEHOUSE_MIRROR",
7697477210
"STREAMING_LAKE_LANDING",
76975-
"STREAMING_TRANSFORM"
77211+
"STREAMING_TRANSFORM",
77212+
"REPLICATE_LANDING"
7697677213
]
7697777214
},
7697877215
"DiExportMode": {
@@ -77452,6 +77689,43 @@
7745277689
"UpdateDiExportProjectVariablesRsp": {
7745377690
"type": "object"
7745477691
},
77692+
"ValidateProjectDefinitionsReport": {
77693+
"type": "object",
77694+
"properties": {
77695+
"path": {
77696+
"type": "string",
77697+
"description": "Path to the field or file in the project definition where the issue was found."
77698+
},
77699+
"level": {
77700+
"$ref": "#/components/schemas/ValidateProjectDefinitionsReportLevel"
77701+
},
77702+
"reason": {
77703+
"type": "string",
77704+
"description": "Human-readable description of the validation finding."
77705+
}
77706+
},
77707+
"description": "A single validation finding, including its severity, a human-readable description of the issue, and the location in the project definition where it was found."
77708+
},
77709+
"ValidateProjectDefinitionsReportLevel": {
77710+
"enum": [
77711+
"WARNING",
77712+
"ERROR"
77713+
],
77714+
"type": "string",
77715+
"description": "Severity of the validation finding. `WARNING` indicates a potential issue that does not block import; `ERROR` indicates a critical issue that must be resolved before importing."
77716+
},
77717+
"ValidateProjectDefinitionsRsp": {
77718+
"type": "object",
77719+
"properties": {
77720+
"reports": {
77721+
"type": "array",
77722+
"items": {
77723+
"$ref": "#/components/schemas/ValidateProjectDefinitionsReport"
77724+
},
77725+
"description": "List of validation findings. An empty array indicates no issues were found."
77726+
}
77727+
}
77728+
},
7745577729
"ValidateProjectReq": {
7745677730
"type": "object",
7745777731
"properties": {

0 commit comments

Comments
 (0)