Workflow Task and Dependency Web Services
Universal Controller supports the following RESTful-based web services for Workflow Task and Dependency operations, which are listed alphabetically on this page.
- Add a Dependency to a Workflow
- Add a Task to a Workflow
- List Dependencies in a Workflow
- List Tasks in a Workflow
- Modify a Dependency in a Workflow
- Modify a Task in a Workflow
- Remove a Dependency from a Workflow
- Remove Task(s) from a Workflow
Formatting specifications for each web service, including details about parameter requirements, are provided.
Add a Dependency to a Workflow
Description | |
|---|---|
URI | http://host_name/uc/resources/workflow/edges |
HTTP Method | POST |
Description | Adds a dependency to a workflow, with the dependency represented by a |
URI Parameters | See Add a Dependency to a Workflow: URI Parameters, below. |
Example URI | http://localhost:8080/uc/resources/workflow/edges?workflowname=workflow1 |
Consumes Content-Type | application/xml, application/json |
Produces Content-Type | n/a |
Example Request | See Add a Dependency to a Workflow: Example Request, below. |
Add a Dependency to a Workflow Properties | See Add a Dependency to a Workflow: Properties, below. |
Example Response |
|
Add a Dependency to a Workflow: URI Parameters
Name | Description | Specifications | Required | Mutually Exclusive With |
|---|---|---|---|---|
| ID used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
| Name used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
Add a Dependency to a Workflow: Example Request
- JSON
- XML
JSON
{
"condition": {
"value": "Success"
},
"points": [ {
"x": "280",
"y": "300"
} ],
"sourceId": {
"value": "2"
},
"straightEdge": false,
"targetId": {
"value": "3"
}
}
XML
<workflowEdge>
<condition>Success</condition>
<points>
<point x="280" y="300" />
</points>
<sourceId>2</sourceId>
<straightEdge>false</straightEdge>
<targetId>3</targetId>
</workflowEdge>
Add a Dependency to a Workflow: Request Properties
Property | UI Field Name | Description | Specifications | Required |
|---|---|---|---|---|
| n/a | Dependency condition between the source and target tasks of this dependency (connector). | Valid values:
Default is Success. For example: Step Condition is valid for z/OS tasks only. Approved and Approval Required are valid for Approval tasks only. See Specifying Conditions on Connections for more information. Success/Failure and Failure are not valid for Workflow, Timer, and Manual tasks. info The type attribute (type=) is optional for Exit Code and Step Condition. Based on the format of the condition, in most cases it is easily determined if the condition is Exit Code and Step Condition. If the condition cannot be determined, the type attribute can be checked. | N |
| n/a | If | For example: | N |
| n/a | Vertex ID of the source task. | Y | |
| n/a | Specification for whether the edge is straight or bent. | Boolean; Valid values: true/false. Default is true. | N |
| n/a | Vertex ID of the target task. | Y |
Add a Task to a Workflow
Description | |
|---|---|
URI | http://host_name/uc/resources/workflow/vertices |
HTTP Method | POST |
Description | Adds a task to a workflow, with the task represented by a |
URI Parameters | See Add a Task to a Workflow: URI Parameters, below. |
Example URI | http://localhost:8080/uc/resources/workflow/vertices?workflowname=workflow1 |
Consumes Content-Type | application/xml, application/json |
Produces Content-Type | application/xml, application/json |
Example Request | See Add a Task to a Workflow: Example Request, below. |
Example Response | See Add a Task to a Workflow: Example Response (Status 200), below. |
Add a Task to a Workflow Properties | See Add a Task to a Workflow: Request/Response Properties, below. |
Example Response |
|
Add a Task to a Workflow: URI Parameters
Name | Description | Specifications | Required | Mutually Exclusive With |
|---|---|---|---|---|
| ID used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
| Name used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
Add a Task to a Workflow: Example Request
- JSON
- XML
JSON
{
"alias": "S30",
"task": {
"value": "Sleep 30"
},
"vertexX": "360",
"vertexY": "60"
}
XML
<workflowVertex>
<alias>S30</alias>
<task>Sleep 30</task>
<vertexX>360</vertexX>
<vertexY>60</vertexY>
</workflowVertex>
Add a Task to a Workflow: Example Response (Status 200)
- JSON
- XML
JSON
{
"alias": "S30",
"conditionExpression": null,
"task": {
"value": "Sleep 30"
},
"vertexId": "9,
"vertexX": "360",
"vertexY": "60"
}
XML
<workflowVertex>
<alias>S30</alias>
<conditionExpression />
<task>Sleep 30</task>
<vertexId>9</vertexId>
<vertexX>360</vertexX>
<vertexY>60</vertexY>
</workflowVertex>
Add a Task to a Workflow: Request/Response Properties
Property | UI Field Name | Description | Specification | Required |
|---|---|---|---|---|
| n/a | Alias used for the task added to the workflow; specifically, the value of ops_task_workflow_vertex.name. | N | |
| n/a | Boolean condition expression to specify the dependency criteria. | XMLXML JSONJSON | N |
| Task Name | Name of the task added to the workflow. | Y | |
| n/a | Vertex ID of the task added to the workflow. Each task within a Workflow has a unique Vertex ID to distinguish it from other tasks of the same name, if any. | Y | |
| n/a | x-coordinate of the task added to the workflow. | Default is 0. | N |
| n/a | y-coordinate of the task added to the workflow. | Default is 0. | N |
List Dependencies in a Workflow
Description | |
|---|---|
URI | http://host_name/uc/resources/workflow/edges |
HTTP Method | GET |
Description | Returns the list of dependencies for all tasks in a workflow, with each dependency represented by a |
URI Parameters | See List Dependencies in a Workflow: URI Parameters, below. |
Example URI | http://localhost:8080/uc/resources/workflow/edges?workflowname=workflow1 |
Authentication | HTTP Basic |
Consumes Content-Type | n/a |
Produces Content-Type | application/xml, application/json |
Example Response | See List Dependencies in a Workflow: Example Response, below. |
Response Properties | See List Dependencies in a Workflow: Properties, below. |
List Dependencies in a Workflow: URI Parameters
Name | Description | Specifications | Required | Mutually Exclusive With |
|---|---|---|---|---|
| Vertex ID of the source task. | String; URI parameter. | N | |
| Vertex ID of the target task. | String; URI parameter. | N | |
| ID used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
| Name used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
List Dependencies in a Workflow: Example Response
- JSON
- XML
JSON
[
{
"condition": {
"value": "Success"
},
"sourceId": {
"taskAlias": "test",
"taskName": "Sleep 30",
"value": "2"
},
"straightEdge": true,
"targetId": {
"taskName": "Sleep 60",
"value": "3"
}
},
{
"condition": {
"value": "Success"
},
"sourceId": {
"taskName": "Sleep 60",
"value": "3"
},
"straightEdge": true,
"targetId": {
"taskName": "Sleep 60",
"value": "6"
}
}
]
XML
<workflowEdges>
<workflowEdge>
<condition>Success</condition>
<sourceId taskName="Sleep 30" taskAlias="test">2</sourceId>
<straightEdge>true</straightEdge>
<targetId taskName="Sleep 60">3</targetId>
</workflowEdge>
<workflowEdge>
<condition>Success</condition>
<sourceId taskName="Sleep 60">3</sourceId>
<straightEdge>true</straightEdge>
<targetId taskName="Sleep 60">6</targetId>
</workflowEdge>
</workflowEdges>
List Dependencies in a Workflow: Properties
Property | UI Field Name | Description |
|---|---|---|
| n/a | Dependency condition between the source and target tasks of this edge (connector). |
| n/a | Vertex ID of the source task. |
| n/a | Specification for whether the edge is straight or bent. |
| n/a | Vertex ID of the target task. |
List Tasks in a Workflow
Attribute sysId identifies the sysid of the specified task.
Description | |
|---|---|
URI | http://host_name/uc/resources/workflow/vertices |
HTTP Method | GET |
Description | Returns the list of tasks in a workflow, with each task represented by a |
URI Parameters | See List Tasks in a Workflow: URI Parameters, below. |
Example URI | |
Authentication | HTTP Basic |
Consumes Content-Type | n/a |
Produces Content-Type | application/xml, application/json |
Example Response | See List Tasks in a Workflow: Example Response, below. |
Response Properties | See List Tasks in a Workflow: Properties, below. |
List Tasks in a Workflow: URI Parameters
Parameter | Description | Specifications | Required | Mutually Exclusive With |
|---|---|---|---|---|
| Alias used for the task within the Workflow; specifically, the value of ops_task_workflow_vertex.name. | String; URI parameter. | Y |
|
| ID used within the Controller to identify this task. | String; URI parameter. | Y |
|
| Name used within the Controller to identify this task. | String; URI parameter. | Y |
|
| Vertex ID of the task in the workflow to be listed. Each task within a Workflow has a unique Vertex ID to distinguish it from other tasks, if any, of the same name. | String; URI parameter. | Y |
|
| ID used within the Controller to identify a workflow. | Y |
| |
| Name of a workflow. | Y |
|
List Tasks in a Workflow: Example Response
- JSON
- XML
JSON
[
{
"alias": "Task 1",
"conditionExpression": null,
"task": {
"sysId": "1010f538c0a801c900e0fe0af94d9be5",
"value": "task1"
},
"vertexId": "5",
"vertexX": "253",
"vertexY": "296"
},
{
"alias": "Task 2",
"conditionExpression": null,
"task": {
"sysId": "f81d30ccc0a801c9008ea20e4f5f61d6",
"value": "task2"
},
"vertexId": "6",
"vertexX": "252.5",
"vertexY": "429"
}
]
XML
<workflowVertices>
<workflowVertex>
<alias>Task 1</alias>
<conditionExpression />
<task sysId="1010f538c0a801c900e0fe0af94d9be5">task1</task>
<vertexId>5</vertexId>
<vertexX>253</vertexX>
<vertexY>296</vertexY>
</workflowVertex>
<workflowVertex>
<alias>Task 2</alias>
<conditionExpression />
<task sysId="f81d30ccc0a801c9008ea20e4f5f61d6">task2</task>
<vertexId>6</vertexId>
<vertexX>252.5</vertexX>
<vertexY>429</vertexY>
</workflowVertex>
</workflowVertices>
List Tasks in a Workflow: Response Properties
Property | UI Field Name | Description |
|---|---|---|
| n/a | Alias used for the task; specifically, the value of ops_task_workflow_vertex.name. |
| n/a | Boolean condition expression to specify the dependency criteria. |
| Task Name | Name of the task added. |
| n/a | Vertex ID of the task. Each task within a Workflow has a unique Vertex ID to distinguish it from other tasks of the same name, if any. |
| n/a | x-coordinate of the task. |
| n/a | y-coordinate of the task. |
Modify a Dependency in a Workflow
Description | |
|---|---|
URI | http://host_name/uc/resources/workflow/edges |
HTTP Method | PUT |
Description | Modifies a dependency in a workflow, with the dependency represented by a |
URI Parameters | |
Example URI | http://localhost:8080/uc/resources/workflow/edges?workflowname=workflow1 |
Consumes Content-Type | application/xml, application/json |
Produces Content-Type | n/a |
Example Request | See Modify a Dependency in a Workflow: Example Request, below. |
Modify a Dependency in a Workflow Properties | See Add a Dependency to a Workflow: Properties. |
Example Response |
|
Modify a Dependency in a Workflow: URI Parameters
Name | Description | Specifications | Required | Mutually Exclusive With |
|---|---|---|---|---|
| ID used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
| Name used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
Modify a Dependency in a Workflow: Example Request
- JSON
- XML
JSON
{
"condition": {
"value": "Success"
},
"points": [ {
"x": "280",
"y": "300"
} ],
"sourceId": {
"value": "2"
},
"straightEdge": false,
"targetId": {
"value": "3"
}
}
XML
<workflowEdge>
<condition>Success</condition>
<points>
<point x="280" y="300" />
</points>
<sourceId>2</sourceId>
<straightEdge>false</straightEdge>
<targetId>3</targetId>
</workflowEdge>
Modify a Task in a Workflow
Description | |
|---|---|
URI | http://host_name/uc/resources/workflow/vertices |
HTTP Method | PUT |
Description | Modifies a task in a workflow, with the task represented by a |
URI Parameters | See Modify a Task in a Workflow: URI Parameters, below. |
Example URI | http://localhost:8080/uc/resources/workflow/vertices?workflowname=workflow1 |
Consumes Content-Type | application/xml, application/json |
Produces Content-Type | n/a |
Example Request | See Modify a Task in a Workflow: Example Request, below. |
Modify a Task in a Workflow Properties | See Add a Task to a Workflow: Properties. |
Modify a Task in a Workflow: URI Parameters
Name | Description | Specifications | Required | Mutually Exclusive With |
|---|---|---|---|---|
| ID used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
| Name used within the Controller to identify the workflow. | String; URI parameter. | Y |
|
Modify a Task in a Workflow: Example Request
- JSON
- XML
JSON
{
"alias": "S30",
"conditionExpression": null,
"task": {
"value": "sleep 30"
},
"vertexX": "360",
"vertexY": "60"
}
XML
<workflowVertex>
<alias>S30</alias>
<conditionExpression />
<task>Sleep 30</task>
<vertexX>360</vertexX>
<vertexY>60</vertexY>
</workflowVertex>
Modify a Task in a Workflow: Properties
Property | UI Field Name | Description | Specifications | Required |
|---|---|---|---|---|
| n/a | Alias used for the task to be modified in the workflow; specifically, the value of ops_task_workflow_vertex.name. | N | |
| n/a | Boolean condition expression to specify the dependency criteria. | XMLXML JSONJSON | N |
| Task Name | Name of the task to be modified in the workflow. | Cannot be modified; used only to search for the task. To modify by If both | Y |
| n/a | Vertex ID of the task within the workflow. Each task within a Workflow has a unique Vertex ID to distinguish it from other tasks of the same name, if any. | Cannot be modified; used only to search for the task. If both | Y |
| n/a | x-coordinate of the task to be modified in the workflow. | Default is 0. | N |
| n/a | y-coordinate of the task to be modified in the workflow. | Default is 0. | N |
Remove a Dependency from a Workflow
Description | |
|---|---|
URI | http://host_name/uc/resources/workflow/edges |
HTTP Method | DELETE |
Description | Removes a dependency from a workflow, with the dependency represented by |
URI Parameters | See Remove a Dependency from a Workflow: URI Parameters, below. |
Example URI | http://localhost:8080/uc/resources/workflow/edges?workflowname=workflow1&sourceid=2&targetid=4 |
Authentication | HTTP Basic |
Example Response |
|
Remove a Dependency from a Workflow: URI Parameters
Name | Description | Specifications | Required | Mutually Exclusive With |
|---|---|---|---|---|
| Vertex ID of the source task. | Integer; URI parameter. | Y | |
| Vertex ID of the target task. | Integer; URI parameter. | Y | |
| ID used within the Controller to identify a workflow. | String; URI parameter. | Y |
|
| Name used within the Controller to identify a workflow. | String; URI parameter. | Y |
|
Remove Task(s) from a Workflow
Description | |
|---|---|
URI | http://host_name/uc/resources/workflow/vertices |
HTTP Method | DELETE |
Description | Removes one or more tasks from a workflow, with each removed task represented by a |
URI Parameters | See Remove Task(s) from a Workflow: URI Parameters, below. |
Example URI | |
Consumes Content-Type | n/a |
Produces Content-Type | application/xml, application/json |
Authentication | HTTP Basic |
Example Response | See Remove Task(s) from a Workflow: Example Response, below. |
Remove Task(s) from a Workflow Properties | See Remove Task(s) from a Workflow: Properties, below. |
Remove Task(s) from a Workflow: URI Parameters
If taskid, taskname, or taskalias is specified, all tasks matching the taskid, taskname, or taskalias - and their dependencies - are removed.
If vertexid is specified, only the task with that specific Vertex ID - and its dependencies - is removed.
Parameter | Description | Specifications | Required | Mutually Exclusive With |
|---|---|---|---|---|
| Alias of the task(s) to be removed from the Workflow; specifically, the value of ops_task_workflow_vertex.name. | String; URI parameter. | Y |
|
| SysId of the task(s) to be removed from the Workflow. | String; URI parameter. | Y |
|
| Name of the task(s) to be removed from the Workflow. | String; URI parameter. | Y |
|
| Vertex ID of the task to be removed from the workflow. Each task within a Workflow has a unique Vertex ID to distinguish it from other tasks, if any, of the same name. | String; URI parameter. | Y |
|
| ID used within the Controller to identify a workflow. | String; URI parameter. | Y |
|
| Name used within the Controller to identify a workflow. | String; URI parameter. | Y |
|
Remove Task(s) from a Workflow: Example Response
- JSON
- XML
JSON
[
{
"alias": "task 1",
"conditionExpression": null,
"task": {
"sysId": "1010f538c0a801c900e0fe0af94d9be5",
"value": "task1"
},
"vertexId": "5",
"vertexX": "253",
"vertexY": "296"
}
]
XML
<workflowVertices>
<workflowVertex>
<alias>Task 1</alias>
<conditionExpression />
<task sysId="1010f538c0a801c900e0fe0af94d9be5">task1</task>
<vertexId>5</vertexId>
<vertexX>253</vertexX>
<vertexY>296</vertexY>
</workflowVertex>
</workflowVertices>
If there are no matching tasks to remove, an empty list is returned.
Remove Task(s) from a Workflow: Response Properties
This response contains a list of tasks removed from a workflow
Property | UI Field Name | Description |
|---|---|---|
| n/a | Alias of the task removed from the Workflow; specifically, the value of ops_task_workflow_vertex.name. |
| n/a | Boolean condition expression to specify the dependency criteria. |
| Task Name | Name of the task removed from the Workflow. |
| n/a | Vertex ID of the task removed from the Workflow. Each task within a Workflow has a unique Vertex ID to distinguish it from other tasks of the same name, if any. |
| n/a | x-coordinate of the task removed from the Workflow. |
| n/a | y-coordinate of the task removed from the Workflow. |