Skip to main content

Get All Workflow Definitions

Endpoint: GET /api/metadata/workflow

Gets all the workflow definitions in the cluster.

Query parameters

ParameterDescriptionTypeRequired/ Optional
accessThe access level being requested. Supported values: READ, CREATE, UPDATE, EXECUTE, and DELETE. Default is READ.stringOptional.
metadataWhether metadata (such as tags) should be included in the response. Default is false.booleanOptional.
tagKeyOption to filter based on the tag key associated with the task definitions.stringOptional.
tagValueOption to filter based on the tag value associated with the task definitions.stringOptional.
nameThe name of a specific workflow definition to retrieve.stringOptional.
shortWhether to retrieve only essential parameters of the workflow definition, excluding task data. Default is false. Set to true to retrieve only the essential part of the definition.booleanOptional.

Response

Returns an array containing all the workflow definitions in the cluster, optionally including metadata such as tags based on the query parameters.

Examples

Get all workflow definitions with a specific tag

Request

curl -X 'GET' \
'https://<YOUR_CLUSTER>/api/metadata/workflow?access=READ&metadata=false&tagKey=api&tagValue=doc' \
-H 'accept: */*' \
-H 'X-Authorization: <TOKEN>'

Response

Returns all workflow definitions with tag api:doc.

[
{
"createTime": 0,
"updateTime": 1735802256013,
"name": "api-test",
"description": "Sample workflow created using API",
"version": 1,
"tasks": [
{
"name": "event",
"taskReferenceName": "event_ref",
"inputParameters": {},
"type": "EVENT",
"decisionCases": {},
"defaultCase": [],
"forkTasks": [],
"startDelay": 0,
"joinOn": [],
"sink": "sqs:internal_event_name",
"optional": false,
"defaultExclusiveJoinTask": [],
"asyncComplete": false,
"loopOver": [],
"onStateChange": {},
"permissive": false
}
],
"inputParameters": [],
"outputParameters": {},
"failureWorkflow": "",
"schemaVersion": 2,
"restartable": false,
"workflowStatusListenerEnabled": false,
"ownerEmail": "john.doe@acme.com",
"timeoutPolicy": "ALERT_ONLY",
"timeoutSeconds": 0,
"variables": {},
"inputTemplate": {},
"enforceSchema": true,
"overwriteTags": true,
"tags": [
{
"key": "api",
"value": "doc"
}
]
}
]
Get all workflow definitions with metadata set to true

Request

curl -X 'GET' \
'https://<YOUR-CLUSTER>/api/metadata/workflow?access=READ&metadata=true&short=false' \
-H 'accept: */*' \
-H 'X-Authorization: <TOKEN>'

Response

Returns an array containing all the workflow definitions in the cluster, including their tags metadata. For example:

//truncated response

{
"createTime": 0,
"updateTime": 1735802256013,
"name": "api-test",
"description": "Sample workflow created using API",
"version": 1,
"tasks": [
{
"name": "event",
"taskReferenceName": "event_ref",
"inputParameters": {},
"type": "EVENT",
"decisionCases": {},
"defaultCase": [],
"forkTasks": [],
"startDelay": 0,
"joinOn": [],
"sink": "sqs:internal_event_name",
"optional": false,
"defaultExclusiveJoinTask": [],
"asyncComplete": false,
"loopOver": [],
"onStateChange": {},
"permissive": false
}
],
"inputParameters": [],
"outputParameters": {},
"failureWorkflow": "",
"schemaVersion": 2,
"restartable": false,
"workflowStatusListenerEnabled": false,
"ownerEmail": "john.doe@acme.com",
"timeoutPolicy": "ALERT_ONLY",
"timeoutSeconds": 0,
"variables": {},
"inputTemplate": {},
"enforceSchema": true,
"metadata": {},
"overwriteTags": true,
"tags": [
{
"key": "api",
"value": "doc"
}
]
}
Get all workflow definitions with metadata set to false

Request

curl -X 'GET' \
'https://<YOUR-CLUSTER>/api/metadata/workflow?access=READ&metadata=false&short=false' \
-H 'accept: */*' \
-H 'X-Authorization: <TOKEN>

Response

Returns an array containing all the workflow definitions in the cluster without any tag metadata. For example:

//truncated response

