openapi: 3.1.0 info: title: Alteryx Server API V3 description: >- The Alteryx Server API V3 provides administrative capabilities for managing workflows, schedules, users, user groups, credentials, collections, and server connections. It uses OAuth 2 authentication and implements POST, PUT, GET, DELETE, and PATCH operations so administrators can automate tasks and integrate Server with existing API automation tools. version: 3.0.0 contact: name: Alteryx Support email: support@alteryx.com url: https://community.alteryx.com license: name: Proprietary url: https://www.alteryx.com/terms-and-conditions termsOfService: https://www.alteryx.com/terms-and-conditions x-logo: url: https://www.alteryx.com/sites/default/files/alteryx-logo-2021.svg externalDocs: description: Alteryx Server API V3 Documentation url: https://help.alteryx.com/current/en/server/api-overview/alteryx-server-api-v3.html servers: - url: https://{serverHostname}/webapi description: Alteryx Server instance variables: serverHostname: default: your-server.example.com description: Hostname of your Alteryx Server instance security: - oauth2: [] tags: - name: Workflows description: Manage workflows including upload, retrieval, update, deletion, versioning, and job execution - name: Schedules description: Create, retrieve, update, and delete workflow execution schedules - name: Users description: Manage user accounts, permissions, and asset transfers - name: User Groups description: Manage user groups and group membership - name: Credentials description: Manage stored credentials and credential sharing - name: Collections description: Manage collections of workflows, schedules, users, and user groups - name: Server Connections description: Manage server data connections - name: Jobs description: Manage and monitor workflow execution jobs paths: /v3/workflows: post: operationId: uploadWorkflow summary: Upload a New Workflow description: Upload a new workflow package (YXZP file) to the Alteryx Server. tags: - Workflows requestBody: required: true content: multipart/form-data: schema: type: object required: - file - name - ownerId - isPublic - isReadyForMigration - othersMayDownload - othersCanExecute - executionMode - workflowCredentialType properties: file: type: string format: binary description: The YXZP workflow package file name: type: string description: Name of the workflow ownerId: type: string description: ID of the user who will own the workflow workerTag: type: string description: Worker tag for execution routing districtTags: type: string description: JSON array of district tags comments: type: string description: Comments about the workflow isPublic: type: boolean description: Whether the workflow is publicly accessible isReadyForMigration: type: boolean description: Whether the workflow is ready for migration sourceAppId: type: string description: Source application ID for migration tracking othersMayDownload: type: boolean description: Whether other users may download the workflow othersCanExecute: type: boolean description: Whether other users can execute the workflow executionMode: type: string enum: - Safe - SemiSafe - Standard description: The execution mode for the workflow hasPrivateDataExemption: type: boolean description: Whether the workflow has a private data exemption workflowCredentialType: type: string enum: - Default - Required - Specific description: Type of credential used for workflow execution credentialId: type: string description: ID of the credential to use when workflowCredentialType is Specific collectionIds: type: string description: JSON array of collection IDs to add the workflow to bypassWorkflowVersionCheck: type: boolean description: Whether to bypass workflow version compatibility checking responses: '200': description: Workflow uploaded successfully content: application/json: schema: type: string description: The ID of the newly created workflow '400': description: Bad request - invalid parameters content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized - invalid or missing authentication x-microcks-operation: delay: 0 dispatcher: FALLBACK get: operationId: getWorkflows summary: Retrieve All Workflows description: Retrieve information about all workflow records with optional filtering. tags: - Workflows parameters: - name: view in: query description: Level of detail in the response schema: type: string enum: - Default - Full default: Default - name: name in: query description: Filter workflows by name schema: type: string - name: ownerId in: query description: Filter workflows by owner ID schema: type: string - name: createdAfter in: query description: Filter workflows created after this date (ISO 8601 format) schema: type: string format: date-time - name: createdBefore in: query description: Filter workflows created before this date (ISO 8601 format) schema: type: string format: date-time responses: '200': description: List of workflow records content: application/json: schema: type: array items: $ref: '#/components/schemas/WorkflowSummary' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/workflows/{workflowId}: get: operationId: getWorkflow summary: Retrieve a Specific Workflow description: Retrieve detailed information about a specific workflow record. tags: - Workflows parameters: - $ref: '#/components/parameters/workflowId' responses: '200': description: Workflow details content: application/json: schema: $ref: '#/components/schemas/WorkflowDetail' '401': description: Unauthorized '404': description: Workflow not found x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateWorkflow summary: Update an Existing Workflow description: Update the properties of an existing workflow. tags: - Workflows parameters: - $ref: '#/components/parameters/workflowId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateWorkflowContract' responses: '200': description: Workflow updated successfully content: application/json: schema: $ref: '#/components/schemas/WorkflowDetail' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized '404': description: Workflow not found x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteWorkflow summary: Delete a Workflow description: Delete a specific workflow from the server. tags: - Workflows parameters: - $ref: '#/components/parameters/workflowId' - name: force in: query description: Force deletion even if workflow has dependencies schema: type: boolean default: false responses: '200': description: Workflow deleted successfully '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized '404': description: Workflow not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/workflows/{workflowId}/versions: post: operationId: uploadWorkflowVersion summary: Upload a New Version of an Existing Workflow description: Upload a new version of an existing workflow package. tags: - Workflows parameters: - $ref: '#/components/parameters/workflowId' requestBody: required: true content: multipart/form-data: schema: type: object required: - file - name - ownerId - othersMayDownload - othersCanExecute - executionMode - makePublished - workflowCredentialType properties: file: type: string format: binary description: The YXZP workflow package file name: type: string description: Name of the workflow version ownerId: type: string description: ID of the workflow owner othersMayDownload: type: boolean description: Whether other users may download othersCanExecute: type: boolean description: Whether other users can execute executionMode: type: string enum: - Safe - SemiSafe - Standard hasPrivateDataExemption: type: boolean comments: type: string makePublished: type: boolean description: Whether to make this version the published version workflowCredentialType: type: string enum: - Default - Required - Specific credentialId: type: string bypassWorkflowVersionCheck: type: boolean responses: '200': description: Workflow version uploaded successfully content: application/json: schema: $ref: '#/components/schemas/WorkflowDetail' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized '404': description: Workflow not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/workflows/{workflowId}/package: get: operationId: downloadWorkflowPackage summary: Download a Workflow Package description: Download the YXZP package file for a specific workflow. tags: - Workflows parameters: - $ref: '#/components/parameters/workflowId' - name: versionId in: query description: Specific version ID to download schema: type: string responses: '200': description: Workflow package file content: application/octet-stream: schema: type: string format: binary '400': description: Invalid version ID '401': description: Unauthorized '403': description: Forbidden '404': description: Workflow not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/workflows/{workflowId}/questions: get: operationId: getWorkflowQuestions summary: Retrieve Analytic App Questions description: Retrieve question (input) information for an analytic app workflow. tags: - Workflows parameters: - $ref: '#/components/parameters/workflowId' - name: versionId in: query description: Specific version ID schema: type: string responses: '200': description: List of workflow questions content: application/json: schema: type: array items: $ref: '#/components/schemas/WorkflowQuestion' '400': description: Bad request '401': description: Unauthorized '403': description: Forbidden '404': description: Workflow not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/workflows/{workflowId}/jobs: get: operationId: getWorkflowJobs summary: Get Jobs for a Workflow description: Retrieve execution jobs associated with a specific workflow. tags: - Jobs parameters: - $ref: '#/components/parameters/workflowId' - name: sortField in: query description: Field to sort results by schema: type: string - name: direction in: query description: Sort direction schema: type: string enum: - asc - desc - name: offset in: query description: Number of records to skip for pagination schema: type: string - name: limit in: query description: Maximum number of records to return schema: type: string - name: status in: query description: Filter by job status schema: type: string enum: - Complete - Error - Running - Queued - name: resultCode in: query description: Filter by result code schema: type: string enum: - Success - Warning - Error responses: '200': description: List of jobs content: application/json: schema: type: array items: $ref: '#/components/schemas/JobSummary' '400': description: Bad request '401': description: Unauthorized '404': description: Workflow not found x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createJob summary: Create a New Job for a Workflow description: Queue a new execution job for a specific workflow. tags: - Jobs parameters: - $ref: '#/components/parameters/workflowId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateJobContract' responses: '200': description: Job created successfully content: application/json: schema: $ref: '#/components/schemas/JobDetail' '400': description: Bad request '401': description: Unauthorized '403': description: Forbidden '404': description: Workflow not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/workflows/{workflowId}/transfer: put: operationId: transferWorkflow summary: Transfer Workflow Ownership description: Transfer a specific workflow to a different owner, optionally including associated schedules. tags: - Workflows parameters: - $ref: '#/components/parameters/workflowId' requestBody: required: true content: application/json: schema: type: object required: - ownerId - transferSchedules properties: ownerId: type: string description: ID of the new owner transferSchedules: type: boolean description: Whether to also transfer associated schedules responses: '200': description: Workflow transferred successfully '400': description: Bad request '401': description: Unauthorized '403': description: Forbidden '404': description: Workflow not found '500': description: Internal server error x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/schedules: post: operationId: createSchedule summary: Create a New Schedule description: Create a new execution schedule for a workflow. tags: - Schedules requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateScheduleContract' responses: '201': description: Schedule created successfully content: application/json: schema: type: string description: The ID of the newly created schedule '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK get: operationId: getSchedules summary: Retrieve All Schedules description: Retrieve information about all schedules with optional filtering. tags: - Schedules parameters: - name: view in: query description: Level of detail in the response schema: type: string enum: - Default - Full default: Default - name: ownerId in: query description: Filter by schedule owner schema: type: string - name: workflowId in: query description: Filter by associated workflow schema: type: string - name: runsAfter in: query description: Filter schedules that run after this date (ISO 8601, max 45-day range) schema: type: string format: date-time - name: runsBefore in: query description: Filter schedules that run before this date (ISO 8601, max 45-day range) schema: type: string format: date-time responses: '200': description: List of schedules content: application/json: schema: type: array items: $ref: '#/components/schemas/ScheduleSummary' '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/schedules/{scheduleId}: get: operationId: getSchedule summary: Retrieve a Specific Schedule description: Retrieve detailed information about a specific schedule. tags: - Schedules parameters: - $ref: '#/components/parameters/scheduleId' responses: '200': description: Schedule details content: application/json: schema: $ref: '#/components/schemas/ScheduleDetail' '401': description: Unauthorized '404': description: Schedule not found x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateSchedule summary: Update a Schedule description: Update all properties of an existing schedule. All required fields must be provided. tags: - Schedules parameters: - $ref: '#/components/parameters/scheduleId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateScheduleContract' responses: '200': description: Schedule updated successfully content: application/json: schema: $ref: '#/components/schemas/ScheduleDetail' '400': description: Bad request '401': description: Unauthorized '404': description: Schedule not found x-microcks-operation: delay: 0 dispatcher: FALLBACK patch: operationId: patchSchedule summary: Partially Update a Schedule description: Update specific properties of an existing schedule without requiring all fields. tags: - Schedules parameters: - $ref: '#/components/parameters/scheduleId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchScheduleContract' responses: '200': description: Schedule updated successfully content: application/json: schema: $ref: '#/components/schemas/ScheduleDetail' '400': description: Bad request '401': description: Unauthorized '404': description: Schedule not found x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteSchedule summary: Delete a Schedule description: Remove a schedule from the system. tags: - Schedules parameters: - $ref: '#/components/parameters/scheduleId' responses: '200': description: Schedule deleted successfully '400': description: Bad request '401': description: Unauthorized '404': description: Schedule not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/users: post: operationId: createUser summary: Create a New User description: Create a new user account on the Alteryx Server. Requires Curator role. tags: - Users requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateUserContract' responses: '201': description: User created successfully content: application/json: schema: $ref: '#/components/schemas/UserDetail' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized '403': description: Forbidden - insufficient permissions x-microcks-operation: delay: 0 dispatcher: FALLBACK get: operationId: getUsers summary: Retrieve All Users description: Retrieve information about all user records with optional filtering. Requires Curator role. tags: - Users parameters: - name: view in: query description: Level of detail in the response schema: type: string enum: - Default - Full default: Default - name: active in: query description: Filter by active status schema: type: boolean - name: email in: query description: Filter by email address schema: type: string - name: role in: query description: Filter by user role schema: type: string enum: - NoAccess - Viewer - Member - Artisan - Curator - Evaluated - name: firstName in: query description: Filter by first name schema: type: string - name: lastName in: query description: Filter by last name schema: type: string - name: createdAfter in: query description: Filter users created after this date (ISO 8601) schema: type: string format: date-time - name: createdBefore in: query description: Filter users created before this date (ISO 8601) schema: type: string format: date-time responses: '200': description: List of user records content: application/json: schema: type: array items: $ref: '#/components/schemas/UserDetail' '400': description: Bad request '401': description: Unauthorized '403': description: Forbidden x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/users/{userId}: get: operationId: getUser summary: Retrieve a Specific User description: Retrieve detailed information about a specific user. Requires Curator role. tags: - Users parameters: - $ref: '#/components/parameters/userId' responses: '200': description: User details content: application/json: schema: $ref: '#/components/schemas/UserDetail' '401': description: Unauthorized '403': description: Forbidden '404': description: User not found x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateUser summary: Update a User description: Update user account details and permissions. Requires Curator role. tags: - Users parameters: - $ref: '#/components/parameters/userId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateUserContract' responses: '200': description: User updated successfully content: application/json: schema: $ref: '#/components/schemas/UserDetail' '400': description: Bad request '401': description: Unauthorized '403': description: Forbidden '404': description: User not found x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteUser summary: Delete a User description: >- Delete a user from the system. The user must not own any assets or belong to any groups. Requires Curator role. tags: - Users parameters: - $ref: '#/components/parameters/userId' responses: '200': description: User deleted successfully '400': description: Bad request - user owns assets or belongs to groups content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized '403': description: Forbidden '404': description: User not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/users/{userId}/deactivate: post: operationId: deactivateUser summary: Deactivate a User description: Deactivate a user account and remove them from all user groups. Requires Curator role. tags: - Users parameters: - $ref: '#/components/parameters/userId' responses: '200': description: User deactivated successfully content: application/json: schema: type: array items: type: string description: Array of user group IDs from which the user was removed '400': description: Bad request '401': description: Unauthorized '403': description: Forbidden '404': description: User not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/users/{userId}/passwordReset: post: operationId: resetUserPassword summary: Send Password Reset Email description: >- Send a password reset email to the user. Not available for Windows or SAML authentication methods. Requires Curator role. tags: - Users parameters: - $ref: '#/components/parameters/userId' responses: '200': description: Password reset email sent successfully '400': description: Bad request - authentication method not supported '401': description: Unauthorized '403': description: Forbidden '404': description: User not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/users/{userId}/assets: get: operationId: getUserAssets summary: Retrieve User Assets description: List all assets (workflows, schedules, collections) owned by a specific user. Requires Curator role. tags: - Users parameters: - $ref: '#/components/parameters/userId' - name: assetType in: query description: Filter by asset type schema: type: string default: All responses: '200': description: List of user assets content: application/json: schema: type: array items: $ref: '#/components/schemas/UserAsset' '401': description: Unauthorized '403': description: Forbidden '404': description: User not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/users/{userId}/assetTransfer: put: operationId: transferUserAssets summary: Transfer User Assets description: >- Transfer all assets (workflows, schedules, and collections) owned by one user to another. The receiving user must have Artisan or Curator role. Requires Curator role. tags: - Users parameters: - $ref: '#/components/parameters/userId' requestBody: required: true content: application/json: schema: type: object required: - ownerId - transferWorkflows - transferSchedules - transferCollections properties: ownerId: type: string description: ID of the user receiving the assets transferWorkflows: type: boolean description: Whether to transfer workflows transferSchedules: type: boolean description: Whether to transfer schedules transferCollections: type: boolean description: Whether to transfer collections responses: '200': description: Assets transferred successfully '400': description: Bad request - receiving user lacks required role '401': description: Unauthorized '403': description: Forbidden '404': description: User not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/credentials: get: operationId: getCredentials summary: Retrieve All Credentials description: Retrieve all accessible credential records. Requires Curator role. tags: - Credentials parameters: - name: view in: query schema: type: string enum: - Default - Full default: Default - name: userId in: query description: Filter by user schema: type: string - name: userGroupId in: query description: Filter by user group schema: type: string responses: '200': description: List of credentials content: application/json: schema: type: array items: $ref: '#/components/schemas/Credential' '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createCredential summary: Create a New Credential description: Create a new credential record. Requires Curator role. tags: - Credentials requestBody: required: true content: application/json: schema: type: object required: - username - password properties: username: type: string description: Windows login username password: type: string format: password description: User password responses: '201': description: Credential created successfully content: application/json: schema: $ref: '#/components/schemas/Credential' '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/credentials/{credentialId}: get: operationId: getCredential summary: Retrieve a Specific Credential description: Retrieve details for a specific credential record. tags: - Credentials parameters: - $ref: '#/components/parameters/credentialId' responses: '200': description: Credential details content: application/json: schema: $ref: '#/components/schemas/Credential' '401': description: Unauthorized '404': description: Credential not found x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateCredential summary: Update a Credential description: Update an existing credential record. Requires Curator role. tags: - Credentials parameters: - $ref: '#/components/parameters/credentialId' requestBody: required: true content: application/json: schema: type: object required: - username - NewPassword properties: username: type: string description: Windows login username NewPassword: type: string format: password description: Replacement password responses: '200': description: Credential updated successfully content: application/json: schema: $ref: '#/components/schemas/Credential' '400': description: Bad request '401': description: Unauthorized '404': description: Credential not found x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteCredential summary: Delete a Credential description: Delete a credential from the system. Requires Curator role. tags: - Credentials parameters: - $ref: '#/components/parameters/credentialId' - name: force in: query description: Force deletion with share cleanup schema: type: boolean default: false responses: '200': description: Credential deleted successfully '400': description: Bad request '401': description: Unauthorized '404': description: Credential not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/credentials/{credentialId}/users: post: operationId: shareCredentialWithUser summary: Share Credential With a User description: Grant a user access to a specific credential. Requires Curator role. tags: - Credentials parameters: - $ref: '#/components/parameters/credentialId' requestBody: required: true content: application/json: schema: type: object required: - userId properties: userId: type: string description: ID of the user to share with responses: '200': description: Credential shared successfully '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/credentials/{credentialId}/users/{userId}: delete: operationId: removeCredentialUserAccess summary: Remove User Access to Credential description: Remove a user's access to a specific credential. Requires Curator role. tags: - Credentials parameters: - $ref: '#/components/parameters/credentialId' - $ref: '#/components/parameters/userId' responses: '200': description: User access removed '401': description: Unauthorized '404': description: Not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/credentials/{credentialId}/userGroups: post: operationId: shareCredentialWithUserGroup summary: Share Credential With a User Group description: Grant a user group access to a specific credential. Requires Curator role. tags: - Credentials parameters: - $ref: '#/components/parameters/credentialId' requestBody: required: true content: application/json: schema: type: object required: - userGroupId properties: userGroupId: type: string description: ID of the user group to share with responses: '200': description: Credential shared successfully '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/credentials/{credentialId}/userGroups/{userGroupId}: delete: operationId: removeCredentialUserGroupAccess summary: Remove User Group Access to Credential description: Remove a user group's access to a specific credential. Requires Curator role. tags: - Credentials parameters: - $ref: '#/components/parameters/credentialId' - name: userGroupId in: path required: true description: Unique identifier of the user group schema: type: string responses: '200': description: User group access removed '401': description: Unauthorized '404': description: Not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections: post: operationId: createCollection summary: Create a New Collection description: Create a new collection. Requires Curator role. tags: - Collections requestBody: required: true content: application/json: schema: type: object required: - name properties: name: type: string description: Name of the collection responses: '201': description: Collection created successfully content: application/json: schema: $ref: '#/components/schemas/Collection' '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK get: operationId: getCollections summary: Retrieve All Collections description: Retrieve all collections with optional view level. tags: - Collections parameters: - name: view in: query schema: type: string enum: - Default - Full default: Default responses: '200': description: List of collections content: application/json: schema: type: array items: $ref: '#/components/schemas/Collection' '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}: get: operationId: getCollection summary: Retrieve a Specific Collection description: Retrieve detailed information about a specific collection. tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' responses: '200': description: Collection details content: application/json: schema: $ref: '#/components/schemas/Collection' '401': description: Unauthorized '404': description: Collection not found x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateCollection summary: Update a Collection description: Update collection name and owner. tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' requestBody: required: true content: application/json: schema: type: object required: - name - ownerId properties: name: type: string ownerId: type: string responses: '200': description: Collection updated successfully content: application/json: schema: $ref: '#/components/schemas/Collection' '400': description: Bad request '401': description: Unauthorized '404': description: Collection not found x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteCollection summary: Delete a Collection description: Delete a collection from the system. tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' - name: forceDelete in: query description: Force deletion schema: type: boolean default: false responses: '200': description: Collection deleted successfully '400': description: Bad request '401': description: Unauthorized '404': description: Collection not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/users: post: operationId: addUserToCollection summary: Add a User to a Collection description: Add a user to a collection with specified permissions. tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CollectionUserPermission' responses: '200': description: User added to collection '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/users/{userId}/permissions: put: operationId: updateCollectionUserPermissions summary: Update User Permissions in a Collection description: Update a user's permission flags within a collection. tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' - $ref: '#/components/parameters/userId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CollectionPermissionFlags' responses: '200': description: Permissions updated '401': description: Unauthorized '404': description: Not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/users/{userId}: delete: operationId: removeUserFromCollection summary: Remove a User From a Collection tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' - $ref: '#/components/parameters/userId' responses: '200': description: User removed from collection '401': description: Unauthorized '404': description: Not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/userGroups: post: operationId: addUserGroupToCollection summary: Add a User Group to a Collection tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' requestBody: required: true content: application/json: schema: type: object required: - userGroupId properties: userGroupId: type: string isAdmin: type: boolean default: false canAddAssets: type: boolean default: false canRemoveAssets: type: boolean default: false canUpdateAssets: type: boolean default: false canAddUsers: type: boolean default: false canRemoveUsers: type: boolean default: false responses: '200': description: User group added to collection '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/userGroups/{userGroupId}/permissions: put: operationId: updateCollectionUserGroupPermissions summary: Update User Group Permissions in a Collection tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' - name: userGroupId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CollectionPermissionFlags' responses: '200': description: Permissions updated '401': description: Unauthorized '404': description: Not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/userGroups/{userGroupId}: delete: operationId: removeUserGroupFromCollection summary: Remove a User Group From a Collection tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' - name: userGroupId in: path required: true schema: type: string responses: '200': description: User group removed from collection '401': description: Unauthorized '404': description: Not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/workflows: post: operationId: addWorkflowToCollection summary: Add a Workflow to a Collection tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' requestBody: required: true content: application/json: schema: type: object required: - workflowId properties: workflowId: type: string responses: '200': description: Workflow added to collection '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/workflows/{appId}: delete: operationId: removeWorkflowFromCollection summary: Remove a Workflow From a Collection tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' - name: appId in: path required: true description: Workflow application ID schema: type: string responses: '200': description: Workflow removed from collection '401': description: Unauthorized '404': description: Not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/schedules: post: operationId: addScheduleToCollection summary: Add a Schedule to a Collection tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' requestBody: required: true content: application/json: schema: type: object required: - scheduleId properties: scheduleId: type: string responses: '200': description: Schedule added to collection '400': description: Bad request '401': description: Unauthorized x-microcks-operation: delay: 0 dispatcher: FALLBACK /v3/collections/{collectionId}/schedules/{scheduleId}: delete: operationId: removeScheduleFromCollection summary: Remove a Schedule From a Collection tags: - Collections parameters: - $ref: '#/components/parameters/collectionId' - $ref: '#/components/parameters/scheduleId' responses: '200': description: Schedule removed from collection '401': description: Unauthorized '404': description: Not found x-microcks-operation: delay: 0 dispatcher: FALLBACK components: securitySchemes: oauth2: type: oauth2 description: >- OAuth 2.0 authentication using API Access Key and API Access Secret obtained from the Server User Interface under the Keys section. flows: clientCredentials: tokenUrl: https://{serverHostname}/webapi/oauth2/token scopes: {} parameters: workflowId: name: workflowId in: path required: true description: Unique identifier of the workflow schema: type: string scheduleId: name: scheduleId in: path required: true description: Unique identifier of the schedule schema: type: string userId: name: userId in: path required: true description: Unique identifier of the user schema: type: string credentialId: name: credentialId in: path required: true description: Unique identifier of the credential schema: type: string collectionId: name: collectionId in: path required: true description: Unique identifier of the collection schema: type: string schemas: WorkflowSummary: type: object description: Summary representation of an Alteryx workflow properties: id: type: string description: Unique workflow identifier example: abc123 sourceAppId: type: string description: Source application identifier for migration tracking example: '500123' name: type: string description: Name of the workflow example: Example Title ownerId: type: string description: ID of the workflow owner example: '500123' dateCreated: type: string format: date-time description: Date the workflow was created (ISO 8601) example: '2026-01-15T10:30:00Z' publishedVersionNumber: type: integer description: Version number of the published version example: 10 isAmp: type: boolean description: Whether the workflow uses AMP engine example: true executionMode: type: string enum: - Safe - SemiSafe - Standard description: Execution mode for the workflow example: Safe WorkflowDetail: type: object description: Detailed representation of an Alteryx workflow including versions properties: id: type: string description: Unique workflow identifier example: abc123 sourceAppId: type: string description: Source application identifier example: '500123' dateCreated: type: string format: date-time description: Date the workflow was created example: '2026-01-15T10:30:00Z' runCount: type: integer description: Total number of times the workflow has been executed example: 10 versions: type: array description: List of workflow versions items: $ref: '#/components/schemas/WorkflowVersion' example: [] name: type: string description: Name of the workflow example: Example Title ownerId: type: string description: ID of the workflow owner example: '500123' workerTag: type: string description: Worker tag for execution routing example: example_value districtTags: type: array items: type: string description: District tags assigned to the workflow example: [] comments: type: string description: Comments about the workflow example: example_value isPublic: type: boolean description: Whether the workflow is publicly accessible example: true isReadyForMigration: type: boolean description: Whether the workflow is ready for migration example: true publishedVersionId: type: string description: ID of the currently published version example: '500123' othersMayDownload: type: boolean description: Whether other users may download the workflow example: true othersCanViewHistory: type: boolean description: Whether other users can view execution history example: true othersCanExecute: type: boolean description: Whether other users can execute the workflow example: true hasPrivateDataExemption: type: boolean description: Whether the workflow has a private data exemption example: true WorkflowVersion: type: object description: A specific version of a workflow properties: versionId: type: string description: Unique version identifier example: '500123' versionNumber: type: integer description: Sequential version number example: 10 dateCreated: type: string format: date-time description: Date the version was created example: '2026-01-15T10:30:00Z' uploadSource: type: string description: Source from which the version was uploaded example: example_value uploadDate: type: string format: date-time description: Date the version was uploaded example: '2026-01-15T10:30:00Z' packageWorkflowType: type: string description: Type of workflow in the package example: example_value published: type: boolean description: Whether this version is the published version example: true comments: type: string description: Comments about this version example: example_value runDisabled: type: boolean description: Whether execution is disabled for this version example: true executionMode: type: string enum: - Safe - SemiSafe - Standard example: Safe workflowCredentialType: type: string enum: - Default - Required - Specific example: Default credentialId: type: string description: Credential ID if workflowCredentialType is Specific example: '500123' hasPrivateDataExemption: type: boolean example: true othersMayDownload: type: boolean example: true othersCanViewHistory: type: boolean example: true details: $ref: '#/components/schemas/WorkflowVersionDetails' WorkflowVersionDetails: type: object description: Metadata details for a workflow version properties: isAmp: type: boolean description: Whether the version uses AMP engine example: true fileName: type: string description: Name of the workflow file example: example_value author: type: string description: Author of the workflow example: example_value copyright: type: string description: Copyright information example: example_value description: type: string description: Description of the workflow example: A sample description. name: type: string description: Display name of the workflow example: Example Title noOutputFilesMessage: type: string description: Message shown when no output files are generated example: example_value outputMessage: type: string description: Message shown with output files example: example_value url: type: string format: uri description: Related URL example: https://www.example.com urlText: type: string description: Display text for the related URL example: https://www.example.com UpdateWorkflowContract: type: object description: Contract for updating an existing workflow required: - name - versionId - ownerId - workerTag - districtTags - comments properties: name: type: string description: Updated workflow name example: Example Title versionId: type: string description: Version ID to update example: '500123' makePublished: type: boolean description: Whether to make the specified version published example: true ownerId: type: string description: Updated owner ID example: '500123' workerTag: type: string description: Updated worker tag example: example_value districtTags: type: array items: type: string description: Updated district tags example: [] comments: type: string description: Updated comments example: example_value isPublic: type: boolean example: true isReadyForMigration: type: boolean example: true othersMayDownload: type: boolean example: true othersCanExecute: type: boolean example: true executionMode: type: string enum: - Safe - SemiSafe - Standard example: Safe hasPrivateDataExemption: type: boolean example: true workflowCredentialType: type: string enum: - Default - Required - Specific example: Default credentialId: type: string example: '500123' WorkflowQuestion: type: object description: An analytic app question (input parameter) properties: name: type: string description: Name of the question example: Example Title questionType: type: string description: Type of the question input example: example_value description: type: string description: Description of the question example: A sample description. value: type: string description: Default value example: example_value multiple: type: boolean description: Whether multiple selections are allowed example: true items: type: array description: Available options for the question items: type: object properties: key: type: string value: type: string example: [] ScheduleSummary: type: object description: Summary representation of a schedule properties: id: type: string description: Unique schedule identifier example: abc123 name: type: string description: Name of the schedule example: Example Title workflowId: type: string description: ID of the associated workflow example: '500123' ownerId: type: string description: ID of the schedule owner example: '500123' runDateTime: type: string format: date-time description: Next scheduled run date and time example: '2026-01-15T10:30:00Z' timeZone: type: string description: Time zone for the schedule example: example_value ScheduleDetail: type: object description: Detailed representation of a schedule properties: id: type: string description: Unique schedule identifier example: abc123 name: type: string description: Name of the schedule example: Example Title workflowId: type: string description: ID of the associated workflow example: '500123' versionId: type: string description: Specific workflow version ID example: '500123' ownerId: type: string description: ID of the schedule owner example: '500123' runDateTime: type: string format: date-time description: Next scheduled run date and time example: '2026-01-15T10:30:00Z' comment: type: string description: Comments about the schedule example: example_value enabled: type: boolean description: Whether the schedule is active example: true priority: type: string enum: - Low - Medium - High - Critical description: Execution priority example: Low workerTag: type: string description: Worker tag for execution routing example: example_value status: type: string description: Current status of the schedule example: example_value credentialId: type: string description: Credential used for execution example: '500123' creationTime: type: string format: date-time description: When the schedule was created example: '2026-01-15T10:30:00Z' lastRunTime: type: string format: date-time description: When the schedule last executed example: '2026-01-15T10:30:00Z' state: type: string description: Current state of the schedule example: example_value runCount: type: integer description: Total number of times the schedule has executed example: 10 iteration: $ref: '#/components/schemas/ScheduleIteration' frequency: type: string description: Human-readable frequency description example: example_value lastError: type: string description: Last error message if any example: example_value cpuName: type: string description: Name of the worker node example: example_value lastModifiedId: type: string description: ID of the user who last modified the schedule example: '500123' lastModifiedDate: type: string format: date-time description: Date of last modification example: '2026-01-15T10:30:00Z' canEdit: type: boolean description: Whether the current user can edit this schedule example: true timeZone: type: string description: Time zone for the schedule example: example_value questions: type: array description: Analytic app question values items: type: object properties: name: type: string value: type: string example: [] ScheduleIteration: type: object description: Schedule iteration configuration defining when and how often a schedule runs required: - iterationType - startTime properties: iterationType: type: string enum: - Once - Hourly - Daily - Weekly - Monthly - Custom - Cron description: The frequency pattern for the schedule example: Once startTime: type: string format: date-time description: Start date and time (ISO 8601, must be in the future) example: '2026-01-15T10:30:00Z' endTime: type: string format: date-time description: End date and time (ISO 8601) example: '2026-01-15T10:30:00Z' hourlyContract: type: object description: Configuration for hourly iteration properties: hours: type: integer description: Number of hours between executions minutes: type: integer description: Number of minutes between executions example: https://www.example.com dailyContract: type: object description: Configuration for daily iteration properties: runOnlyWorkWeek: type: boolean description: Whether to run only on workdays (Monday-Friday) example: example_value weeklyContract: type: object description: Configuration for weekly iteration properties: daysOfWeek: type: array items: type: string description: Days of the week to run example: example_value monthlyContract: type: object description: Configuration for monthly iteration properties: simpleDayOfMonth: type: boolean description: Whether to use a simple day-of-month pattern dayOfMonth: type: string description: Day of the month to run occurrence: type: string description: Occurrence pattern (First, Second, Third, Fourth, Last) dayOfWeek: type: integer description: Day of the week (0=Sunday, 6=Saturday) example: example_value customContract: type: object description: Configuration for custom iteration properties: daysOfMonth: type: array items: type: integer description: Specific days of the month to run months: type: array items: type: integer description: Specific months to run (1-12) example: example_value cronContract: type: object description: Configuration for cron-based iteration properties: cronExpression: type: string description: >- Cron expression with 5 mandatory fields: minute, hour, day-of-month, month, day-of-week example: example_value CreateScheduleContract: type: object description: Contract for creating a new schedule required: - workflowId - iteration properties: workflowId: type: string description: ID of the workflow to schedule example: '500123' iteration: $ref: '#/components/schemas/ScheduleIteration' name: type: string description: Name of the schedule example: Example Title comment: type: string description: Comments about the schedule example: example_value priority: type: string enum: - Low - Medium - High - Critical default: Low description: Execution priority example: Low workerTag: type: string default: none description: Worker tag for execution routing example: example_value credentialId: type: string description: Credential to use for execution example: '500123' timeZone: type: string default: UTC description: Time zone for the schedule (defaults to UTC-0) example: example_value questions: type: array description: Analytic app question values items: type: object properties: name: type: string value: type: string example: [] UpdateScheduleContract: type: object description: Contract for fully updating a schedule (all required fields must be provided) required: - workflowId - ownerId - iteration - name - comment - workerTag - credentialId properties: workflowId: type: string example: '500123' ownerId: type: string example: '500123' iteration: $ref: '#/components/schemas/ScheduleIteration' name: type: string example: Example Title comment: type: string example: example_value priority: type: string enum: - Low - Medium - High - Critical default: Low example: Low workerTag: type: string example: example_value enabled: type: boolean example: true credentialId: type: string example: '500123' timeZone: type: string example: example_value questions: type: array items: type: object properties: name: type: string value: type: string example: [] PatchScheduleContract: type: object description: Contract for partially updating a schedule properties: ownerId: type: string example: '500123' iteration: $ref: '#/components/schemas/ScheduleIteration' name: type: string example: Example Title comment: type: string example: example_value priority: type: string enum: - Low - Medium - High - Critical example: Low workerTag: type: string example: example_value enabled: type: boolean example: true credentialId: type: string example: '500123' timeZone: type: string example: example_value questions: type: array items: type: object properties: name: type: string value: type: string example: [] CreateUserContract: type: object description: Contract for creating a new user required: - firstName - lastName - email properties: firstName: type: string description: User's first name example: example_value lastName: type: string description: User's last name example: example_value email: type: string format: email description: User's email address example: user@example.com role: type: string enum: - NoAccess - Viewer - Member - Artisan - Curator - Evaluated description: User role determining access level example: NoAccess defaultWorkerTag: type: string description: Default worker tag for the user example: example_value canScheduleJobs: type: boolean description: Whether the user can create schedules example: true canPrioritizeJobs: type: boolean description: Whether the user can set job priority example: true canAssignJobs: type: boolean description: Whether the user can assign jobs to workers example: true canCreateCollections: type: boolean description: Whether the user can create collections example: true isApiEnabled: type: boolean description: Whether API access is enabled for the user example: true defaultCredentialId: type: string description: Default credential ID for the user example: '500123' isActive: type: boolean description: Whether the user account is active example: true timeZone: type: string description: User's preferred time zone example: example_value canCreateAndUpdateDcm: type: boolean description: Whether the user can create and update DCM connections example: true canShareForExecutionDcm: type: boolean description: Whether the user can share DCM connections for execution example: true canShareForCollaborationDcm: type: boolean description: Whether the user can share DCM connections for collaboration example: true canManageGenericVaultsDcm: type: boolean description: Whether the user can manage generic DCM vaults example: true UpdateUserContract: type: object description: Contract for updating an existing user required: - firstName - lastName - email - role - defaultWorkerTag - canScheduleJobs - canPrioritizeJobs - canAssignJobs - isApiEnabled - defaultCredentialId - isActive - isValidated - timeZone properties: id: type: string description: User ID (optional, for verification) example: abc123 firstName: type: string example: example_value lastName: type: string example: example_value email: type: string format: email example: user@example.com role: type: string enum: - NoAccess - Viewer - Member - Artisan - Curator - Evaluated example: NoAccess defaultWorkerTag: type: string example: example_value canScheduleJobs: type: boolean example: true canPrioritizeJobs: type: boolean example: true canAssignJobs: type: boolean example: true canCreateCollections: type: boolean example: true isApiEnabled: type: boolean example: true defaultCredentialId: type: string example: '500123' isAccountLocked: type: boolean description: Whether the account is locked example: true isActive: type: boolean example: true isValidated: type: boolean description: Whether the user's email has been validated example: true timeZone: type: string example: example_value language: type: string enum: - de-de - en-us - es-es - fr-fr - it-it - ja-jp - pt-br - zh-cn description: User's preferred language example: de-de canCreateAndUpdateDcm: type: boolean example: true canShareForExecutionDcm: type: boolean example: true canShareForCollaborationDcm: type: boolean example: true canManageGenericVaultsDcm: type: boolean example: true UserDetail: type: object description: Detailed representation of a user account properties: id: type: string description: Unique user identifier example: abc123 firstName: type: string description: User's first name example: example_value lastName: type: string description: User's last name example: example_value email: type: string format: email description: User's email address example: user@example.com role: type: string enum: - NoAccess - Viewer - Member - Artisan - Curator - Evaluated description: User role example: NoAccess dateCreated: type: string format: date-time description: Date the user was created example: '2026-01-15T10:30:00Z' defaultWorkerTag: type: string description: Default worker tag example: example_value canScheduleJobs: type: boolean example: true canPrioritizeJobs: type: boolean example: true canAssignJobs: type: boolean example: true canCreateCollections: type: boolean example: true isApiEnabled: type: boolean example: true defaultCredentialId: type: string example: '500123' isAccountLocked: type: boolean example: true isActive: type: boolean example: true isValidated: type: boolean example: true timeZone: type: string example: example_value language: type: string example: example_value canCreateAndUpdateDcm: type: boolean example: true canShareForExecutionDcm: type: boolean example: true canShareForCollaborationDcm: type: boolean example: true canManageGenericVaultsDcm: type: boolean example: true UserAsset: type: object description: An asset owned by a user properties: id: type: string description: Asset identifier example: abc123 type: type: string description: Type of asset (workflow, schedule, collection) example: example_value name: type: string description: Name of the asset example: Example Title JobSummary: type: object description: Summary representation of an execution job properties: id: type: string description: Unique job identifier example: abc123 createDate: type: string format: date-time description: Date the job was created example: '2026-01-15T10:30:00Z' status: type: string description: Current job status example: example_value priority: type: string enum: - Low - Medium - High - Critical description: Job priority example: Low workerTag: type: string description: Worker tag for execution routing example: example_value runWithE2: type: boolean description: Whether the job runs with AMP engine example: true JobDetail: type: object description: Detailed representation of an execution job properties: id: type: string description: Unique job identifier example: abc123 appId: type: string description: Workflow application ID example: '500123' createDateTime: type: string format: date-time description: Date and time the job was created example: '2026-01-15T10:30:00Z' status: type: string description: Current job status example: example_value disposition: type: string description: Final disposition of the job example: example_value outputs: type: array description: Output files generated by the job items: type: object properties: id: type: string description: Output identifier availableFormats: type: array items: type: string description: Available download formats fileName: type: string description: Name of the output file example: [] messages: type: array description: Messages generated during execution items: type: object properties: status: type: integer description: Message status code text: type: string description: Message text toolId: type: integer description: ID of the tool that generated the message example: [] priority: type: string enum: - Low - Medium - High - Critical example: Low workerTag: type: string example: example_value runWithE2: type: boolean example: true CreateJobContract: type: object description: Contract for creating a new execution job properties: workerTag: type: string default: none description: Worker tag for routing example: example_value credentialId: type: string description: Credential to use for execution example: '500123' questions: type: array description: Analytic app question values items: type: object properties: name: type: string value: type: string example: [] priority: type: string enum: - Low - Medium - High - Critical description: Job priority example: Low Credential: type: object description: A stored credential for workflow execution properties: id: type: string description: Unique credential identifier example: abc123 username: type: string description: Windows login username example: example_value Collection: type: object description: A collection of workflows, schedules, and users properties: id: type: string description: Unique collection identifier example: abc123 name: type: string description: Name of the collection example: Example Title ownerId: type: string description: ID of the collection owner example: '500123' dateCreated: type: string format: date-time description: Date the collection was created example: '2026-01-15T10:30:00Z' CollectionUserPermission: type: object description: User permissions within a collection required: - userId properties: userId: type: string description: ID of the user example: '500123' isAdmin: type: boolean default: false example: true canAddAssets: type: boolean default: false example: true canRemoveAssets: type: boolean default: false example: true canUpdateAssets: type: boolean default: false example: true canAddUsers: type: boolean default: false example: true canRemoveUsers: type: boolean default: false example: true CollectionPermissionFlags: type: object description: Permission flags for collection access properties: isAdmin: type: boolean example: true canAddAssets: type: boolean example: true canRemoveAssets: type: boolean example: true canUpdateAssets: type: boolean example: true canAddUsers: type: boolean example: true canRemoveUsers: type: boolean example: true ErrorResponse: type: object description: Standard error response properties: message: type: string description: Human-readable error message example: example_value errors: type: array description: Detailed error information items: type: object properties: field: type: string message: type: string example: []