Workflow Task Instance Web Services

Overview

Universal Controller supports the following RESTful-based web services for Workflow Task Instance operations, which are listed alphabetically on this page.

  • Insert a Task into a Workflow with Dependencies
  • List Predecessors / Successors of a Task Instance in a Workflow

Formatting specifications for each web service, including details about parameter requirements, are provided.

Insert a Task into a Workflow with Dependencies


Description

URI

http://host_name/uc/resources/taskinstance/ops-task-insert

HTTP Method

POST

Description

Insert a task into a Workflow with dependencies.

Authentication

HTTP Basic

Example URI

http://localhost:8080/uc/resources/taskinstance/ops-task-insert

Consumes Content-Type

application/xml, application/json

Produces Content-Type

application/xml, application/json

Request Example

See Insert a Task into a Workflow with Dependencies: XML and JSON Examples.

Request Properties

See Insert a Task into a Workflow with Dependencies: Request Properties.

Response Example

See Insert a Task into a Workflow with Dependencies: XML and JSON Examples.

Insert a Task into a Workflow with Dependencies: XML and JSON Examples

Examples

XML

JSON

Example Request

 XML
<task-insert>
    <name>Sleep 30</name>
    <alias>Test</alias>
    <workflowInstanceId>ac2cfdd14c8c4238a4a6ecd03db41e87</workflowInstanceId>
    <predecessors> 
        <predecessor>Sleep 30</predecessor>
    </predecessors>
    <successors> 
        <successor>Sleep 60</successor>
    </successors>
    <vertexX>25</vertexX>
    <inheritTriggerTime>true</inheritTriggerTime>
    <vertexY>25</vertexY>
</task-insert>
 JSON
{
"name": "Sleep 10",
"alias": "Test",
"workflowInstanceId": "1513717759915306953T5FNZB71S6OUF",
"predecessors": [ "Task 1" ],
"successors": [ "Sleep 60" ],
"vertexX": "25",
"inheritTriggerTime": "true",
"vertexY": "25"
}

Example Response

 XML
<command-response>
    <type>create_task</type>
    <success>true</success>
    <info>Command Insert Task executed successfully against task instance "test workflow".</info>
    <errors />
</command-response>
 JSON
{
  "type": "create_task",
  "success": true,
  "info": "Command Insert Task executed successfully against task instance \"Test Workflow\".",
  "errors": ""
}

Insert a Task into a Workflow with Dependencies: Request Properties

Property

UI Field Name

Description

Specifications

Required

Mutually Exclusive With

alias

n/a

Alias used for the task within the Workflow; specifically, the value of ops_exec_workflow_vertex.name.


N


id

n/a

sys_id of the task to be inserted.


Y
(unless name
is specified)

name

name

Task Name

Name of the task to be inserted.


Y
(unless id
is specified)

id

predecessors

Predecessors

Comma-separated list of predecessor task instances within the workflow for the task to be inserted.


N


successors

Successors

Comma-separated list of successor task instances within the workflow for the task to be inserted.


N


vertexX

n/a

x-coordinate of the task to be inserted within the workflow.

Default is 0.

N


vertexY

n/a

y-coordinate of the task to be inserted within the workflow.

Default is 0.

N


inheritTriggerTime

n/a

Specification for whether or not the inserted task will inherit the Trigger Time of the Workflow task instance.

Boolean; Valid values (not case-sensitive):

  • Yes,Y,true
  • No, N, false

Default is Yes, Y, true.

N


workflowInstanceCriteria

n/a

If search is by workflowInstanceName; Specific Workflow task instance with this task instance name which you want to insert the task into.

Valid values:

  • As String = oldest active instance, As Value = 1
  • As String = newest active instance, As Value = 2
  • As String = oldest instance, As Value = 3
  • As String = newest instance, As Value = 4

Default is oldest active instance (1).
 

Note

Values with an underscore characters ( _ )
instead of spaces also are supported
(for example, oldest_active_instance).

N


workflowInstanceId

n/a

sys_id of the Workflow to insert the task into.


Y
(unless workflowInstanceName
is specified)

