Every API here is available over the APIs.io API and to AI agents over MCP.
{
"info": {
"title": "workflows/automations",
"version": ""
},
"paths": {
"/api/workflows/automations": {
"get": {
"tags": [
"automations"
],
"summary": "List automations",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AutomationList"
}
}
},
"description": "OK Response"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "query",
"name": "cursor",
"schema": {
"type": "string",
"example": "eyJpZCI6MjIwMjA5MDgsIl9wb2ludHNUb05leHRJdGVtcyI6dHJ1ZX0"
},
"required": false,
"description": "Pagination cursor returned from a previous request."
},
{
"in": "query",
"name": "filter",
"schema": {
"type": "string",
"example": "name eq \"My Automation\" and runMode eq \"scheduled\" and ownerId eq \"sWYAHxZxhtcmBT7Ptc5xJ5I6N7HxwnEy\""
},
"required": false,
"description": "Allowed filters: `name`, `runMode`, `lastRunStatus`, `ownerId`, `spaceId`."
},
{
"in": "query",
"name": "limit",
"schema": {
"type": "integer",
"default": 100,
"example": 50,
"maximum": 200,
"minimum": 1
},
"required": false,
"description": "The number of automations to retrieve."
},
{
"in": "query",
"name": "listAll",
"schema": {
"type": "boolean",
"default": true
},
"required": false,
"description": "When true, list all automations. Restricted to tenant admins and analytics admins."
},
{
"in": "query",
"name": "sort",
"schema": {
"enum": [
"id",
"name",
"runMode",
"state",
"createdAt",
"updatedAt",
"lastRunAt",
"lastRunStatus",
"+id",
"+name",
"+runMode",
"+state",
"+createdAt",
"+updatedAt",
"+lastRunAt",
"+lastRunStatus",
"-id",
"-name",
"-runMode",
"-state",
"-createdAt",
"-updatedAt",
"-lastRunAt",
"-lastRunStatus",
"maxConcurrentRuns",
"+maxConcurrentRuns",
"-maxConcurrentRuns"
],
"type": "string",
"default": "id",
"example": "-name"
},
"required": false,
"description": "The field to sort by, with +- prefix indicating sort order. (`?sort=-name` => sort on the `name` field using descending order)."
}
],
"description": "Retrieves a list of the automations that the requesting user has access to.",
"operationId": "getAutomations",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "GET:/v1/automations"
}
],
"x-qlik-tier": {
"tier": "1",
"limit": 1000
}
},
"post": {
"tags": [
"automations"
],
"summary": "Create an automation",
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AutomationDetailResponseObject"
}
}
},
"description": "Created"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"description": "Creates a new automation. The requesting user must be assigned the `AutomationCreator` role or have at least one of the following scopes: `automations`, `admin.automations`, `automations.private` or `automations.shared`.",
"operationId": "createAutomation",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AutomationDetailRequestObject"
}
}
},
"required": true,
"description": "Automation object to create"
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "POST:/v1/automations"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/workflows/automations/{id}": {
"get": {
"tags": [
"automations"
],
"summary": "Get an automation",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AutomationDetailResponseObject"
}
}
},
"description": "OK Response"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Retrieves the full definition of an automation. The requesting user must be the owner of the automation and either be assigned one of the roles: `AutomationsCreator`, `TenantAdmin` or have at least one of the following scopes (depending on whether the automation is in a private or shared space): `automations`, `automations.private` or `automations.shared`.",
"operationId": "getAutomation",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "GET:/v1/automations/{id}"
}
],
"x-qlik-tier": {
"tier": "1",
"limit": 1000
}
},
"put": {
"tags": [
"automations"
],
"summary": "Update an automation",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AutomationDetailResponseObject"
}
}
},
"description": "OK Response"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"409": {
"$ref": "#/components/responses/Conflict"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Updates the full definition of an automation. The requesting user must be the owner of the automation and either be assigned the `AutomationCreator` role or have at least one of the following scopes: `automations`, `admin.automations`, `automations.private` or `automations.shared`.",
"operationId": "updateAutomation",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AutomationDetailUpdateRequestObject"
}
}
},
"required": true,
"description": "Automation object to update"
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "PUT:/v1/automations/{id}"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
},
"delete": {
"tags": [
"automations"
],
"summary": "Delete an automation",
"responses": {
"204": {
"description": "No Content"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Deletes an automation. The requesting user must meet at least one of the following conditions:\n- be the owner of the automation\n- be assigned one of the following roles: `AnalyticsAdmin`, `TenantAdmin`\n- have at least one of the following scopes: `admin.automations`, `admin.automations:strict`, `automations.private`, or `automations.shared`",
"operationId": "deleteAutomation",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "DELETE:/v1/automations/{id}"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/workflows/automations/{id}/actions/change-owner": {
"post": {
"tags": [
"automations"
],
"summary": "Change automation owner",
"responses": {
"204": {
"description": "No Content"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"format": "uuid",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Changes the owner of an automation to another user. This action removes the history and change logs of this automation. All linked connections used in the automation are detached and not moved to the new owner. The requesting user must be assigned `TenantAdmin` role or have at least one of the following scopes: `admin.automations`, `admin.automations:strict`.",
"operationId": "automationChangeOwner",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"userId"
],
"properties": {
"userId": {
"type": "string",
"example": "sWYAHxZxhtcmBT7Ptc5xJ5I6N7HxwnEy",
"description": "The unique identifier of the new owner."
}
}
}
}
},
"required": true
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "POST:/v1/automations/{id}/actions/change-owner"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/workflows/automations/{id}/actions/change-space": {
"post": {
"tags": [
"automations"
],
"summary": "Change automation space",
"responses": {
"204": {
"description": "No Content"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Changes the space of an automation by specifying a new space.",
"operationId": "automationChangeSpace",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"spaceId"
],
"properties": {
"spaceId": {
"type": "string",
"example": "5f0f78b239ff4f0001234567",
"description": "The unique identifier of the new space. Leave empty to move to the owner's personal space."
}
}
}
}
}
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "POST:/v1/automations/{id}/actions/change-space"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/workflows/automations/{id}/actions/copy": {
"post": {
"tags": [
"automations"
],
"summary": "Duplicate an automation",
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "00000000-0000-0000-0000-000000000000",
"description": "The unique identifier for the automation."
}
}
}
}
},
"description": "Created"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Duplicates an existing automation. The requesting user must be the owner of the automation or have at least one of the following scopes: `automations`, `admin.automations`, `automations.private` or `automations.shared`.",
"operationId": "copyAutomation",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "My automation",
"description": "Name of the new automation."
}
}
}
}
},
"required": true
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "POST:/v1/automations/{id}/actions/copy"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/workflows/automations/{id}/actions/disable": {
"post": {
"tags": [
"automations"
],
"summary": "Disable an automation",
"responses": {
"204": {
"description": "No Content"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Disables an automation so that it cannot be run. To disable an automation, the requesting user must meet at least one of the following conditions:\n- be the owner of the automation\n- be assigned one of the following roles: `TenantAdmin`, `AnalyticsAdmin`\n- have at least one of the following scopes: `admin.automations`, `admin.automations:strict`, `automations.private`, or `automations.shared`",
"operationId": "disableAutomation",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "POST:/v1/automations/{id}/actions/disable"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/workflows/automations/{id}/actions/enable": {
"post": {
"tags": [
"automations"
],
"summary": "Enable an automation",
"responses": {
"204": {
"description": "No Content"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Enables an automation so that it can be run. To enable an automation, the requesting user must meet at least one of the following conditions:\n- be the owner of the automation\n- be assigned one of the following roles: `AnalyticsAdmin`, `TenantAdmin`\n- have at least one of the following scopes: `admin.automations`, `admin.automations:strict`, `automations.private`, or `automations.shared`",
"operationId": "enableAutomation",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "POST:/v1/automations/{id}/actions/enable"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/workflows/automations/{id}/actions/move": {
"post": {
"tags": [
"automations"
],
"summary": "Change automation owner",
"responses": {
"204": {
"description": "No Content"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"format": "uuid",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Changes the owner of an automation to another user. This action removes the history and change logs of this automation. All linked connections used in the automation are detached and not moved to the new owner. The requesting user must be assigned `TenantAdmin` role or have at least one of the following scopes: `admin.automations`, `admin.automations:strict`.",
"operationId": "moveAutomation",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"userId"
],
"properties": {
"userId": {
"type": "string",
"example": "sWYAHxZxhtcmBT7Ptc5xJ5I6N7HxwnEy",
"description": "Unique identifier of the new owner of the automation."
}
}
}
}
},
"required": true
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "POST:/v1/automations/{id}/actions/move"
}
],
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/workflows/automations/{id}/runs": {
"get": {
"tags": [
"automations"
],
"summary": "List automation runs",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RunList"
}
}
},
"description": "OK Response"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"format": "uuid",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
},
{
"in": "query",
"name": "cursor",
"schema": {
"type": "string",
"example": "eyJpZCI6MjIwMjA5MDgsIl9wb2ludHNUb05leHRJdGVtcyI6dHJ1ZX0"
},
"required": false,
"description": "Pagination cursor returned from a previous request."
},
{
"in": "query",
"name": "filter",
"schema": {
"type": "string",
"example": "status eq \"finished\""
},
"required": false,
"description": "Allowed filters: `status`, `context`, `startTime`, `title`, `spaceId`, `ownerId`, `executedById`, `billable`."
},
{
"in": "query",
"name": "limit",
"schema": {
"type": "integer",
"default": 10,
"example": 10,
"maximum": 200,
"minimum": 1
},
"required": false,
"description": "The number of runs to retrieve."
},
{
"in": "query",
"name": "sort",
"schema": {
"enum": [
"id",
"status",
"startTime",
"-id",
"-status",
"-startTime",
"+id",
"+status",
"+startTime"
],
"type": "string",
"default": "id",
"example": "-id"
},
"required": false,
"description": "The field to sort by, with +- prefix indicating sort order. (`?query=-startTime` => sort on the `startTime` field using descending order)."
}
],
"description": "Retrieves a list of runs for a specific automation. The requesting user must be the owner of the automation, or be assigned the one of roles: `TenantAdmin`, `AnalyticsAdmin`. Alternatively, the user must have at least one of the following scopes: `admin.automation-runs`, `automation-runs.private`, or `automation-runs.shared`.",
"operationId": "getRuns",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-replaces": [
{
"namespace": "",
"uniqueIdentifier": "GET:/v1/automations/{id}/runs"
}
],
"x-qlik-tier": {
"tier": "1",
"limit": 1000
}
},
"post": {
"tags": [
"automations"
],
"summary": "Run an automation",
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RunDetailResponseObject"
}
}
},
"description": "Created"
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"403": {
"$ref": "#/components/responses/Forbidden"
},
"404": {
"$ref": "#/components/responses/NotFound"
},
"500": {
"$ref": "#/components/responses/InternalServerError"
},
"503": {
"$ref": "#/components/responses/ServiceUnavailable"
}
},
"parameters": [
{
"in": "path",
"name": "id",
"schema": {
"type": "string",
"example": "00000000-0000-0000-0000-000000000000"
},
"required": true,
"description": "The unique identifier for the automation."
}
],
"description": "Creates a run for a specific automation. Depending on the space the automation belongs to, the requesting user must meet the following requirement:\n- Private space: be the owner of the automation and have the `automations.private` scope\n- Shared space: be editor or operator in shared space and have `automations.shared` scope.",
"operationId": "createRun",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RunDetailRequestObject"
}
}
},
"required": true,
"description": "Run object to create"
}
# --- truncated at 32 KB (83 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/qliksense/refs/heads/main/openapi/qliksense-workflows-automations.json