Conductor OSS Workflow API
The Workflow API from Conductor OSS — 9 operation(s) for workflow.
The Workflow API from Conductor OSS — 9 operation(s) for workflow.
openapi: 3.1.0
info:
title: Conductor OSS REST Events Workflow API
description: The Conductor OSS REST API exposes the workflow orchestration engine's surface for managing workflow definitions, starting and querying workflow executions, handling tasks and workers, registering event handlers, and administering metadata. Conductor OSS is the Netflix-founded, Orkes-stewarded open source workflow and agentic AI orchestration platform.
version: 3.x
contact:
name: Conductor OSS
url: https://conductor-oss.org/
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: '{baseUrl}/api'
description: Conductor Server
variables:
baseUrl:
default: http://localhost:8080
tags:
- name: Workflow
paths:
/workflow:
post:
operationId: startWorkflow
summary: Start a workflow
description: Starts a new workflow execution.
tags:
- Workflow
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/StartWorkflowRequest'
responses:
'200':
description: Successful response
content:
text/plain:
schema:
type: string
description: Workflow ID
/workflow/{workflowId}:
get:
operationId: getWorkflow
summary: Get workflow execution
description: Returns the execution details of a specific workflow.
tags:
- Workflow
parameters:
- name: workflowId
in: path
required: true
schema:
type: string
- name: includeTasks
in: query
schema:
type: boolean
default: true
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Workflow'
delete:
operationId: terminateWorkflow
summary: Terminate a workflow
description: Terminates a running workflow execution.
tags:
- Workflow
parameters:
- name: workflowId
in: path
required: true
schema:
type: string
- name: reason
in: query
schema:
type: string
responses:
'204':
description: Workflow terminated
/workflow/{workflowId}/pause:
put:
operationId: pauseWorkflow
summary: Pause a workflow
description: Pauses a running workflow execution.
tags:
- Workflow
parameters:
- name: workflowId
in: path
required: true
schema:
type: string
responses:
'204':
description: Workflow paused
/workflow/{workflowId}/resume:
put:
operationId: resumeWorkflow
summary: Resume a workflow
description: Resumes a paused workflow execution.
tags:
- Workflow
parameters:
- name: workflowId
in: path
required: true
schema:
type: string
responses:
'204':
description: Workflow resumed
/workflow/{workflowId}/restart:
post:
operationId: restartWorkflow
summary: Restart a workflow
description: Restarts a completed or terminated workflow from the beginning.
tags:
- Workflow
parameters:
- name: workflowId
in: path
required: true
schema:
type: string
- name: useLatestDefinitions
in: query
schema:
type: boolean
default: false
responses:
'204':
description: Workflow restarted
/workflow/{workflowId}/retry:
post:
operationId: retryWorkflow
summary: Retry a workflow
description: Retries a failed workflow from the last failed task.
tags:
- Workflow
parameters:
- name: workflowId
in: path
required: true
schema:
type: string
- name: resumeSubworkflowTasks
in: query
schema:
type: boolean
default: false
responses:
'204':
description: Workflow retried
/workflow/{workflowId}/rerun:
post:
operationId: rerunWorkflow
summary: Rerun a workflow
description: Reruns a completed workflow from a specific task.
tags:
- Workflow
parameters:
- name: workflowId
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RerunWorkflowRequest'
responses:
'200':
description: Successful response
content:
text/plain:
schema:
type: string
/workflow/{workflowId}/skiptask/{taskReferenceName}:
put:
operationId: skipTask
summary: Skip a task
description: Skips a specific task in a running workflow.
tags:
- Workflow
parameters:
- name: workflowId
in: path
required: true
schema:
type: string
- name: taskReferenceName
in: path
required: true
schema:
type: string
responses:
'204':
description: Task skipped
/workflow/search:
get:
operationId: searchWorkflows
summary: Search workflows
description: Search for workflow executions based on query parameters.
tags:
- Workflow
parameters:
- name: start
in: query
schema:
type: integer
default: 0
- name: size
in: query
schema:
type: integer
default: 100
- name: sort
in: query
schema:
type: string
- name: freeText
in: query
schema:
type: string
- name: query
in: query
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchResult'
components:
schemas:
SearchResult:
type: object
properties:
totalHits:
type: integer
format: int64
results:
type: array
items:
$ref: '#/components/schemas/Workflow'
RerunWorkflowRequest:
type: object
properties:
reRunFromWorkflowId:
type: string
reRunFromTaskId:
type: string
workflowInput:
type: object
taskInput:
type: object
correlationId:
type: string
Workflow:
type: object
properties:
workflowId:
type: string
workflowName:
type: string
workflowVersion:
type: integer
correlationId:
type: string
status:
type: string
enum:
- RUNNING
- COMPLETED
- FAILED
- TIMED_OUT
- TERMINATED
- PAUSED
input:
type: object
output:
type: object
tasks:
type: array
items:
$ref: '#/components/schemas/Task'
startTime:
type: integer
format: int64
endTime:
type: integer
format: int64
updateTime:
type: integer
format: int64
reasonForIncompletion:
type: string
priority:
type: integer
failedReferenceTaskNames:
type: array
items:
type: string
Task:
type: object
properties:
taskId:
type: string
taskType:
type: string
status:
type: string
enum:
- IN_PROGRESS
- COMPLETED
- FAILED
- TIMED_OUT
- CANCELED
- SCHEDULED
referenceTaskName:
type: string
workflowInstanceId:
type: string
inputData:
type: object
outputData:
type: object
scheduledTime:
type: integer
format: int64
startTime:
type: integer
format: int64
endTime:
type: integer
format: int64
retryCount:
type: integer
pollCount:
type: integer
callbackAfterSeconds:
type: integer
format: int64
workerId:
type: string
StartWorkflowRequest:
type: object
required:
- name
properties:
name:
type: string
version:
type: integer
correlationId:
type: string
input:
type: object
taskToDomain:
type: object
additionalProperties:
type: string
externalInputPayloadStoragePath:
type: string
priority:
type: integer