{
"createTime": 0,
"updateTime": 1735802256013,
"name": "api-test",
"description": "Sample workflow created using API",
"version": 1,
"tasks": [
{
"name": "event",
"taskReferenceName": "event_ref",
"inputParameters": {},
"type": "EVENT",
"decisionCases": {},
"defaultCase": [],
"forkTasks": [],
"startDelay": 0,
"joinOn": [],
"sink": "sqs:internal_event_name",
"optional": false,
"defaultExclusiveJoinTask": [],
"asyncComplete": false,
"loopOver": [],
"onStateChange": {},
"permissive": false
}
],
"inputParameters": [],
"outputParameters": {},
"failureWorkflow": "",
"schemaVersion": 2,
"restartable": false,
"workflowStatusListenerEnabled": false,
"ownerEmail": "john.doe@acme.com",
"timeoutPolicy": "ALERT_ONLY",
"timeoutSeconds": 0,
"variables": {},
"inputTemplate": {},
"enforceSchema": true,
"metadata": {}
}
Get a specific workflow definition

Request

curl -X 'GET' \
'https://<YOUR-CLUSTER>/api/metadata/workflow?access=READ&metadata=false&name=http&short=false' \
-H 'accept: */*' \
-H 'X-Authorization: <TOKEN>'

Response

Returns the queried workflow definition JSON.

[
{
"createTime": 1746097239757,
"updateTime": 1746519880610,
"name": "http",
"description": "http",
"version": 1,
"tasks": [
{
"name": "http",
"taskReferenceName": "http_ref",
"inputParameters": {
"uri": "https://orkes-api-tester.orkesconductor.com/api",
"method": "GET",
"accept": "application/json",
"contentType": "application/json",
"encode": true
},
"type": "HTTP",
"decisionCases": {},
"defaultCase": [],
"forkTasks": [],
"startDelay": 0,
"joinOn": [],
"optional": true,
"defaultExclusiveJoinTask": [],
"asyncComplete": true,
"loopOver": [],
"onStateChange": {},
"permissive": false
}
],
"inputParameters": [
"name"
],
"outputParameters": {},
"failureWorkflow": "",
"schemaVersion": 2,
"restartable": true,
"workflowStatusListenerEnabled": false,
"ownerEmail": "john.doe@acme.com",
"timeoutPolicy": "ALERT_ONLY",
"timeoutSeconds": 0,
"variables": {},
"inputTemplate": {},
"enforceSchema": true,
"metadata": {}
}
]
Get all workflow definitions with short set to true

Request

curl -X 'GET' \
'https://<YOUR-CLUSTER>/api/metadata/workflow?access=READ&metadata=false&short=true' \
-H 'accept: */*' \
-H 'X-Authorization: <TOKEN>'

Response

Returns an array of all workflow definitions in the cluster, including only their essential parameters and excluding task data. For example:

//truncated response
{
"createTime": 1735802166798,
"updateTime": 0,
"name": "api-test",
"description": "Sample workflow created using API",
"version": 1,
"tasks": [],
"inputParameters": [],
"outputParameters": {},
"failureWorkflow": "",
"schemaVersion": 2,
"restartable": false,
"workflowStatusListenerEnabled": false,
"ownerEmail": "john.doe@acme.com",
"timeoutPolicy": "ALERT_ONLY",
"timeoutSeconds": 0,
"variables": {},
"inputTemplate": {},
"enforceSchema": true,
"metadata": {}
}
Get all workflow definitions with short set to false

Request

curl -X 'GET' \
'https://<YOUR-CLUSTER>/api/metadata/workflow?access=READ&metadata=false&short=false' \
-H 'accept: */*' \
-H 'X-Authorization: <TOKEN>'

Response

Returns an array of all workflow definitions in the cluster, including complete data for each definition. For example:

//truncated response
{
"createTime": 0,
"updateTime": 1735802256013,
"name": "api-test",
"description": "Sample workflow created using API",
"version": 1,
"tasks": [
{
"name": "event",
"taskReferenceName": "event_ref",
"inputParameters": {},
"type": "EVENT",
"decisionCases": {},
"defaultCase": [],
"forkTasks": [],
"startDelay": 0,
"joinOn": [],
"sink": "sqs:internal_event_name",
"optional": false,
"defaultExclusiveJoinTask": [],
"asyncComplete": false,
"loopOver": [],
"onStateChange": {},
"permissive": false
}
],
"inputParameters": [],
"outputParameters": {},
"failureWorkflow": "",
"schemaVersion": 2,
"restartable": false,
"workflowStatusListenerEnabled": false,
"ownerEmail": "john.doe@acme.com",
"timeoutPolicy": "ALERT_ONLY",
"timeoutSeconds": 0,
"variables": {},
"inputTemplate": {},
"enforceSchema": true,
"metadata": {}
}