Skip to content

Workflow Management API (0.0.3)

Overview

The Workflow Management REST API's allow the creation of a workflow, and steps within that workflow. Steps, and split step options must be assigned actions that are already defined through the /enrollmentActions api. Please see that API for additional information. For split steps only the action definition is to be provided, but the options require a matching action type, and must be of type split.## Rate Limit For the Workflow Management REST API the following will be true:

  • Limits are applied to each tenant.
  • A maximum of 100 calls can be made per second.
  • Each second 50 calls will be returned to be used.
Download OpenAPI description
Languages
Servers
Generated server url

http://localhost:8080/

Workflow

Manages the workflows, including create, update and delete.

Operations

Create Workflow

Request

Initiates a request that will create a workflow with the requested values and sets its status to work-in-progress, any other state change request will be ignored. The start and end steps for the workflow are also automatically created.

Bodyrequired
namestringrequired

The name of the workflow.

descriptionstring

The description of a workflow.

allowedIpsArray of strings

The list of IP addresses that are permitted to access this workflow. Only one allowed IP can be queried for using filter in the query data.

disAllowedIpsArray of strings

The list of IP addresses that are not permitted to access this workflow. Only one not allowed IP can be queried for using filter in the query data.

publishedDetailsobject(PublishedDetails_v1_0)

The publish details for the workflow.

startStepIdstring(uuid)

The start step for this workflow.

_linksobject(Links)
{ "name": "string", "description": "string", "allowedIps": [ "string" ], "disAllowedIps": [ "string" ], "publishedDetails": { "status": "WORK_IN_PROGRESS" }, "startStepId": "89855da9-7928-4250-8ea0-cf0707fcc260", "_links": { "property1": {}, "property2": {} } }

Responses

Accepted

Body
requestIdstring
idstring
Response
{ "requestId": "string", "id": "string" }

Create a New Workflow from the Specified Workflow

Request

Initiates a request that will create a new workflow from the specified workflow with the requested values and sets its status to work-in-progress. All steps in the workflow will be cloned.

Path
workflowIdstring(uuid)required
No request payload

Responses

Accepted

Body
requestIdstring
idstring
Response
{ "requestId": "string", "id": "string" }

Get All Workflows Including Versioned

Request

Retrieves all of the workflow versions for requested workflow.

Path
workflowIdstring(uuid)required
Query
excludeContentboolean
Default false
Bodyrequired
sortFieldstring

The field to use to sort on.

sortOrderstring

The sort order of the applied query.

Enum"ASC""DESC"
pageinteger(int32)>= 0

The page number to return, paging starts with 0.

pageSizeinteger(int32)[ 1 .. 2000 ]

The number of items requested on the page.

filtersobject

The list of filters to apply.

{ "sortField": "string", "sortOrder": "ASC", "page": 0, "pageSize": 1, "filters": { "property1": {}, "property2": {} } }

Responses

Success

Body
pagingobject(PageDto)

The paging information for this response.

contentArray of objects(Workflow_v1_0)

The content list of the data.

Response
{ "paging": { "totalCount": 0, "page": 0, "pageSize": 0, "pageCount": 0 }, "content": [ {} ] }

Import a Workflow Into the Existing Workflow

Request

Initiates a request to clone a workflow into the existing workflow after the requested step.

Path
workflowIdstring(uuid)required
stepIdstring(uuid)required
referencedWorkflowIdstring(uuid)required
No request payload

Responses

Accepted

Body
requestIdstring
idstring
Response
{ "requestId": "string", "id": "string" }

Get All Current Workflow

Request

Retrieves all of the work in progress workflows based on the query criteria.

Query
excludeContentboolean
Default false
Bodyrequired
sortFieldstring

The field to use to sort on.

sortOrderstring

The sort order of the applied query.

Enum"ASC""DESC"
pageinteger(int32)>= 0

The page number to return, paging starts with 0.

pageSizeinteger(int32)[ 1 .. 2000 ]

The number of items requested on the page.

filtersobject

The list of filters to apply.

{ "sortField": "string", "sortOrder": "ASC", "page": 0, "pageSize": 1, "filters": { "property1": {}, "property2": {} } }

Responses

Success

Body
pagingobject(PageDto)

The paging information for this response.

contentArray of objects(Workflow_v1_0)

The content list of the data.

Response
{ "paging": { "totalCount": 0, "page": 0, "pageSize": 0, "pageCount": 0 }, "content": [ {} ] }

Get Workflow

Request

Retrieves the requested workflow by id.

Path
workflowIdstring(uuid)required

Workflow identifier.

No request payload

Responses

Success

Body
idstring(uuid)read-only

The unique ID for this workflow.

namestringrequired

The name of the workflow.

descriptionstring

The description of a workflow.

allowedIpsArray of strings

The list of IP addresses that are permitted to access this workflow. Only one allowed IP can be queried for using filter in the query data.

disAllowedIpsArray of strings

The list of IP addresses that are not permitted to access this workflow. Only one not allowed IP can be queried for using filter in the query data.

publishedDetailsobject(PublishedDetails_v1_0)

The publish details for the workflow.

startStepIdstring(uuid)

The start step for this workflow.

_linksobject(Links)
Response
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "description": "string", "allowedIps": [ "string" ], "disAllowedIps": [ "string" ], "publishedDetails": { "parentWorkflowId": "0e133d30-08c8-4a67-900d-b2904eba2ec8", "version": 0, "publishedDate": "2019-08-24T14:15:22Z", "status": "WORK_IN_PROGRESS" }, "startStepId": "89855da9-7928-4250-8ea0-cf0707fcc260", "_links": { "property1": {}, "property2": {} } }

Delete Workflow

Request

Initiates a request that will delete the workflow requested. If the workflow id provided is for a workflow that is in a work in progress' state then it will be deleted along with all dependent published and retired workflows.

Path
workflowIdstring(uuid)required
No request payload

Responses

Accepted

Body
requestIdstring
idstring
Response
{ "requestId": "string", "id": "string" }

Update a Workflow

Request

Initiates a request that will update the workflow requested. Once it has been published a workflow cannot be changed.

Path
workflowIdstring(uuid)required
Bodyrequired
namestringrequired

The name of the workflow.

descriptionstring

The description of a workflow.

allowedIpsArray of strings

The list of IP addresses that are permitted to access this workflow. Only one allowed IP can be queried for using filter in the query data.

disAllowedIpsArray of strings

The list of IP addresses that are not permitted to access this workflow. Only one not allowed IP can be queried for using filter in the query data.

publishedDetailsobject(PublishedDetails_v1_0)

The publish details for the workflow.

startStepIdstring(uuid)

The start step for this workflow.

_linksobject(Links)
{ "name": "string", "description": "string", "allowedIps": [ "string" ], "disAllowedIps": [ "string" ], "publishedDetails": { "status": "WORK_IN_PROGRESS" }, "startStepId": "89855da9-7928-4250-8ea0-cf0707fcc260", "_links": { "property1": {}, "property2": {} } }

Responses

Ok - Returned if a validation request finds no errors.

Body
requestIdstring
idstring
Response
{ "requestId": "string", "id": "string" }

Steps

Manages the steps for the workflow.

Operations

Split Options

Manages the split options for split steps in a workflow.

Operations

Enrollment UI Configuration

Manages the enrollment configuration for the workflow.

Operations

Action Definition

Manages the action definitions that can be used in workflow steps.

Operations