Workflow¶
Start A Single Workflow Transition¶
HTTP Request
POST /api/v1/workflow/start-transition/{event-id}
📋 Description: Executes the named state-machine event for one entity. The request body must match the transition-input type expected by the event (e.g.
InvoiceTransitionInputfor invoice events). Setsync-transition=trueto block until the transition completes; default is async (fire-and-forget, returns immediately with a PENDING result).
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
event-id |
path |
string |
true |
Workflow event identifier, e.g. inv_submit, inv_approve, workspace_send_to_review |
sync-transition |
query |
boolean |
false |
If true, wait for the transition to complete before returning. Default: false (async). |
body |
body |
true |
Request body containing the transition details and associated parameters necessary to initiate the specified workflow event. |
Default Values¶
Parameter |
Default |
Type |
|---|---|---|
sync-transition |
|
query |
Body Parameters
1{
2 "objectId": 0,
3 "objectType": "string",
4 "comment": "string"
5}
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
||
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "id": 0,
3 "success": true,
4 "cancelled": true,
5 "failureMessage": "string",
6 "warningMessage": "string"
7}
Workflow - Cancel Auto Transitive¶
HTTP Request
POST /api/v1/workflow/cancel-auto-transition/{event-id}
📋 Description: Cancels the automatic transition of a specified workflow event, identified by the event ID, ensuring that the workflow remains in its current state and does not progress unintentionally. This operation is essential for maintaining control over workflow processes in dynamic business environments.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
event-id |
path |
string |
true |
Unique identifier for the specific event associated with the workflow transition that is to be canceled. |
body |
body |
true |
Request body containing the cancellation details for the specified auto-transition event, including relevant identifiers and reasons for cancellation. |
Body Parameters
1{
2 "objectId": 0,
3 "objectType": "string",
4 "currentStateId": "string",
5 "comment": "string"
6}
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
None |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "errorCode": "string",
3 "balances": [
4 {
5 "id": 0,
6 "displayId": "string",
7 "invoiceId": 0,
8 "invoiceDisplayId": "string",
9 "invoiceLineItemId": 0,
10 "invoiceLineItemDisplayId": "string",
11 "invoiceLineItemDescription": "string",
12 "expenseCategory": {
13 "id": 0,
14 "displayId": "string",
15 "name": "string"
16 },
17 "totalNetAmount": 0,
18 "totalTaxAmount": 0,
19 "reservedNetAmount": 0,
20 "reservedTaxAmount": 0,
21 "remainingTotalAmount": 0,
22 "remainingNetAmount": 0,
23 "remainingTaxAmount": 0,
24 "allowsSystemGenerateNewId": true,
25 "numberRangeIdentifierValue": "string",
26 "numberRangeIdentifierType": {
27 "name": "string"
28 },
29 "numberRangeType": {
30 "name": "string"
31 }
32 }
33 ]
34}
Start A Bulk Workflow Transition¶
HTTP Request
POST /api/v1/workflow/bulk-transition/{event-id}
📋 Description: Executes the named state-machine event for multiple entities in one call. The request body must be a bulk-transition-input container (e.g.
InvoiceBulkTransitionInput) whose items are of the per-entity input type. Returns oneStateProcessResultper entity.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
event-id |
path |
string |
true |
Workflow event identifier |
sync-transition |
query |
boolean |
false |
If true, wait for all transitions to complete before returning. Default: false (async). |
body |
body |
true |
Request body containing an array of workflow items to be transitioned based on the specified event ID, including relevant status updates and associated metadata. |
Default Values¶
Parameter |
Default |
Type |
|---|---|---|
sync-transition |
|
query |
Body Parameters
1{}
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
Inline |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1[
2 {
3 "id": 0,
4 "success": true,
5 "cancelled": true,
6 "failureMessage": "string",
7 "warningMessage": "string"
8 }
9]
Response Schema
Status Code 200
Name |
Type |
Required |
Restrictions |
Description |
|---|---|---|---|---|
anonymous |
false |
none |
[Data transfer object representing the outcome of a state process, including its status, associated metadata, and relevant business context to facilitate decision-making and process management.] |
|
» id |
integer(int64) |
false |
none |
Unique identifier for the resource |
» success |
boolean |
false |
none |
Indicates whether the process completed successfully, providing essential feedback for operational decision-making. |
» cancelled |
boolean |
false |
none |
Indicates whether the process has been cancelled, providing essential status information for tracking and reporting purposes. |
» failureMessage |
string |
false |
none |
Descriptive message detailing the reason for a process failure, providing insights for troubleshooting and resolution. |
» warningMessage |
string |
false |
none |
Contains a message indicating any warnings related to the state process result, providing users with essential insights for decision-making. |
Workflow - Get Graph Nodes By Object Type¶
HTTP Request
GET /api/v1/workflow/nodes/{object-type}
📋 Description: Retrieves workflow nodes for a specified object type, enabling users to access and manage workflow configurations effectively.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
object-type |
path |
string |
true |
Specifies the type of object to retrieve workflow nodes, enabling targeted access to relevant data within the workflow management system. |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
Inline |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1[
2 {
3 "state": {
4 "id": "string",
5 "name": "string",
6 "captionKey": "string",
7 "latestStateHistoryFailureMessage": "string",
8 "latestStateHistoryWarningMessage": "string",
9 "initial": true,
10 "transitionState": true,
11 "caption": "string",
12 "final": true
13 },
14 "objectType": "string",
15 "nodeInfo": "string",
16 "type": "INPUT",
17 "sourcePosition": "BOTTOM",
18 "targetPosition": "BOTTOM",
19 "customLayout": [
20 {
21 "position": "BOTTOM"
22 }
23 ],
24 "xcoordinate": 0,
25 "ycoordinate": 0,
26 "startStateNode": true,
27 "endStateNode": true,
28 "transitionStateNode": true,
29 "caption": "string"
30 }
31]
Response Schema
Status Code 200
Name |
Type |
Required |
Restrictions |
Description |
|---|---|---|---|---|
anonymous |
false |
none |
[Data structure representing a node within a workflow graph, encapsulating essential information about the node’s role, connections, and status to facilitate effective process management and optimization.] |
|
» state |
false |
none |
Data transfer object representing the current state within a state machine, encapsulating relevant status information and transition metadata to facilitate workflow management and process automation. |
|
»» id |
string |
false |
none |
Unique identifier for the resource |
»» name |
string |
false |
none |
Name of the resource |
»» captionKey |
string |
false |
none |
Unique key representing the caption associated with the specific state in the state machine, facilitating clear identification and management of state transitions. |
»» latestStateHistoryFailureMessage |
string |
false |
none |
Message detailing the most recent failure encountered in the state history of the state machine, providing insight for troubleshooting and operational continuity. |
»» latestStateHistoryWarningMessage |
string |
false |
none |
Message indicating the most recent warning related to the state history of the state machine, providing insights for operational decision-making. |
»» initial |
boolean |
false |
none |
Indicates whether the state machine is in its initial state, serving as a key marker for workflow progression. |
»» transitionState |
boolean |
false |
none |
Indicates whether the current state of the process transition is active, facilitating effective workflow management. |
»» caption |
string |
false |
none |
Descriptive text associated with the current state of the state machine, providing context for its purpose and functionality within the workflow. |
»» final |
boolean |
false |
none |
Indicates whether the state of the state machine is final, signifying the completion of the process within the workflow. |
» objectType |
string |
false |
none |
Type of the object |
» nodeInfo |
string |
false |
none |
String representation of the node information within the workflow graph, facilitating the tracking and management of workflow processes. |
» type |
string |
false |
none |
Type of the resource |
» sourcePosition |
string |
false |
none |
Indicates the origin of the position within the workflow, providing context for its role in the overall process. |
» targetPosition |
string |
false |
none |
Specifies the desired position within the workflow for effective task allocation and process management. |
» customLayout |
false |
none |
An array of custom layout configurations that define the visual arrangement of workflow nodes within the application. |
|
»» position |
string |
false |
none |
Represents the specific role or function within the workflow, facilitating effective task assignment and resource management. |
» xcoordinate |
integer(int32) |
false |
none |
Represents the horizontal position of a node within the workflow graph, facilitating the visualization and organization of process flows. |
» ycoordinate |
integer(int32) |
false |
none |
Represents the vertical position of a node within the workflow graph, facilitating the visual organization and navigation of workflow processes. |
» startStateNode |
boolean |
false |
none |
Indicates whether the node serves as the starting point in the workflow process, facilitating the identification of the initial step in the operational sequence. |
» endStateNode |
boolean |
false |
none |
Indicates whether the current node in the workflow represents an end state, facilitating the identification of workflow completion points. |
» transitionStateNode |
boolean |
false |
none |
Indicates whether the workflow node is in a transitional state, facilitating the management of process flows within the system. |
» caption |
string |
false |
none |
Descriptive text associated with the workflow node, providing context and clarity for users navigating the workflow process. |
Enumerated Values
Attribute |
Value |
|---|---|
position |
BOTTOM, LEFT, RIGHT, TOP |
sourcePosition |
BOTTOM, LEFT, RIGHT, TOP |
targetPosition |
BOTTOM, LEFT, RIGHT, TOP |
type |
CUSTOM, DEFAULT, INPUT, OUTPUT |
Workflow - Get Graph Edges By Object Type¶
HTTP Request
GET /api/v1/workflow/edges/{object-type}
📋 Description: Retrieves the edges associated with a specified object type within the workflow, enabling users to analyze relationships and dependencies in their business processes.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
object-type |
path |
string |
true |
Specifies the type of object to retrieve workflow edges, enabling targeted access to relevant data within the workflow management system. |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
Inline |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1[
2 {
3 "event": {
4 "id": "string",
5 "eventName": "string",
6 "captionKey": "string",
7 "objectType": "string",
8 "disabledReason": "string",
9 "warningReason": "string",
10 "hasWarnings": true,
11 "disabled": true,
12 "caption": "string"
13 },
14 "sourceNodeId": "string",
15 "targetNodeId": "string",
16 "sourceHandle": "BOTTOM",
17 "targetHandle": "BOTTOM",
18 "customLabel": "string",
19 "yoffset": 0,
20 "xoffset": 0,
21 "caption": "string"
22 }
23]
Response Schema
Status Code 200
Name |
Type |
Required |
Restrictions |
Description |
|---|---|---|---|---|
anonymous |
false |
none |
[Data structure representing a connection between nodes in a workflow, encapsulating essential information about the relationship and attributes of each edge, facilitating efficient process management and optimization.] |
|
» event |
false |
none |
Data transfer object representing an event within a state machine, capturing the transition of business processes and facilitating workflow automation. |
|
»» id |
string |
false |
none |
Unique identifier for the resource |
»» eventName |
string |
false |
none |
Name of the event |
»» captionKey |
string |
false |
none |
Unique key representing the caption associated with a specific state machine event, facilitating clear identification and management within the workflow. |
»» objectType |
string |
false |
none |
Type of the object |
»» disabledReason |
string |
false |
none |
Reason for the current disabled status of the state machine event, providing context for its inactivation. |
»» warningReason |
string |
false |
none |
Describes the reason for a warning generated during the state machine event process, providing context for potential issues that may require attention. |
»» hasWarnings |
boolean |
false |
none |
Whether the resource has has warnings |
»» disabled |
boolean |
false |
none |
Whether this feature is disabled |
»» caption |
string |
false |
none |
Descriptive text associated with the state machine event, providing context for its purpose within the workflow. |
» sourceNodeId |
string |
false |
none |
Unique identifier for the source node |
» targetNodeId |
string |
false |
none |
Unique identifier for the target node |
» sourceHandle |
string |
false |
none |
Identifier for the source of the workflow edge, facilitating traceability and management of workflow relationships within the system. |
» targetHandle |
string |
false |
none |
Identifier for the target entity within the workflow, facilitating the connection and flow of information between processes. |
» customLabel |
string |
false |
none |
Label for the custom |
» yoffset |
integer(int32) |
false |
none |
Specifies the vertical offset value for positioning elements within the workflow graph, facilitating optimal visual representation and clarity in process mapping. |
» xoffset |
integer(int32) |
false |
none |
Specifies the horizontal offset value for positioning elements within the workflow graph, facilitating precise layout adjustments. |
» caption |
string |
false |
none |
Descriptive text associated with the workflow edge, providing context and clarity for users navigating the workflow process. |
Enumerated Values
Attribute |
Value |
|---|---|
sourceHandle |
BOTTOM, LEFT, RIGHT, TOP |
targetHandle |
BOTTOM, LEFT, RIGHT, TOP |
Workflow - Get Current State¶
HTTP Request
GET /api/v1/workflow/current-state/{object-type}/{object-id}
📋 Description: Retrieves the current state of a specified workflow object, identified by its type and ID, to provide real-time insights into its status and progress within the business process.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
object-type |
path |
string |
true |
Specifies the type of object for which the current workflow state is being retrieved, enabling precise tracking and management of various entities within the system. |
object-id |
path |
integer(int64) |
true |
Unique identifier for the specific object within the workflow, enabling retrieval of its current state. |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
||
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "id": "string",
3 "name": "string",
4 "captionKey": "string",
5 "latestStateHistoryFailureMessage": "string",
6 "latestStateHistoryWarningMessage": "string",
7 "initial": true,
8 "transitionState": true,
9 "caption": "string",
10 "final": true
11}
Workflow - List Available Events¶
HTTP Request
GET /api/v1/workflow/available-events/{object-type}/{object-id}
📋 Description: Retrieves a list of available events for a specified object type and object ID, enabling users to efficiently manage and respond to relevant workflow activities.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
object-type |
path |
string |
true |
Specifies the type of object for which available events are being retrieved, enabling targeted event management within the workflow. |
object-id |
path |
integer(int64) |
true |
Unique identifier of the specific object within the workflow, used to retrieve available events associated with that object type. |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
Inline |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1[
2 {
3 "id": "string",
4 "eventName": "string",
5 "captionKey": "string",
6 "objectType": "string",
7 "disabledReason": "string",
8 "warningReason": "string",
9 "hasWarnings": true,
10 "disabled": true,
11 "caption": "string"
12 }
13]
Response Schema
Status Code 200
Name |
Type |
Required |
Restrictions |
Description |
|---|---|---|---|---|
anonymous |
false |
none |
[Data transfer object representing an event within a state machine, capturing the transition of business processes and facilitating workflow automation.] |
|
» id |
string |
false |
none |
Unique identifier for the resource |
» eventName |
string |
false |
none |
Name of the event |
» captionKey |
string |
false |
none |
Unique key representing the caption associated with a specific state machine event, facilitating clear identification and management within the workflow. |
» objectType |
string |
false |
none |
Type of the object |
» disabledReason |
string |
false |
none |
Reason for the current disabled status of the state machine event, providing context for its inactivation. |
» warningReason |
string |
false |
none |
Describes the reason for a warning generated during the state machine event process, providing context for potential issues that may require attention. |
» hasWarnings |
boolean |
false |
none |
Whether the resource has has warnings |
» disabled |
boolean |
false |
none |
Whether this feature is disabled |
» caption |
string |
false |
none |
Descriptive text associated with the state machine event, providing context for its purpose within the workflow. |
Workflow - List All Events By Object Type¶
HTTP Request
GET /api/v1/workflow/all-events/{object-type}
📋 Description: Retrieves all events associated with a specified object type, enabling users to gain insights into workflow activities and monitor performance effectively.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
object-type |
path |
string |
true |
Specifies the type of object for which all associated events are retrieved, enabling targeted workflow analysis. |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
Inline |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1[
2 {
3 "id": "string",
4 "eventName": "string",
5 "captionKey": "string",
6 "objectType": "string",
7 "disabledReason": "string",
8 "warningReason": "string",
9 "hasWarnings": true,
10 "disabled": true,
11 "caption": "string"
12 }
13]
Response Schema
Status Code 200
Name |
Type |
Required |
Restrictions |
Description |
|---|---|---|---|---|
anonymous |
false |
none |
[Data transfer object representing an event within a state machine, capturing the transition of business processes and facilitating workflow automation.] |
|
» id |
string |
false |
none |
Unique identifier for the resource |
» eventName |
string |
false |
none |
Name of the event |
» captionKey |
string |
false |
none |
Unique key representing the caption associated with a specific state machine event, facilitating clear identification and management within the workflow. |
» objectType |
string |
false |
none |
Type of the object |
» disabledReason |
string |
false |
none |
Reason for the current disabled status of the state machine event, providing context for its inactivation. |
» warningReason |
string |
false |
none |
Describes the reason for a warning generated during the state machine event process, providing context for potential issues that may require attention. |
» hasWarnings |
boolean |
false |
none |
Whether the resource has has warnings |
» disabled |
boolean |
false |
none |
Whether this feature is disabled |
» caption |
string |
false |
none |
Descriptive text associated with the state machine event, providing context for its purpose within the workflow. |