workflowInstanceName

workflowInstanceName

Instance Name

Name of the Workflow to insert the task into.


Y
(unless workflowInstanceId
is specified)

workflowInstanceId

Note

  • If both predecessors and successors lists are empty, the task is inserted without dependencies.
  • If there is a task name in a predecessors or successors list that does not exist, the operation will fail with error Cannot find vertex with the name ...
  • If a predecessors or successors list contains a task name with multiple occurrences in the workflow, the operation will fail with error Multiple vertices found for the name... (For example, the workflow contains two tasks named Sleep 30 and you are trying to insert Task ABC with predecessor Sleep 30.

List Predecessors / Successors of a Task Instance in a Workflow

List Predecessors / Successors of a Task Instance in a Workflow: XML and JSON Examples

XML

JSON

 XML
<task-dependencies>
       <task-dependency>
              <condition>Success</condition>
              <name>Sleep 30</name>
              <satisfied>false</satisfied>
              <taskInstanceId>1471465078487058257PY97G57T09HKB</taskInstanceId>
              <type>predecessors</type>
              <vertexId>20</vertexId>
              <vertexName>Sleep 30</vertexName>
       </task-dependency>
       <task-dependency>
              <condition>Success</condition>
              <name>uc - Sleep 60</name>
              <satisfied>false</satisfied>
              <taskInstanceId>151371775991531795355TV2GX49AWD6</taskInstanceId>
              <type>successors</type>
              <vertexId>2</vertexId>
              <vertexName>Sleep 60</vertexName>
       </task-dependency>
 JSON
[ {
  "condition": {
    "value": "Success"
  },
  "name": "Sleep 30",
  "satisfied": false,
  "taskInstanceId": "1471465078487058257PY97G57T09HKB",
  "type": "Predecessor",
  "vertexId": "20",
  "vertexName": "Sleep 30"
}, {
  "condition": {
    "value": "Success"
  },
  "name": "Sleep 60",
  "satisfied": false,
  "taskInstanceId": "151371775991531795355TV2GX49AWD6",
  "type": "Successor",
  "vertexId": "2",
  "vertexName": "Sleep 60"
} ]

List Predecessors / Successors of a Task Instance in a Workflow: URI Parameters

Parameter

Description

Specifications

Required

Mutually Exclusive With

criteria

If taskinstancename is specified; Specific task instance with this task instance name for which you want to list predecessors and successors.

Valid values:

  • As String = oldest active instance, As Value = 1
  • As String = newest active instance, As Value = 2
  • As String = oldest instance, As Value = 3
  • As String = newest instance, As Value = 4

Default is oldest active instance (1).
 

Note

Values with an underscore characters ( _ )
instead of spaces also are supported
(for example, oldest_active_instance).

N


dependencytype

Type of dependency to list for the task instance.

Valid values: predecessors, successors, * (all predecessors and successors).

N


taskinstanceid

sys_id of the task instance for which you want to list predecessors and successors.


Y
(unless taskinstancename
is specified)

taskinstancename

taskinstancename

Name of the task instance for which you want to list predecessors and successors.


Y
(unless taskinstanceid
is specified)

taskinstanceid

workflowinstancename

If taskinstancename is specified; Name of the Workflow task instance containing the task instance for which you want to list predecessors and successors.


N


List Predecessors / Successors of a Task Instance in a Workflow: Response Properties

Property

UI Field Name

Description

condition

n/a

Dependency condition between the task instance and the listed Predecessor / Successor task instance.

name

n/a

Resolved name of the Predecessor / Successor task instance.

satisfied

n/a

Indication of whether the condition was satisfied or not satisfied.

taskInstanceId

n/a

sys_id of the task instance for which the Predecessor / Successor task instance is listed.

type

n/a

Type of dependency for the Predecessor / Successor task instance.

vertexId

n/a

Vertex ID of the Predecessor / Successor task instance.
 
Each task instance within a Workflow has a unique Vertex ID to distinguish it from other tasks, if any, of the same name.

vertexName

n/a

Name of the Predecessor / Successor task instance.