{
  "openapi": "3.0.1",
  "info": {
    "title": "The Embedded Configuration Internal API",
    "version": "1"
  },
  "servers": [
    {
      "url": "/api/embedded/internal"
    }
  ],
  "tags": [
    {
      "name": "app-event",
      "description": "The Embedded App Event Internal API"
    },
    {
      "name": "category",
      "description": "The Embedded Category Internal API"
    },
    {
      "name": "component-definition",
      "description": "The Embedded Component Definition Internal API"
    },
    {
      "name": "connection-tag",
      "description": "The Embedded Connection Tag Internal API"
    },
    {
      "name": "connected-user-project-workflow",
      "description": "The Embedded Connected User Project Workflow Internal API"
    },
    {
      "name": "connection",
      "description": "The Embedded Connection Internal API"
    },
    {
      "name": "integration-tag",
      "description": "The Embedded Tag Internal API"
    },
    {
      "name": "integration",
      "description": "The Embedded Integration Internal API"
    },
    {
      "name": "unified-integration",
      "description": "The Embedded Unified Integration Management Internal API"
    },
    {
      "name": "webhook-trigger-test",
      "description": "The Automation Webhook Trigger Internal API"
    },
    {
      "name": "workflow",
      "description": "The Embedded Workflow Internal API"
    }
  ],
  "paths": {
    "/component-definitions": {
      "get": {
        "description": "Get all component definitions.",
        "summary": "Get all component definitions",
        "tags": [
          "component-definition"
        ],
        "operationId": "getComponentDefinitions",
        "parameters": [
          {
            "name": "actionDefinitions",
            "description": "Use for filtering components which define action definitions.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "connectionDefinitions",
            "description": "Use for filtering components which define connection definitions.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "triggerDefinitions",
            "description": "Use for filtering components which define trigger definitions.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "include",
            "description": "The list of component names to include in the result.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful operation.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "../../../../../../libs/platform/platform-configuration/platform-configuration-rest/platform-configuration-rest-impl/openapi.yaml/#/components/schemas/ComponentDefinitionBasic"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/app-events": {
      "get": {
        "description": "Get app events.",
        "summary": "Get app events",
        "tags": [
          "app-event"
        ],
        "operationId": "getAppEvents",
        "responses": {
          "200": {
            "description": "The list of app events.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AppEvent"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "description": "Create a new app event.",
        "summary": "Create a new app event",
        "tags": [
          "app-event"
        ],
        "operationId": "createAppEvent",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AppEvent"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The app event id.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            }
          }
        }
      }
    },
    "/app-events/{id}": {
      "delete": {
        "description": "Delete an app event.",
        "summary": "Delete an app event",
        "tags": [
          "app-event"
        ],
        "operationId": "deleteAppEvent",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an app event.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      },
      "get": {
        "description": "Get an app event by id.",
        "summary": "Get an app event by id",
        "tags": [
          "app-event"
        ],
        "operationId": "getAppEvent",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an app event.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The app event object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppEvent"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Update an existing app event.",
        "summary": "Update an existing app event",
        "tags": [
          "app-event"
        ],
        "operationId": "updateAppEvent",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an app event.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AppEvent"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/connections": {
      "get": {
        "description": "Get all connections.",
        "summary": "Get all connections",
        "tags": [
          "connection"
        ],
        "operationId": "getConnections",
        "parameters": [
          {
            "name": "componentName",
            "description": "The component name used for filtering connections.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "connectionVersion",
            "description": "The connection version.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "environmentId",
            "description": "The environment id.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tagId",
            "description": "The tag id of used for filtering connections.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of connections.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Connection"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "description": "Create a new connection.",
        "summary": "Create a new connection",
        "tags": [
          "connection"
        ],
        "operationId": "createConnection",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Connection"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The connection id.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            }
          }
        }
      }
    },
    "/connections/tags": {
      "get": {
        "description": "Get connection tags.",
        "summary": "Get connection tags",
        "tags": [
          "connection-tag"
        ],
        "operationId": "getConnectionTags",
        "responses": {
          "200": {
            "description": "The list of connection tags.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "The response object that contains the array of tags.",
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Tag"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/connections/{id}": {
      "delete": {
        "description": "Delete a connection.",
        "summary": "Delete a connection",
        "tags": [
          "connection"
        ],
        "operationId": "deleteConnection",
        "parameters": [
          {
            "name": "id",
            "description": "The id of a connection.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      },
      "get": {
        "description": "Get a connection by id.",
        "summary": "Get a connection by id",
        "tags": [
          "connection"
        ],
        "operationId": "getConnection",
        "parameters": [
          {
            "name": "id",
            "description": "The id of a connection.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The connection object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Connection"
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Update an existing connection.",
        "summary": "Update an existing connection",
        "tags": [
          "connection"
        ],
        "operationId": "updateConnection",
        "parameters": [
          {
            "name": "id",
            "description": "The id of a connection.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateConnectionRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/connections/{id}/tags": {
      "put": {
        "description": "Updates tags of an existing connection.",
        "summary": "Updates tags of an existing connection",
        "tags": [
          "connection-tag"
        ],
        "operationId": "updateConnectionTags",
        "parameters": [
          {
            "name": "id",
            "description": "The id of the connection.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTagsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/connected-users/{connectedUserId}/components/{componentName}/connections": {
      "get": {
        "description": "Get all connected user's connections.",
        "summary": "Get all connected user's connections",
        "tags": [
          "connection"
        ],
        "operationId": "getConnectedUserConnections",
        "parameters": [
          {
            "name": "connectedUserId",
            "description": "The id of a connected user.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "componentName",
            "description": "The component name.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "connectionIds",
            "description": "The list of allowed connection ids.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of connections.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Connection"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/connected-users/{connectedUserId}/workflows/{workflowUuid}/connections": {
      "post": {
        "description": "Create a new connection for the connected user's project workflow.",
        "summary": "Create a new connection for the connected user's project workflow",
        "tags": [
          "connection"
        ],
        "operationId": "createConnectedUserProjectWorkflowConnection",
        "parameters": [
          {
            "name": "connectedUserId",
            "description": "The id of a connected user.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowUuid",
            "description": "The workflow uuid.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Connection"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The connection id.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            }
          }
        }
      }
    },
    "/connected-user-project-workflows/{workflowUuid}": {
      "get": {
        "description": "Get connected user project workflow.",
        "summary": "Get connected user project workflow.",
        "tags": [
          "connected-user-project-workflow"
        ],
        "operationId": "getConnectedUserProjectWorkflow",
        "parameters": [
          {
            "name": "X-Environment",
            "description": "The environment.",
            "in": "header",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/Environment"
            }
          },
          {
            "name": "workflowUuid",
            "description": "The workflow uuid.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The connected user project workflow object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConnectedUserProjectWorkflow"
                }
              }
            }
          }
        }
      }
    },
    "/connected-user-project-workflows/{workflowUuid}/publish": {
      "post": {
        "description": "Publishes existing connected user project workflow.",
        "summary": "Publishes existing connected user project workflow",
        "tags": [
          "connected-user-project-workflow"
        ],
        "operationId": "publishConnectedUserProjectWorkflow",
        "parameters": [
          {
            "name": "X-Environment",
            "description": "The environment.",
            "in": "header",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/Environment"
            }
          },
          {
            "name": "workflowUuid",
            "description": "The workflow uuid.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": {
                    "description": "The description of a connected user project workflow version.",
                    "type": "string"
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/connected-user-project-workflows/{workflowUuid}/enable/{enable}": {
      "patch": {
        "description": "Enable/disable a connected user project workflow.",
        "summary": "Enable/disable a connected user project workflow",
        "tags": [
          "connected-user-project-workflow"
        ],
        "operationId": "enableConnectedUserProjectWorkflow",
        "parameters": [
          {
            "name": "X-Environment",
            "description": "The environment.",
            "in": "header",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/Environment"
            }
          },
          {
            "name": "workflowUuid",
            "description": "The workflow uuid.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "enable",
            "description": "Enable/disable the project deployment.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integration-instance-configurations/tags": {
      "get": {
        "description": "Get integration instance configuration tags.",
        "summary": "Get integration instance configuration tags",
        "tags": [
          "integration-instance-configuration-tag"
        ],
        "operationId": "getIntegrationInstanceConfigurationTags",
        "responses": {
          "200": {
            "description": "The list of integration instance configuration tags.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "The response object that contains the array of tags.",
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Tag"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/integration-instance-configurations": {
      "get": {
        "description": "Get integration instance configurations.",
        "summary": "Get integration instance configurations",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "getIntegrationInstanceConfigurations",
        "parameters": [
          {
            "name": "environmentId",
            "description": "The environment id.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "integrationId",
            "description": "The integration id used for filtering integration instance configurations.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tagId",
            "description": "The tag id of used for filtering integration instance configurations.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "includeAllFields",
            "description": "Use for including all fields or just basic ones.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of integration instance configurations.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IntegrationInstanceConfiguration"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "description": "Create a new integration instance configuration.",
        "summary": "Create a new integration instance configuration",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "createIntegrationInstanceConfiguration",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationInstanceConfiguration"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The integration instance configuration id.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            }
          }
        }
      }
    },
    "/integration-instance-configurations/{id}": {
      "delete": {
        "description": "Delete an integration instance configuration.",
        "summary": "Delete an integration instance configuration",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "deleteIntegrationInstanceConfiguration",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      },
      "get": {
        "description": "Get an integration instance configuration by id.",
        "summary": "Get an integration instance configuration by id",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "getIntegrationInstanceConfiguration",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The integration instance configuration object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationInstanceConfiguration"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Update an existing integration instance configuration.",
        "summary": "Update an existing integration instance configuration",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "updateIntegrationInstanceConfiguration",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationInstanceConfiguration"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integration-instance-configurations/{id}/enable/{enable}": {
      "patch": {
        "description": "Enable/disable an integration instance configuration.",
        "summary": "Enable/disable an integration instance configuration",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "enableIntegrationInstanceConfiguration",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "enable",
            "description": "Enable/disable the integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integration-instance-configurations/{id}/tags": {
      "put": {
        "description": "Updates tags of an existing integration instance configuration.",
        "summary": "Updates tags of an existing integration instance configuration",
        "tags": [
          "integration-instance-configuration-tag"
        ],
        "operationId": "updateIntegrationInstanceConfigurationTags",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTagsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integration-instance-configurations/{id}/workflows/{workflowId}/enable/{enable}": {
      "patch": {
        "description": "Enable/disable a workflow of an integration instance configuration.",
        "summary": "Enable/disable a workflow of an integration instance configuration",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "enableIntegrationInstanceConfigurationWorkflow",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowId",
            "description": "The id of an integration workflow.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "enable",
            "description": "Enable/disable the workflow of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integration-instance-configurations/{id}/workflows/{workflowId}": {
      "put": {
        "description": "Update an existing integration instance configuration workflow.",
        "summary": "Update an existing integration instance configuration workflow",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "updateIntegrationInstanceConfigurationWorkflow",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowId",
            "description": "The id of an integration instance configuration workflow.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationInstanceConfigurationWorkflow"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integration-instance-configurations/{id}/workflows/{workflowId}/jobs": {
      "post": {
        "description": "Create a request for running a new job.",
        "summary": "Create a request for running a new job",
        "tags": [
          "integration-instance-configuration"
        ],
        "operationId": "createIntegrationInstanceConfigurationWorkflowJob",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance configuration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowId",
            "description": "The id of the workflow to execute.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The id of a created job.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "jobId": {
                      "description": "The id of an executed job.",
                      "type": "integer",
                      "format": "int64"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/integration-instances/{id}": {
      "get": {
        "description": "Get an integration instance by id.",
        "summary": "Get an integration instance by id",
        "tags": [
          "integration-instance"
        ],
        "operationId": "getIntegrationInstance",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The integration instance object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationInstance"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Delete an integration instance.",
        "summary": "Delete an integration instance",
        "tags": [
          "integration-instance"
        ],
        "operationId": "deleteIntegrationInstance",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integration-instances/{id}/enable/{enable}": {
      "patch": {
        "description": "Enable/disable an integration instance.",
        "summary": "Enable/disable an integration instance",
        "tags": [
          "integration-instance"
        ],
        "operationId": "enableIntegrationInstance",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "enable",
            "description": "Enable/disable the integration instance.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integration-instances/{id}/workflows/{workflowId}/enable/{enable}": {
      "patch": {
        "description": "Enable/disable an integration instance workflow.",
        "summary": "Enable/disable an integration instance workflow",
        "tags": [
          "integration-instance"
        ],
        "operationId": "enableIntegrationInstanceWorkflow",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration instance.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowId",
            "description": "The id of an integration instance workflow.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "enable",
            "description": "Enable/disable the integration instance workflow.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integrations": {
      "get": {
        "description": "Get integrations.",
        "summary": "Get integrations",
        "tags": [
          "integration"
        ],
        "operationId": "getIntegrations",
        "parameters": [
          {
            "name": "categoryId",
            "description": "The category id used for filtering integrations.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "integrationInstanceConfigurations",
            "description": "Use for filtering integrations for which integration instance configurations exist.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "status",
            "description": "Use for filtering integrations by status.",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/IntegrationStatus"
            }
          },
          {
            "name": "tagId",
            "description": "The tag id of used for filtering integrations.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "includeAllFields",
            "description": "Use for including all fields or just basic ones.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of integrations.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Integration"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "description": "Create a new integration.",
        "summary": "Create a new integration",
        "tags": [
          "integration"
        ],
        "operationId": "createIntegration",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Integration"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The integration id.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            }
          }
        }
      }
    },
    "/integrations/categories": {
      "get": {
        "description": "Get integration categories.",
        "summary": "Get integration categories",
        "tags": [
          "category"
        ],
        "operationId": "getIntegrationCategories",
        "responses": {
          "200": {
            "description": "The list of categories.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "The response object that contains the array of categories.",
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Category"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/integrations/tags": {
      "get": {
        "description": "Get integration tags.",
        "summary": "Get integration tags",
        "tags": [
          "integration-tag"
        ],
        "operationId": "getIntegrationTags",
        "responses": {
          "200": {
            "description": "The list of integration tags.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "The response object that contains the array of tags.",
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Tag"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/integrations/{id}": {
      "delete": {
        "description": "Delete an integration.",
        "summary": "Delete an integration",
        "tags": [
          "integration"
        ],
        "operationId": "deleteIntegration",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      },
      "get": {
        "description": "Get an integration by id.",
        "summary": "Get an integration by id",
        "tags": [
          "integration"
        ],
        "operationId": "getIntegration",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The integration object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Integration"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Update an existing integration.",
        "summary": "Update an existing integration",
        "tags": [
          "integration"
        ],
        "operationId": "updateIntegration",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Integration"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integrations/{id}/publish": {
      "post": {
        "description": "Publishes existing integration.",
        "summary": "Publishes existing integration.",
        "tags": [
          "integration"
        ],
        "operationId": "publishIntegration",
        "parameters": [
          {
            "name": "id",
            "description": "The id of a integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": {
                    "description": "The description of a integration version.",
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integrations/{id}/versions": {
      "get": {
        "description": "Get a integration versions.",
        "summary": "Get a integration versions.",
        "tags": [
          "integration"
        ],
        "operationId": "getIntegrationVersions",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of integration version objects.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IntegrationVersion"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/integrations/{id}/versions/{integrationVersion}/workflows": {
      "get": {
        "description": "Get workflows for particular integration version.",
        "summary": "Get workflows for particular integration version.",
        "tags": [
          "workflow"
        ],
        "operationId": "getIntegrationVersionWorkflows",
        "parameters": [
          {
            "name": "id",
            "description": "The id of a integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "integrationVersion",
            "description": "The version of a integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "includeAllFields",
            "description": "Use for including all fields or just basic ones.",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The array of integration workflows.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Workflow"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/integrations/{id}/tags": {
      "put": {
        "description": "Updates tags of an existing integration.",
        "summary": "Updates tags of an existing integration",
        "tags": [
          "integration-tag"
        ],
        "operationId": "updateIntegrationTags",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTagsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/integrations/{id}/workflows": {
      "get": {
        "description": "Get integration workflows for particular integration.",
        "summary": "Get integration workflows for particular integration",
        "tags": [
          "workflow"
        ],
        "operationId": "getIntegrationWorkflows",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The updated integration object.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Workflow"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "description": "Create new workflow and adds it to an existing integration.",
        "summary": "Create new workflow and adds it to an existing integration",
        "tags": [
          "integration"
        ],
        "operationId": "createIntegrationWorkflow",
        "parameters": [
          {
            "name": "id",
            "description": "The id of an integration.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Workflow"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The integration workflow id.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            }
          }
        }
      }
    },
    "/webhooks/{workflowId}/test/start": {
      "post": {
        "description": "Test a webhook trigger.",
        "summary": "Test a webhook trigger",
        "tags": [
          "webhook-trigger-test"
        ],
        "operationId": "startWebhookTriggerTest",
        "parameters": [
          {
            "name": "workflowId",
            "description": "The id of a workflow.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "environmentId",
            "description": "The id of an environment.",
            "required": true,
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the webhook URL.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "webhookUrl": {
                      "description": "The webhook URL.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/webhooks/{workflowId}/test/stop": {
      "post": {
        "description": "Test a webhook trigger.",
        "summary": "Test a webhook trigger",
        "tags": [
          "webhook-trigger-test"
        ],
        "operationId": "stopWebhookTriggerTest",
        "parameters": [
          {
            "name": "workflowId",
            "description": "The id of a workflow.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "environmentId",
            "description": "The id of an environment.",
            "required": true,
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/workflows/{id}": {
      "delete": {
        "description": "Delete a workflow.",
        "summary": "Delete a workflow",
        "tags": [
          "workflow"
        ],
        "operationId": "deleteWorkflow",
        "parameters": [
          {
            "name": "id",
            "description": "The id of the workflow to delete.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      },
      "get": {
        "description": "Get a workflow by id.",
        "summary": "Get a workflow by id",
        "tags": [
          "workflow"
        ],
        "operationId": "getWorkflow",
        "parameters": [
          {
            "name": "id",
            "description": "The id of the workflow to get.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The workflow object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Workflow"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Update an existing workflow.",
        "summary": "Update an existing workflow",
        "tags": [
          "workflow"
        ],
        "operationId": "updateWorkflow",
        "parameters": [
          {
            "name": "id",
            "description": "The id of the workflow to update.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Workflow"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Successful operation."
          }
        }
      }
    },
    "/workflows/by-integration-workflow-id/{integrationWorkflowId}": {
      "get": {
        "description": "Get workflow for particular integration.",
        "summary": "Get workflow for particular integration.",
        "tags": [
          "workflow"
        ],
        "operationId": "getIntegrationWorkflow",
        "parameters": [
          {
            "name": "integrationWorkflowId",
            "description": "The id of an integration workflow.",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The integration workflow object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Workflow"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AppEvent": {
        "description": "An app event.",
        "required": [
          "name",
          "schema"
        ],
        "properties": {
          "createdBy": {
            "description": "The created by.",
            "type": "string",
            "readOnly": true
          },
          "createdDate": {
            "description": "The created date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "id": {
            "description": "The id of an app event.",
            "type": "integer",
            "format": "int64"
          },
          "name": {
            "description": "The name of an app event.",
            "type": "string"
          },
          "lastModifiedBy": {
            "description": "The last modified by.",
            "type": "string",
            "readOnly": true
          },
          "lastModifiedDate": {
            "description": "The last modified date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "schema": {
            "description": "The schema of an app event.",
            "type": "string"
          },
          "__version": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "Category": {
        "$ref": "../../../../../../libs/platform/platform-category/platform-category-rest/openapi.yaml#/components/schemas/Category"
      },
      "ConnectedUserProjectWorkflow": {
        "type": "object",
        "properties": {
          "connectedUserId": {
            "description": "The connected user id",
            "type": "integer",
            "format": "int64"
          },
          "projectId": {
            "description": "The project id",
            "type": "integer",
            "format": "int64"
          },
          "workflowVersion": {
            "description": "The workflow version",
            "type": "integer"
          },
          "workflow": {
            "$ref": "#/components/schemas/Workflow"
          }
        }
      },
      "Connection": {
        "$ref": "../../../../../../libs/platform/platform-connection/platform-connection-rest/openapi/components/schemas/objects/connection_base.yaml"
      },
      "UpdateConnectionRequest": {
        "description": "Contains all connection parameters that can be updated.",
        "type": "object",
        "required": [
          "name",
          "tags"
        ],
        "properties": {
          "name": {
            "description": "The name of a connection.",
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Tag"
            }
          },
          "__version": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "Environment": {
        "$ref": "../../../../../../libs/platform/platform-rest/openapi/components/schemas/objects/environment.yaml"
      },
      "Integration": {
        "description": "A group of workflows that make one logical integration.",
        "allOf": [
          {
            "$ref": "#/components/schemas/IntegrationBasic"
          },
          {
            "type": "object",
            "properties": {
              "category": {
                "$ref": "#/components/schemas/Category"
              },
              "integrationWorkflowIds": {
                "description": "The integration workflow ids belonging to this integration.",
                "type": "array",
                "items": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "tags": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Tag"
                }
              },
              "__version": {
                "type": "integer"
              }
            }
          }
        ]
      },
      "IntegrationBasic": {
        "description": "A group of workflows that make one logical integration.",
        "type": "object",
        "required": [
          "componentName",
          "multipleInstances"
        ],
        "properties": {
          "componentName": {
            "description": "The name of the integration's component.",
            "type": "string"
          },
          "createdBy": {
            "description": "The created by.",
            "type": "string",
            "readOnly": true
          },
          "createdDate": {
            "description": "The created date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "description": {
            "description": "The description of an integration.",
            "type": "string"
          },
          "icon": {
            "description": "The icon.",
            "type": "string"
          },
          "id": {
            "description": "The id of an integration.",
            "type": "integer",
            "format": "int64",
            "readOnly": true
          },
          "lastModifiedBy": {
            "description": "The last modified by.",
            "type": "string",
            "readOnly": true
          },
          "lastModifiedDate": {
            "description": "The last modified date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "lastPublishedDate": {
            "description": "The last published date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "lastStatus": {
            "$ref": "#/components/schemas/IntegrationStatus"
          },
          "lastIntegrationVersion": {
            "description": "The last version of an integration.",
            "type": "integer",
            "readOnly": true
          },
          "multipleInstances": {
            "description": "If multiple instances of an integration are allowed or not.",
            "type": "boolean",
            "default": false
          },
          "name": {
            "description": "The name of an integration.",
            "type": "string"
          }
        }
      },
      "IntegrationInstance": {
        "description": "Contains configurations and connections required for the execution of integration workflows for a connected user.",
        "allOf": [
          {
            "$ref": "#/components/schemas/IntegrationInstanceBasic"
          },
          {
            "type": "object",
            "required": [
              "connectionId",
              "name"
            ],
            "properties": {
              "integrationInstanceConfiguration": {
                "$ref": "#/components/schemas/IntegrationInstanceConfigurationBasic"
              },
              "integrationInstanceWorkflows": {
                "description": "The array of integration instance workflows.",
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/IntegrationInstanceWorkflow"
                },
                "readOnly": true
              },
              "__version": {
                "type": "integer"
              }
            }
          }
        ]
      },
      "IntegrationInstanceBasic": {
        "description": "Contains configurations and connections required for the execution of integration workflows for a connected user.",
        "type": "object",
        "required": [
          "connectionId",
          "name"
        ],
        "properties": {
          "connectionId": {
            "description": "The id of a connection.",
            "type": "integer",
            "format": "int64",
            "readOnly": true
          },
          "connectedUserId": {
            "description": "The id of a connected user.",
            "type": "integer",
            "format": "int64",
            "readOnly": true
          },
          "createdBy": {
            "description": "The created by.",
            "type": "string",
            "readOnly": true
          },
          "createdDate": {
            "description": "The created date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "enabled": {
            "description": "If an integration instance is enabled or not.",
            "type": "boolean"
          },
          "environmentId": {
            "description": "The id of an environment.",
            "type": "integer",
            "format": "int64"
          },
          "id": {
            "description": "The id of an integration instance.",
            "type": "integer",
            "format": "int64",
            "readOnly": true
          },
          "lastExecutionDate": {
            "description": "The last execution date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "lastModifiedBy": {
            "description": "The last modified by.",
            "type": "string",
            "readOnly": true
          },
          "lastModifiedDate": {
            "description": "The last modified date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "integrationInstanceConfigurationId": {
            "description": "Th id of an integration instance configuration.",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "IntegrationInstanceConfiguration": {
        "description": "Contains configurations and connections required for the execution of integration workflows.",
        "allOf": [
          {
            "$ref": "#/components/schemas/IntegrationInstanceConfigurationBasic"
          },
          {
            "type": "object",
            "required": [
              "name"
            ],
            "properties": {
              "connectionAuthorizationParameters": {
                "description": "The connection authorization parameters of a connection.",
                "type": "object",
                "additionalProperties": true,
                "readOnly": true
              },
              "connectionConnectionParameters": {
                "description": "The connection parameters of a connection.",
                "type": "object",
                "additionalProperties": true,
                "readOnly": true
              },
              "connectionParameters": {
                "description": "The parameters of an integration connection, usually oauth2 related data.",
                "type": "object",
                "additionalProperties": true,
                "writeOnly": true
              },
              "integration": {
                "$ref": "#/components/schemas/IntegrationBasic"
              },
              "integrationInstanceConfigurationWorkflows": {
                "description": "The array of integration instance configuration workflows.",
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/IntegrationInstanceConfigurationWorkflow"
                }
              },
              "tags": {
                "description": "The array of tags.",
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Tag"
                }
              },
              "__version": {
                "type": "integer"
              }
            }
          }
        ]
      },
      "IntegrationInstanceConfigurationBasic": {
        "description": "Contains configurations and connections required for the execution of integration workflows.",
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "createdBy": {
            "description": "The created by.",
            "type": "string",
            "readOnly": true
          },
          "createdDate": {
            "description": "The created date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "description": {
            "description": "The description of an integration configuration.",
            "type": "string"
          },
          "enabled": {
            "description": "If an integration instance configuration is enabled or not.",
            "type": "boolean"
          },
          "environmentId": {
            "description": "The id of an environment.",
            "type": "integer",
            "format": "int64"
          },
          "id": {
            "description": "The id of an integration instance configuration.",
            "type": "integer",
            "format": "int64",
            "readOnly": true
          },
          "integrationId": {
            "description": "Th id of an integration.",
            "type": "integer",
            "format": "int64"
          },
          "integrationVersion": {
            "description": "The version of an integration.",
            "type": "integer"
          },
          "lastModifiedBy": {
            "description": "The last modified by.",
            "type": "string",
            "readOnly": true
          },
          "lastModifiedDate": {
            "description": "The last modified date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "name": {
            "description": "The name of an integration instance configuration.",
            "type": "string"
          },
          "authorizationType": {
            "$ref": "../../../../../../libs/platform/platform-configuration/platform-configuration-rest/platform-configuration-rest-impl/openapi.yaml#/components/schemas/AuthorizationType"
          }
        }
      },
      "IntegrationInstanceConfigurationWorkflow": {
        "description": "Contains configuration and connections required for the execution of a particular integration workflow.",
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "createdBy": {
            "description": "The created by.",
            "type": "string",
            "readOnly": true
          },
          "createdDate": {
            "description": "The created date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "inputs": {
            "description": "The input parameters of an integration instance configuration used as workflow input values.",
            "type": "object",
            "additionalProperties": true
          },
          "connections": {
            "description": "The connections used by an integration instance configuration.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationInstanceConfigurationWorkflowConnection"
            }
          },
          "enabled": {
            "description": "If a workflow is enabled or not in the integration instance configuration workflow.",
            "type": "boolean"
          },
          "id": {
            "description": "The id of an integration instance configuration workflow.",
            "type": "integer",
            "format": "int64",
            "readOnly": true
          },
          "integrationInstanceConfigurationId": {
            "description": "The id of an integration instance configuration.",
            "type": "integer",
            "format": "int64"
          },
          "lastExecutionDate": {
            "description": "The last execution date of an integration instance configuration workflow.",
            "type": "string",
            "format": "date-time"
          },
          "lastModifiedBy": {
            "description": "The last modified by.",
            "type": "string",
            "readOnly": true
          },
          "lastModifiedDate": {
            "description": "The last modified date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "workflowId": {
            "description": "The id of a workflow.",
            "type": "string"
          },
          "workflowUuid": {
            "description": "The workflow uuid",
            "type": "string",
            "readOnly": true
          },
          "__version": {
            "type": "integer"
          }
        }
      },
      "IntegrationInstanceConfigurationWorkflowConnection": {
        "description": "The connection used in a particular task or trigger.",
        "type": "object",
        "properties": {
          "connectionId": {
            "description": "The connection id",
            "type": "integer",
            "format": "int64"
          },
          "workflowConnectionKey": {
            "description": "The connection key under which a connection is defined in a workflow definition.",
            "type": "string"
          },
          "workflowNodeName": {
            "description": "The action/trigger name to which a connection belongs.",
            "type": "string"
          }
        }
      },
      "IntegrationStatus": {
        "description": "The status of an integration.",
        "type": "string",
        "enum": [
          "DRAFT",
          "PUBLISHED"
        ]
      },
      "IntegrationVersion": {
        "description": "The integration version.",
        "type": "object",
        "properties": {
          "description": {
            "description": "The description of an integration version.",
            "type": "string"
          },
          "publishedDate": {
            "description": "The published date.",
            "type": "string",
            "format": "date-time"
          },
          "version": {
            "description": "The version of an integration.",
            "type": "integer",
            "readOnly": true
          },
          "status": {
            "$ref": "#/components/schemas/IntegrationStatus"
          }
        }
      },
      "IntegrationInstanceWorkflow": {
        "description": "Contains user configurations for the execution of a particular integration workflow.",
        "type": "object",
        "required": [
          "enabled",
          "integrationInstanceConfigurationWorkflowId",
          "workflowId"
        ],
        "properties": {
          "createdBy": {
            "description": "The created by.",
            "type": "string",
            "readOnly": true
          },
          "createdDate": {
            "description": "The created date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "inputs": {
            "description": "The input parameters of an integration instance used as workflow input values.",
            "type": "object",
            "additionalProperties": true
          },
          "enabled": {
            "description": "If a workflow is enabled or not in the integration instance workflow.",
            "type": "boolean"
          },
          "id": {
            "description": "The id of a project deployment workflow.",
            "type": "integer",
            "format": "int64",
            "readOnly": true
          },
          "integrationInstanceConfigurationWorkflowId": {
            "description": "The id of a integration instance configuration workflow.",
            "type": "integer",
            "format": "int64"
          },
          "lastModifiedBy": {
            "description": "The last modified by.",
            "type": "string",
            "readOnly": true
          },
          "lastModifiedDate": {
            "description": "The last modified date.",
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "workflowId": {
            "description": "The id of a workflow.",
            "type": "string"
          }
        }
      },
      "Page": {
        "$ref": "../../../../../../libs/platform/platform-rest/openapi/components/schemas/objects/page.yaml"
      },
      "Tag": {
        "$ref": "../../../../../../libs/platform/platform-tag/platform-tag-rest/openapi/components/schemas/objects/tag.yaml"
      },
      "UpdateTagsRequest": {
        "description": "The request object that contains the array of tags.",
        "type": "object",
        "properties": {
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Tag"
            }
          }
        }
      },
      "Workflow": {
        "description": "The blueprint that describe the execution of a job.",
        "x-implements": [
          "com.bytechef.platform.configuration.web.rest.model.WorkflowModelAware"
        ],
        "allOf": [
          {
            "$ref": "../../../../../../libs/platform/platform-configuration/platform-configuration-rest/platform-configuration-rest-impl/openapi.yaml#/components/schemas/Workflow"
          },
          {
            "type": "object",
            "properties": {
              "integrationWorkflowId": {
                "description": "The integration workflow id",
                "type": "integer",
                "format": "int64",
                "readOnly": true
              },
              "workflowUuid": {
                "description": "The workflow uuid",
                "type": "string",
                "readOnly": true
              }
            }
          }
        ]
      },
      "WorkflowBasic": {
        "description": "The blueprint that describe the execution of a job.",
        "allOf": [
          {
            "$ref": "../../../../../../libs/platform/platform-configuration/platform-configuration-rest/platform-configuration-rest-impl/openapi.yaml#/components/schemas/WorkflowBasic"
          },
          {
            "type": "object",
            "properties": {
              "integrationWorkflowId": {
                "description": "The integration workflow id",
                "type": "integer",
                "format": "int64",
                "readOnly": true
              },
              "workflowUuid": {
                "description": "The workflow uuid",
                "type": "string",
                "readOnly": true
              }
            }
          }
        ]
      }
    }
  }
}