openapi: 3.1.0 info: title: Conductor Admin Workflow API description: Conductor is a workflow orchestration platform originally created by Netflix. It allows you to build complex applications using simple and granular tasks that do not need to be aware of or keep track of the state of your application's execution flow. Conductor keeps track of the state, calls tasks in the right order (sequentially or in parallel, as defined by you), retries calls if needed, handles failure scenarios gracefully, and outputs the final result. This API provides endpoints for managing workflow definitions, task definitions, workflow executions, task executions, and event handlers. version: 3.x contact: name: Conductor OSS url: https://conductor-oss.github.io/conductor/ license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://localhost:8080/api description: Local Conductor Server - url: https://play.orkes.io/api description: Orkes Conductor Playground tags: - name: Workflow description: APIs for managing workflow executions paths: /workflow: post: operationId: startWorkflow summary: Conductor Start a New Workflow description: Starts a new workflow execution based on a registered workflow definition. tags: - Workflow requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/StartWorkflowRequest' responses: '200': description: Workflow started successfully content: application/json: schema: type: string description: The workflow instance ID '404': description: Workflow definition not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/{workflowId}: get: operationId: getWorkflowExecution summary: Conductor Get Workflow Execution Status description: Retrieves the current status and details of a running or completed workflow execution. tags: - Workflow parameters: - name: workflowId in: path required: true description: The workflow instance ID schema: type: string - name: includeTasks in: query required: false description: Whether to include task details in the response schema: type: boolean default: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Workflow' '404': description: Workflow execution not found x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteWorkflowExecution summary: Conductor Delete a Workflow Execution description: Removes a workflow execution and its associated data. tags: - Workflow parameters: - name: workflowId in: path required: true description: The workflow instance ID schema: type: string - name: archiveWorkflow in: query required: false description: Whether to archive the workflow before deletion schema: type: boolean default: true responses: '204': description: Workflow execution deleted successfully '404': description: Workflow execution not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/{workflowId}/pause: put: operationId: pauseWorkflow summary: Conductor Pause a Running Workflow description: Pauses a currently running workflow execution. tags: - Workflow parameters: - name: workflowId in: path required: true description: The workflow instance ID schema: type: string responses: '200': description: Workflow paused successfully '404': description: Workflow execution not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/{workflowId}/resume: put: operationId: resumeWorkflow summary: Conductor Resume a Paused Workflow description: Resumes a previously paused workflow execution. tags: - Workflow parameters: - name: workflowId in: path required: true description: The workflow instance ID schema: type: string responses: '200': description: Workflow resumed successfully '404': description: Workflow execution not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/{workflowId}/restart: post: operationId: restartWorkflow summary: Conductor Restart a Completed Workflow description: Restarts a completed workflow from the beginning with the same input. If useLatestDefinitions is set, the workflow uses the latest definition. tags: - Workflow parameters: - name: workflowId in: path required: true description: The workflow instance ID schema: type: string - name: useLatestDefinitions in: query required: false description: Whether to use the latest workflow and task definitions schema: type: boolean default: false responses: '204': description: Workflow restarted successfully '404': description: Workflow execution not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/{workflowId}/retry: post: operationId: retryWorkflow summary: Conductor Retry a Failed Workflow description: Retries the last failed task in a workflow execution. tags: - Workflow parameters: - name: workflowId in: path required: true description: The workflow instance ID schema: type: string - name: resumeSubworkflowTasks in: query required: false description: Whether to resume subworkflow tasks schema: type: boolean default: false responses: '204': description: Workflow retry initiated successfully '404': description: Workflow execution not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/{workflowId}/terminate: delete: operationId: terminateWorkflow summary: Conductor Terminate a Running Workflow description: Terminates a running workflow execution with an optional reason. tags: - Workflow parameters: - name: workflowId in: path required: true description: The workflow instance ID schema: type: string - name: reason in: query required: false description: Reason for termination schema: type: string responses: '200': description: Workflow terminated successfully '404': description: Workflow execution not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/{workflowId}/skiptask/{taskReferenceName}: put: operationId: skipTaskFromWorkflow summary: Conductor Skip a Task in a Running Workflow description: Skips a given task from a running workflow and moves to the next task. The skipped task will be marked as completed with the provided output. tags: - Workflow parameters: - name: workflowId in: path required: true description: The workflow instance ID schema: type: string - name: taskReferenceName in: path required: true description: The reference name of the task to skip schema: type: string requestBody: required: false content: application/json: schema: $ref: '#/components/schemas/SkipTaskRequest' responses: '200': description: Task skipped successfully '404': description: Workflow or task not found x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/search: get: operationId: searchWorkflows summary: Conductor Search for Workflow Executions description: Searches for workflow executions using Conductor's query language. Uses Elasticsearch for indexing workflow execution data. tags: - Workflow parameters: - name: start in: query required: false description: Start index for pagination schema: type: integer default: 0 - name: size in: query required: false description: Number of results to return schema: type: integer default: 100 - name: sort in: query required: false description: Sort field and order (e.g., createTime:DESC) schema: type: string - name: freeText in: query required: false description: Free text search across workflow data schema: type: string default: '*' - name: query in: query required: false description: Query expression for filtering results schema: type: string responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/SearchResultWorkflowSummary' x-microcks-operation: delay: 0 dispatcher: FALLBACK /workflow/running/{name}: get: operationId: getRunningWorkflows summary: Conductor Get Running Workflow Instances description: Retrieves a list of running workflow instance IDs for a given workflow name and optionally filtered by version. tags: - Workflow parameters: - name: name in: path required: true description: The workflow name schema: type: string - name: version in: query required: false description: The workflow version schema: type: integer - name: startTime in: query required: false description: Start time filter (epoch milliseconds) schema: type: integer format: int64 - name: endTime in: query required: false description: End time filter (epoch milliseconds) schema: type: integer format: int64 responses: '200': description: Successful operation content: application/json: schema: type: array items: type: string x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: WorkflowSummary: type: object properties: workflowId: type: string example: '500123' workflowType: type: string example: example_value version: type: integer example: 10 correlationId: type: string example: '500123' startTime: type: string example: example_value updateTime: type: string example: example_value endTime: type: string example: example_value status: type: string enum: - RUNNING - COMPLETED - FAILED - TIMED_OUT - TERMINATED - PAUSED example: RUNNING input: type: string example: example_value output: type: string example: example_value reasonForIncompletion: type: string example: example_value executionTime: type: integer format: int64 example: 10 event: type: string example: example_value failedReferenceTaskNames: type: string example: example_value priority: type: integer example: 10 Workflow: type: object properties: workflowId: type: string description: Unique workflow instance ID example: '500123' workflowName: type: string description: Name of the workflow definition example: example_value workflowVersion: type: integer description: Version of the workflow definition example: 10 correlationId: type: string description: Correlation ID example: '500123' status: type: string description: Current status of the workflow enum: - RUNNING - COMPLETED - FAILED - TIMED_OUT - TERMINATED - PAUSED example: RUNNING startTime: type: integer format: int64 description: Start time in epoch milliseconds example: 10 endTime: type: integer format: int64 description: End time in epoch milliseconds example: 10 updateTime: type: integer format: int64 description: Last update time example: 10 input: type: object description: Workflow input additionalProperties: true example: example_value output: type: object description: Workflow output additionalProperties: true example: example_value tasks: type: array description: List of tasks in the workflow execution items: $ref: '#/components/schemas/Task' example: [] reasonForIncompletion: type: string description: Reason for failure or termination example: example_value failedReferenceTaskNames: type: array description: List of failed task reference names items: type: string example: [] workflowDefinition: $ref: '#/components/schemas/WorkflowDef' priority: type: integer description: Workflow priority example: 10 variables: type: object description: Workflow variables additionalProperties: true example: example_value lastRetriedTime: type: integer format: int64 description: Last retry timestamp example: 10 ownerApp: type: string description: Owner application example: example_value createTime: type: integer format: int64 description: Creation timestamp example: 10 createdBy: type: string description: Created by example: example_value parentWorkflowId: type: string description: Parent workflow ID if this is a sub-workflow example: '500123' Task: type: object properties: taskId: type: string description: Unique task instance ID example: '500123' taskType: type: string description: The type of the task example: example_value status: type: string description: Current status of the task enum: - IN_PROGRESS - CANCELED - FAILED - FAILED_WITH_TERMINAL_ERROR - COMPLETED - COMPLETED_WITH_ERRORS - SCHEDULED - TIMED_OUT - SKIPPED example: IN_PROGRESS referenceTaskName: type: string description: Reference name of the task in the workflow example: example_value workflowInstanceId: type: string description: ID of the workflow instance this task belongs to example: '500123' workflowType: type: string description: Type/name of the workflow example: example_value correlationId: type: string description: Correlation ID example: '500123' scheduledTime: type: integer format: int64 description: Scheduled time example: 10 startTime: type: integer format: int64 description: Start time example: 10 endTime: type: integer format: int64 description: End time example: 10 updateTime: type: integer format: int64 description: Last update time example: 10 retryCount: type: integer description: Current retry count example: 10 pollCount: type: integer description: Number of times this task was polled example: 10 callbackAfterSeconds: type: integer format: int64 description: Callback delay in seconds example: 10 workerId: type: string description: ID of the worker that polled this task example: '500123' inputData: type: object description: Task input data additionalProperties: true example: example_value outputData: type: object description: Task output data additionalProperties: true example: example_value reasonForIncompletion: type: string description: Reason for failure example: example_value logs: type: array description: Task execution logs items: $ref: '#/components/schemas/TaskExecLog' example: [] domain: type: string description: Task domain example: example_value seq: type: integer description: Sequence number example: 10 taskDefName: type: string description: Task definition name example: example_value responseTimeoutSeconds: type: integer format: int64 description: Response timeout example: 10 queueWaitTime: type: integer format: int64 description: Time spent waiting in queue example: 10 StartWorkflowRequest: type: object required: - name properties: name: type: string description: Name of the workflow to start example: Example Title version: type: integer description: Version of the workflow example: 10 correlationId: type: string description: Correlation ID for the workflow instance example: '500123' priority: type: integer description: Priority of the workflow (0-99) default: 0 example: 10 input: type: object description: Input parameters for the workflow additionalProperties: true example: example_value taskToDomain: type: object description: Task to domain mapping for routing additionalProperties: type: string example: example_value workflowDef: $ref: '#/components/schemas/WorkflowDef' externalInputPayloadStoragePath: type: string description: Path to externally stored input payload example: example_value SearchResultWorkflowSummary: type: object properties: totalHits: type: integer format: int64 description: Total number of matching results example: 10 results: type: array description: List of workflow summaries items: $ref: '#/components/schemas/WorkflowSummary' example: [] TaskExecLog: type: object properties: log: type: string description: Log message example: example_value taskId: type: string description: Associated task ID example: '500123' createdTime: type: integer format: int64 description: Timestamp of the log entry example: 10 SkipTaskRequest: type: object properties: taskInput: type: object description: Input for the skipped task additionalProperties: true example: example_value taskOutput: type: object description: Output to set for the skipped task additionalProperties: true example: example_value WorkflowTask: type: object required: - name - taskReferenceName - type properties: name: type: string description: Name of the task example: Example Title taskReferenceName: type: string description: Unique reference name for the task within the workflow example: example_value type: type: string description: The type of task enum: - SIMPLE - DYNAMIC - FORK_JOIN - FORK_JOIN_DYNAMIC - DECISION - SWITCH - JOIN - DO_WHILE - SUB_WORKFLOW - START_WORKFLOW - EVENT - WAIT - HUMAN - HTTP - INLINE - JSON_JQ_TRANSFORM - LAMBDA - SET_VARIABLE - TERMINATE - KAFKA_PUBLISH example: SIMPLE description: type: string description: Task description example: A sample description. inputParameters: type: object description: Input parameter mappings additionalProperties: true example: example_value optional: type: boolean description: Whether this task is optional default: false example: true startDelay: type: integer description: Delay in seconds before starting the task default: 0 example: 10 asyncComplete: type: boolean description: Whether the task is completed asynchronously default: false example: true retryCount: type: integer description: Number of retries example: 10 sink: type: string description: Sink for EVENT tasks example: example_value subWorkflowParam: type: object description: Sub workflow parameters properties: name: type: string version: type: integer example: example_value joinOn: type: array description: List of task reference names to join on items: type: string example: [] forkTasks: type: array description: List of forked task lists items: type: array items: $ref: '#/components/schemas/WorkflowTask' example: [] decisionCases: type: object description: Decision cases for SWITCH/DECISION tasks additionalProperties: type: array items: $ref: '#/components/schemas/WorkflowTask' example: example_value defaultCase: type: array description: Default case tasks for SWITCH/DECISION items: $ref: '#/components/schemas/WorkflowTask' example: [] loopCondition: type: string description: Loop condition for DO_WHILE tasks example: example_value loopOver: type: array description: Tasks to loop over in DO_WHILE items: $ref: '#/components/schemas/WorkflowTask' example: [] WorkflowDef: type: object required: - name - tasks properties: name: type: string description: The name of the workflow definition example: Example Title description: type: string description: Description of the workflow example: A sample description. version: type: integer description: The version of the workflow definition default: 1 example: 10 tasks: type: array description: The list of tasks in the workflow items: $ref: '#/components/schemas/WorkflowTask' example: [] inputParameters: type: array description: List of input parameter names for the workflow items: type: string example: [] outputParameters: type: object description: Mapping of output parameters additionalProperties: true example: example_value failureWorkflow: type: string description: Name of the workflow to execute when this workflow fails example: example_value schemaVersion: type: integer description: Schema version (currently 2) default: 2 example: 10 restartable: type: boolean description: Whether the workflow is restartable default: true example: true workflowStatusListenerEnabled: type: boolean description: Whether to enable workflow status listener default: false example: true ownerEmail: type: string description: Email of the workflow definition owner example: user@example.com timeoutPolicy: type: string description: Timeout policy for the workflow enum: - TIME_OUT_WF - ALERT_ONLY example: TIME_OUT_WF timeoutSeconds: type: integer format: int64 description: Timeout in seconds for the workflow default: 0 example: 10 variables: type: object description: Workflow level variables additionalProperties: true example: example_value inputTemplate: type: object description: Default input template additionalProperties: true example: example_value externalDocs: description: Conductor API Documentation url: https://conductor-oss.github.io/conductor/documentation/api/index.html