Number of APIs: 81
The IMaaS Workflow API(s) is managed and driven by REST API calls. This complete workflow API makes it easy for application developers to build not only simple workflow processes with step logic but also complex BPMN 2.0-compliant workflow processes. Workflow processes can involve complex choreographed processes, which drive integration with other IMaaS services and any non-OpenText systems that support human-to-human, system-to-system, and human-to-system interactions. Automate business flows
Model your business flows as a set of workflows, reducing manual interventions and automating the process. Be more agile by quickly changing a workflow to meet changing business requirements. Faster collaboration
Leverage workflows to orchestrate multiple service interactions and improve collaboration. Reduce errors and increase efficiency
Use workflows to automate and handle redundant decisions in the business, reducing errors and increasing the overall efficiency.Why use these services
Adapt to changes in your customer's Applications quickly
DELETE {{baseUrl}}/tasks/:taskId/assignments
Delete assignments on a task.
GET {{baseUrl}}/tasks/:taskId/assignments?includeUserIds=false&includeGroupIds=false
Get an assignments for a task.
POST {{baseUrl}}/tasks/:taskId/assignments
Create an assignment on a task.
PUT {{baseUrl}}/tasks/:taskId/assignments
Update an assignment on a task.
DELETE {{baseUrl}}/tasks/:taskId/attachments/:attachmentId?cascade=false&cascadeContent=false
Delete an attachment on a task.
If cascade parameter is set to true, the corresponding file in the OT2 content store(Content metadata service & Content storage service) will also be deleted along with the task attachment.
GET {{baseUrl}}/tasks/:taskId/attachments/:attachmentId?includeUserIds=false
Get an attachment on a task.
GET {{baseUrl}}/tasks/:taskId/attachments?includeUserIds=false
List attachments on a task.
POST {{baseUrl}}/tasks/:taskId/attachments
Create a new attachment on a task, either by linking to an external resource url or by providing a file input.
An external resource url can be linked as a task attachment by providing the required details in the json request body as below.
Sample request body :
{
name
: SampleAttachment
description
: SampleDescription
type
: SampleType
externalUrl
: https://..
includeUserIds
: false
}
A file can also be directly uploaded as a task attachment by providing the reference file as a multipart/form-data
Content-Type input. By default the file is uploaded and linked to OT2 content store (Content metadata service & Content storage service).
DELETE {{baseUrl}}/tasks/:taskId/comments/:commentId
Delete a comment on a task.
GET {{baseUrl}}/tasks/:taskId/comments/:commentId?includeUserIds=false
Get a comment on a task.
GET {{baseUrl}}/tasks/:taskId/comments?includeUserIds=false
Get comments on a task.
POST {{baseUrl}}/tasks/:taskId/comments
Create a comment on a task.
DELETE {{baseUrl}}/tasks/:taskId/variables/:variableName?scope=voluptate elit
Delete a variable on a task.
GET {{baseUrl}}/tasks/:taskId/variables/:variableName?scope=voluptate elit
Get a variable for a task.
PUT {{baseUrl}}/tasks/:taskId/variables/:variableName
Update a single variable on a task.
Sample request body :
{
name
: SampleVariable
,
type
: string
,
value
: SampleValue
,
scope
: local
}
GET {{baseUrl}}/tasks/:taskId/variables?scope=voluptate elit&offset=voluptate elit&count=voluptate elit
List variables for a task.
POST {{baseUrl}}/tasks/:taskId/variables
Create one or more variables on a task.
Sample request body :
[
{
name
: SampleVariable
,
type
: string
,
value
: SampleValue
,
scope
: local
}
]
GET {{baseUrl}}/tasks/:taskId?includeProcessVariables=true&includeTaskComments=true&includeTaskAssignments=true&includeUserIds=false&includeGroupIds=false
Retrieve a task based on given task id.
POST {{baseUrl}}/tasks/:taskId
Act on a task. Possible actions are complete, claim, delegate, resolve, unclaim.
PUT {{baseUrl}}/tasks/:taskId
Update the task data based on a given task id.
For task assignment updates :
Task assignments are supported for user or group targets, which are managed using Admin center.
For task assignment to a user, the user should be a valid user in the provided tenant and subscription context, and user email id should be provided.
For task assignment to a group, the group should be a valid application role or a group with associated user mappings in the provided tenant and subscription context, and application role name or group name should be provided.
GET {{baseUrl}}/tasks?name=voluptate elit&nameLike=voluptate elit&description=voluptate elit&priority=voluptate elit&minimumPriority=voluptate elit&maximumPriority=voluptate elit&assignee=voluptate elit&assigneeLike=voluptate elit&owner=voluptate elit&ownerLike=voluptate elit&unassigned=voluptate elit&delegationState=voluptate elit&candidateUser=voluptate elit&candidateGroup=voluptate elit&candidateGroups=voluptate elit&involvedUser=voluptate elit&processInstanceId=voluptate elit&processInstanceIdWithChildren=voluptate elit&processInstanceBusinessKey=voluptate elit&processInstanceBusinessKeyLike=voluptate elit&processDefinitionId=voluptate elit&processDefinitionKey=voluptate elit&processDefinitionKeyLike=voluptate elit&processDefinitionName=voluptate elit&processDefinitionNameLike=voluptate elit&executionId=voluptate elit&createdOn=1951-08-14T20:08:23.047Z&createdBefore=1951-08-14T20:08:23.047Z&createdAfter=1951-08-14T20:08:23.047Z&dueOn=1951-08-14T20:08:23.047Z&dueBefore=1951-08-14T20:08:23.047Z&dueAfter=1951-08-14T20:08:23.047Z&withoutDueDate=true&excludeSubTasks=true&active=true&includeTaskLocalVariables=true&includeProcessVariables=true&includeTaskComments=true&includeTaskAssignments=true&candidateOrAssigned=voluptate elit&category=voluptate elit&filterByCurrentSubscription=true&offset=voluptate elit&count=voluptate elit&sort=name&order=desc&includeUserIds=false&includeGroupIds=false&sortEmptyValuesOnTop=true
Get tasks.
POST {{baseUrl}}/tasks
Create a sub task
GET {{baseUrl}}/runtime/models?version=-98125607&name=voluptate elit&nameLike=voluptate elit&key=voluptate elit&keyLike=voluptate elit&category=voluptate elit&categoryLike=voluptate elit&categoryNotEquals=voluptate elit&deploymentId=voluptate elit&latestVersion=true&filterByCurrentSubscription=true&deploymentSpace=voluptate elit&offset=voluptate elit&count=voluptate elit&sort=key
Get the executable process models across all deployed versions.
POST {{baseUrl}}/runtime/models
Deploy the contents of BPMN based process model. Process instances can be triggered for these deployed process models. Use the key
returned in the API response to create process instances for the deployed model.
If the same process model is updated and deployed again, a higher version of the process model is deployed. New process instances are always created on the latest versions of the process models, and the previously triggered process instances continue to run on the corresponding older versions.The process model can be defined using the workflow modeler. The content of the process model (required for modelContent) can be exported and copied as a BPMN 2.0 encoded xml or BPMN 2.0 json directly from the workflow modeler.
Sample request body :
{modelId
: SampleModelId
,
modelType
: xml/json
,
modelContent
: encoded BPMN xml content for xml type / plain BPMN json for json type
}
GET {{baseUrl}}/runtime/models/:deploymentId?modelType=xml
Retrieve executable process model content based on the given model id.
DELETE {{baseUrl}}/runtime/models/:modelId
Delete a specific version of the executable process model and its corresponding process instances.
POST {{baseUrl}}/models/conversion
Convert process model content from json to xml or vice versa.
Sample request body :
{
modelType
: xml/json
,modelContent
: encoded BPMN xml content for xml type / plain BPMN json for json type
}
POST {{baseUrl}}/models/validation
Validate process model content.
Sample request body :
{
modelType
: xml/json
,modelContent
: encoded BPMN xml content for xml type / plain BPMN json for json type
}
DELETE {{baseUrl}}/administration/privileges/:privilegeName/groups
Delete a specific privilege for one or more groups in the current subscription context, using group ids or group names. The available privilege names can be retrieved using the list privileges API.
POST {{baseUrl}}/administration/privileges/:privilegeName/groups
Add a specific privilege for one or more groups in the current subscription context, using group ids or group names. The available privilege names can be retrieved using the list privileges API.
DELETE {{baseUrl}}/administration/privileges/:privilegeName/roles
Delete a specific privilege for one or more roles in the current subscription context, using role ids or role names. The available privilege names can be retrieved using the list privileges API.
POST {{baseUrl}}/administration/privileges/:privilegeName/roles
Add a specific privilege for one or more roles in the current subscription context, using role ids or role names. The available privilege names can be retrieved using the list privileges API.
DELETE {{baseUrl}}/administration/privileges/:privilegeName/users
Delete a specific privilege for one or more users in the current subscription context, using user ids or user names. The available privilege names can be retrieved using the list privileges API.
POST {{baseUrl}}/administration/privileges/:privilegeName/users
Add a specific privilege for one or more users in the current subscription context, using user ids or user names. The available privilege names can be retrieved using the list privileges API.
GET {{baseUrl}}/administration/privileges?id=voluptate elit&name=voluptate elit&userId=voluptate elit&userName=voluptate elit&groupId=voluptate elit&groupName=voluptate elit&roleId=voluptate elit&roleName=voluptate elit&offset=voluptate elit&count=voluptate elit
List privileges in the current subscription context.
DELETE {{baseUrl}}/designtime/models/:modelId
Delete the current version of the non-executable process model.
GET {{baseUrl}}/designtime/models/:modelId?modelType=xml
Retrieve the BPMN 2.0 xml/json content of the non executable process model.
GET {{baseUrl}}/designtime/models?id=voluptate elit&category=voluptate elit&categoryLike=voluptate elit&categoryNotEquals=voluptate elit&name=voluptate elit&nameLike=voluptate elit&key=voluptate elit&filterByCurrentSubscription=true&offset=voluptate elit&count=voluptate elit&sort=id
Get the non-executable process models.
POST {{baseUrl}}/designtime/models
Save the contents of BPMN based process model, which can be used for application development. No process instances can be triggered on the saved process models. The process model can be defined using the workflow modeler. The content of the process model (required for modelContent) can be exported and copied as a BPMN 2.0 encoded xml or BPMN 2.0 json directly from the workflow modeler.
Sample request body :
{
name
: SampleModel
,
key
: SampleKey
,
category
: SampleCategory
,
modelType
: xml/json
,
modelContent
: encoded BPMN xml content for xml type / plain BPMN json for json type
}
GET {{baseUrl}}/process-instances/adhoc-subprocesses/:adhocSubprocessId/activities
List of enabled activities for adhoc sub process. Adhoc sub process id is same as the id in the list of adhoc sub processes for a process instance response or id in the list of active adhoc sub process executions for a process instance.
POST {{baseUrl}}/process-instances/adhoc-subprocesses/:adhocSubprocessId/activities
Execute activities in adhoc sub process. Adhoc sub process id is same as the id in the list of adhoc sub processes for a process instance response or id in the list of active adhoc sub process executions for a process instance.
POST {{baseUrl}}/process-instances/adhoc-subprocesses/:adhocSubprocessId
Complete adhoc sub process in a process instance. Adhoc sub process id is same as the id in the list of adhoc sub processes for a process instance response or id in the list of active adhoc sub process executions for a process instance.
GET {{baseUrl}}/process-instances/administration/failedasync-jobs?id=voluptate elit&processInstanceId=voluptate elit&executionId=voluptate elit&processDefinitionId=voluptate elit&elementId=voluptate elit&elementName=voluptate elit&executable=true&timersOnly=true&messagesOnly=true&withException=true&dueBefore=1951-08-14T20:08:23.047Z&dueAfter=1951-08-14T20:08:23.047Z&exceptionMessage=voluptate elit&locked=true&unlocked=true&filterByCurrentSubscription=true&offset=voluptate elit&count=voluptate elit&sort=retries
List async jobs which previously failed due to runtime errors.
POST {{baseUrl}}/process-instances/administration/failedasync-jobs/:jobId
Recover the failed async job by moving the executions to active state. Use this API after correcting the previously encountered runtime errors in the async executions.
GET {{baseUrl}}/process-instances/executions?id=voluptate elit&activityId=voluptate elit&processDefinitionKey=voluptate elit&processDefinitionId=voluptate elit&processInstanceId=voluptate elit&messageEventSubscriptionName=voluptate elit&signalEventSubscriptionName=voluptate elit&parentId=voluptate elit&filterByCurrentSubscription=true&offset=voluptate elit&count=voluptate elit&sort=processDefinitionId
A process instance can have multiple active paths in execution. Use this API to retrieve the current executions for a process instance.
POST {{baseUrl}}/process-instances/executions
A process instance can have multiple active paths in execution. Use this API to retrieve the current executions for a process instance.
PUT {{baseUrl}}/process-instances/executions/:executionId
Broadcast signal or message to a process instance execution currently in waiting state.
DELETE {{baseUrl}}/process-instances/:processInstanceId/comments/:commentId
Delete comment on a process instance.
GET {{baseUrl}}/process-instances/:processInstanceId/comments/:commentId?includeUserIds=false
Get a comment on a Process Instance.
GET {{baseUrl}}/process-instances/:processInstanceId/comments?includeUserIds=false
Get comments on a process instance.
POST {{baseUrl}}/process-instances/:processInstanceId/comments
Create a comment on a process instance.
DELETE {{baseUrl}}/process-instances/:processInstanceId/variables/:variableName?scope=voluptate elit&cascade=false&cascadeContent=false
Delete a variable on a process instance
GET {{baseUrl}}/process-instances/:processInstanceId/variables/:variableName?scope=voluptate elit
Get a variable for a process instance.
PUT {{baseUrl}}/process-instances/:processInstanceId/variables/:variableName
Update a single variable on a process instance.
Sample request body :
{
name
: SampleVariable
,
type
: string
,
value
: SampleValue
,
scope
: local
}
GET {{baseUrl}}/process-instances/:processInstanceId/variables?scope=voluptate elit&type=true&offset=voluptate elit&count=voluptate elit
List the variables for a process instance.
POST {{baseUrl}}/process-instances/:processInstanceId/variables
Create one or more variables on a process instance.
Sample request body :
[
{
name
: SampleVariable
,
type
: string
,
value
: SampleValue
,
scope
: local
}
]
DELETE {{baseUrl}}/process-instances/:processInstanceId
Delete a process instance.
GET {{baseUrl}}/process-instances/:processInstanceId?includeUserIds=false&includeProcessVariables=false
Get a process instance based on the given process instance id.
PUT {{baseUrl}}/process-instances/:processInstanceId
Activate or suspend a process instance by providing suitable action.
GET {{baseUrl}}/process-instances/:processInstanceId/adhoc-subprocesses
List of adhoc sub processes for a process instance.
GET {{baseUrl}}/process-instances/:processInstanceId/diagram
Get the current execution status of a process instance in a process model diagram.
POST {{baseUrl}}/process-instances/:processInstanceId/inject
Inject a user task or a sub process in a process instance.
GET {{baseUrl}}/process-instances?id=voluptate elit&name=voluptate elit&nameLike=voluptate elit&nameLikeIgnoreCase=voluptate elit&processDefinitionKey=voluptate elit&processDefinitionId=voluptate elit&processDefinitionCategory=voluptate elit&processDefinitionVersion=-98125607&businessKey=voluptate elit&startedBy=voluptate elit&startedBefore=1951-08-14T20:08:23.047Z&startedAfter=1951-08-14T20:08:23.047Z&involvedUser=voluptate elit&suspended=true&superProcessInstanceId=voluptate elit&subProcessInstanceId=voluptate elit&excludeSubprocesses=true&includeProcessVariables=true&callbackId=voluptate elit&callbackType=voluptate elit&dueOn=1951-08-14T20:08:23.047Z&dueBefore=1951-08-14T20:08:23.047Z&dueAfter=1951-08-14T20:08:23.047Z&offset=voluptate elit&count=voluptate elit&filterByCurrentSubscription=true&sort=id&order=asc&includeUserIds=false&includeProcessComments=true&sortEmptyValuesOnTop=true
List process instances.
POST {{baseUrl}}/process-instances
Create a process instance using either processDefinitionKey, processDefinitionId or message name.processDefinitionKey, processDefinitionId are same as the key, id retrieved in the create a new executable process model response respectively.message is same as the message name configured in the process model.
POST {{baseUrl}}/process-instances/signals
Broadcast signal to trigger process models with a configured start signal event and create process instances.
GET {{baseUrl}}/version
Get the workflow version information.
GET {{baseUrl}}/external-jobs/:jobId
Get a single external worker job based on the given job id.
POST {{baseUrl}}/external-jobs/:jobId/complete
Complete an external worker job as successful, with the worker id who is holding the lock on the specified job. The completion context can be shared back to workflow using variables.
POST {{baseUrl}}/external-jobs/:jobId/error
Complete an external worker job with an error and share the error details back to workflow using variables. A job completed with an error can't be retried again by any other worker.
POST {{baseUrl}}/external-jobs/:jobId/fail
Fail an external worker job providing error message and the corresponding error details. A failed external job can be retried again later based on the specified retry details.
GET {{baseUrl}}/external-jobs?id=officia&executionId=officia&processInstanceId=officia&processDefinitionId=officia&elementId=officia&elementName=officia&topic=officia&withException=true&exceptionMessage=officia&locked=true&unlocked=true&filterByCurrentSubscription=true&offset=officia&count=officia
List external worker jobs
POST {{baseUrl}}/external-jobs
Acquire external worker jobs for a specific topic with a particular worker id. The number of jobs to be acquired can be specified in the request along with the lock duration and number of possible retries.
GET {{baseUrl}}/historic-task-instances?taskId=et esse&processInstanceId=et esse&processInstanceIdWithChildren=et esse&processDefinitionKey=et esse&processDefinitionKeyLike=et esse&processDefinitionId=et esse&processDefinitionName=et esse&processDefinitionNameLike=et esse&processBusinessKey=et esse&processBusinessKeyLike=et esse&executionId=et esse&taskDefinitionKey=et esse&taskDefinitionKeys=et esse&taskName=et esse&taskNameLike=et esse&taskDescription=et esse&taskDescriptionLike=et esse&taskCategory=et esse&taskDeleteReason=et esse&taskDeleteReasonLike=et esse&taskAssignee=et esse&taskAssigneeLike=et esse&taskOwner=et esse&taskOwnerLike=et esse&taskInvolvedUser=et esse&taskPriority=et esse&finished=true&processFinished=true&parentTaskId=et esse&dueDate=1967-06-20T13:14:48.573Z&dueDateAfter=1967-06-20T13:14:48.573Z&dueDateBefore=1967-06-20T13:14:48.573Z&withoutDueDate=true&taskCompletedOn=1967-06-20T13:14:48.573Z&taskCompletedAfter=1967-06-20T13:14:48.573Z&taskCompletedBefore=1967-06-20T13:14:48.573Z&taskCreatedOn=1967-06-20T13:14:48.573Z&taskCreatedBefore=1967-06-20T13:14:48.573Z&taskCreatedAfter=1967-06-20T13:14:48.573Z&includeTaskLocalVariables=true&includeProcessVariables=true&includeTaskAssignments=true&includeTaskComments=true&scopeDefinitionId=et esse&scopeId=et esse&scopeType=et esse&filterByCurrentSubscription=true&excludeSubTasks=true&sortEmptyValuesOnTop=true&includeUserIds=false&includeGroupIds=false
List historic task instances.
GET {{baseUrl}}/historic-task-instances/:taskId?includeTaskLocalVariables=true&includeProcessVariables=true&includeTaskComments=true&includeTaskAssignments=true&includeUserIds=false&includeGroupIds=false
Get a historic task instance.
GET {{baseUrl}}/historic-process-instances?processInstanceId=et esse&processInstanceName=et esse&processInstanceNameLike=et esse&processInstanceNameLikeIgnoreCase=et esse&processDefinitionKey=et esse&processDefinitionId=et esse&processDefinitionName=et esse&processDefinitionCategory=et esse&processDefinitionVersion=et esse&deploymentId=et esse&businessKey=et esse&businessKeyLike=et esse&involvedUser=et esse&finished=true&superProcessInstanceId=et esse&excludeSubprocesses=true&finishedAfter=1967-06-20T13:14:48.573Z&finishedBefore=1967-06-20T13:14:48.573Z&startedAfter=1967-06-20T13:14:48.573Z&startedBefore=1967-06-20T13:14:48.573Z&startedBy=et esse&includeProcessVariables=true&filterByCurrentSubscription=true&dueOn=1967-06-20T13:14:48.573Z&dueBefore=1967-06-20T13:14:48.573Z&dueAfter=1967-06-20T13:14:48.573Z&callbackId=et esse&callbackType=et esse&sortEmptyValuesOnTop=true&includeUserIds=false&includeProcessComments=true
List historic process instances
GET {{baseUrl}}/historic-process-instances/:processInstanceId?includeUserIds=false&includeProcessVariables=false
Get a historic process instance
GET {{baseUrl}}/task-instances/audit-logs?eventType=process-task-create&taskId=et esse&taskDefinitionKey=et esse&taskName=et esse&taskAssignee=et esse&processInstanceId=et esse&processDefinitionId=et esse&userId=et esse&filterByCurrentSubscription=true&offset=et esse&count=et esse&Before=1967-06-20T13:14:48.573Z&After=1967-06-20T13:14:48.573Z
List process task instances audit logs
GET {{baseUrl}}/activity-instances/audit-logs?eventType=process-activity-start&activityId=et esse&activityType=et esse&executionId=et esse&processInstanceId=et esse&processDefinitionId=et esse&userId=et esse&filterByCurrentSubscription=true&offset=et esse&count=et esse&Before=1967-06-20T13:14:48.573Z&After=1967-06-20T13:14:48.573Z
List process activity instances audit logs
GET {{baseUrl}}/historic-activity-instances?activityId=et esse&activityInstanceId=et esse&activityName=et esse&activityType=et esse&executionId=et esse&finished=true&taskAssignee=et esse&processInstanceId=et esse&processDefinitionId=et esse&filterByCurrentSubscription=true&includeUserIds=false
List historic activity instances.
GET {{baseUrl}}/process-instances/audit-logs?eventType=process-end&processInstanceId=et esse&processDefinitionId=et esse&userId=et esse&filterByCurrentSubscription=true&offset=et esse&count=et esse&Before=1967-06-20T13:14:48.573Z&After=1967-06-20T13:14:48.573Z
List process instances audit logs
GET {{baseUrl}}/version
Get the workflow version information.
ENDPOINTS