Loading

DFS Workflow Services API (latest)

Download OpenAPI specification:Download

Contains functionality around Workflows.

For endpoints that support localization the language can be passed either as a query string parameter (using the name 'language') or in the 'accept-language' header.
If no language is passed to such endpoints then the default configured language will be used.

Workflows

Retrieve the most up-to-date status of a workflow instance

Retrieves the most up-to-date information of the status of a workflow instance (e.g. the state of the workflow if applicable and other data useful to the consumer in relation to the workflow type).

Authorizations:
path Parameters
workflowName
required
string

The name of the workflow.

workflowInstanceId
required
string <uuid>

The workflow instance ID to get the status for.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

get/v1.0/workflows/{workflowName}/{workflowInstanceId}/status
https://example-host/v1.0/workflows/{workflowName}/{workflowInstanceId}/status

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "data": null
}

Retrieve the schema of the requested workflow

Retrieves the full payload JSON schema of a workflow type (workflowName). It includes the aggregated payload structure that supports various calls and use-cases (e.g. workflow/start, workflow/update, etc.). Refer to the documentation for the exact payload per use-case.

Authorizations:
path Parameters
workflowName
required
string

The name of the workflow.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

get/v1.0/workflows/{workflowName}/schema
https://example-host/v1.0/workflows/{workflowName}/schema

Response samples

Content type
application/json
Copy
Expand all Collapse all
null

Retrieve the workflow history of an entity

Retrieves information of all inactive workflows based on the input of the entityType and entityId (e.g. entityType = contact and entityId = x). The information includes the workflow instance id and name.

Authorizations:
path Parameters
entityType
required
string

Type of the Entity.

entityId
required
string

Id of the Entity.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

get/v1.0/workflows/entities/{entityType}/{entityId}/history
https://example-host/v1.0/workflows/entities/{entityType}/{entityId}/history

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "workflowEntityHistory":
    [
    ]
}

Update a workflow instance by reaching a milestone

Updates a workflow instance by reaching the next milestone. The payload varies depending on the workflow type. Use the /schema api to find out the payload structure, and refer to the documentation for the exact payload per use-case

Authorizations:
path Parameters
workflowName
required
string

The name of the workflow.

workflowInstanceId
required
string <uuid>

The workflow instance ID to update.

milestoneName
required
string

The name of the milestone.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request payload.

payload
required
any

Responses

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

patch/v1.0/workflows/{workflowName}/{workflowInstanceId}/{milestoneName}/update
https://example-host/v1.0/workflows/{workflowName}/{workflowInstanceId}/{milestoneName}/update

Request samples

Content type
Copy
Expand all Collapse all
{
  • "payload": null
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "data": null
}

Start a new workflow instance of a specified workflow

Starts a new workflow instance of a specified workflow type (workflowName). The payload varies depending on the workflow type. Use the /schema api to find out the payload structure, and refer to the documentation for the exact payload per use-case.

Authorizations:
path Parameters
workflowName
required
string

The name of the workflow.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request payload.

payload
required
any

Responses

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

post/v1.0/workflows/{workflowName}/start
https://example-host/v1.0/workflows/{workflowName}/start

Request samples

Content type
Copy
Expand all Collapse all
{
  • "payload": null
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "workflowInstanceId": "string",
  • "data": null
}

Query to retrieve various workflow-related data or for generic workflow calculations

This endpoint has a multi-functional purpose. Depending on the workflow type (workflowName) it offers methods to retrieve workflow-related data, as well as generic workflow-specific calculations. Refer to the documentation for the list of available query types, request and response bodies.

Authorizations:
path Parameters
workflowName
required
string

The name of the workflow.

queryName
required
string

The name of the query.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request payload.

payload
any Nullable
workflowInstanceId
string <uuid> Nullable

Responses

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

post/v1.0/workflows/{workflowName}/{queryName}/query
https://example-host/v1.0/workflows/{workflowName}/{queryName}/query

Request samples

Content type
Copy
Expand all Collapse all
{
  • "payload": null,
  • "workflowInstanceId": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "data": null
}

Create a new workflow entity

Creates a new workflow entity in the system. This functionality is an internal method to keep track of a new workflow and store all the relevant data and it is not meant to be used by a consumer.

Authorizations:
path Parameters
workflowInstanceId
required
string <uuid>

The workflowInstanceId of the workflow.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request payload.

entityType
string Nullable
entityId
string Nullable
workflowName
string Nullable
parentWorkflowInstanceId
string <uuid> Nullable

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

post/v1.0/workflows/entities/{workflowInstanceId}
https://example-host/v1.0/workflows/entities/{workflowInstanceId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "entityType": "string",
  • "entityId": "string",
  • "workflowName": "string",
  • "parentWorkflowInstanceId": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "code": "General",
  • "subCode": "string",
  • "message": "string",
  • "correlationId": "string",
  • "properties":
    {
    }
}

Complete an active workflow instance

Completes an active workflow entity. This functionality is an internal method to clean-up all the relevant data and the system, and it is not meant to be used by a consumer.

Authorizations:
path Parameters
workflowName
required
string

Name of the workflow

workflowInstanceId
required
string <uuid>

The workflowInstanceId of the workflow.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request payload.

status
string (WorkflowStatus)
Enum: "Completed" "Abandoned" "Rejected" "Failed"
data
any Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

post/v1.0/workflows/{workflowName}/{workflowInstanceId}/complete
https://example-host/v1.0/workflows/{workflowName}/{workflowInstanceId}/complete

Request samples

Content type
Copy
Expand all Collapse all
{
  • "status": "Completed",
  • "data": null
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "code": "General",
  • "subCode": "string",
  • "message": "string",
  • "correlationId": "string",
  • "properties":
    {
    }
}

Retrieve a list of active workflow entities

Retrieves information of one or more active workflows based on the input of the entityType and entityId(s) (e.g. entityType = contact and entityId = x). The information includes the workflow instance id and name.

Authorizations:
path Parameters
entityType
required
string

Type of the Entity

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

List of EntityIds

entityIds
Array of strings Nullable

Responses

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

post/v1.0/workflows/entities/{entityType}/active
https://example-host/v1.0/workflows/entities/{entityType}/active

Request samples

Content type
Copy
Expand all Collapse all
{
  • "entityIds":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "activeWorkflowEntities":
    [
    ]
}

Cancel an active workflow instance

Cancels an active workflow instance. Depending on the workflow type (workflowName) this functionality may be limited (e.g. only available in certain state or states)

Authorizations:
path Parameters
workflowName
required
string

Name of the workflow

workflowInstanceId
required
string <uuid>

The workflowInstanceId of the workflow

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request payload

cancellationReason
string Nullable

Responses

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Internal Server Error

post/v1.0/workflows/{workflowName}/{workflowInstanceId}/cancel
https://example-host/v1.0/workflows/{workflowName}/{workflowInstanceId}/cancel

Request samples

Content type
Copy
Expand all Collapse all
{
  • "cancellationReason": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "code": "General",
  • "subCode": "string",
  • "message": "string",
  • "correlationId": "string",
  • "properties":
    {
    }
}