Running Workflow
The Workflows API enables the initiation of workflows that do not involve integrations requiring interaction with the end user, such as scanning documents or completing forms. All necessary data for the execution of the process can be provided through input parameters.
Flow overview
Steps
Create Case
The initial step is to create a case, which represents an individual who will go through the workflow.
During case creation, you can provide additional data such as first name, last name, number, or company name. These details can be utilized when executing tasks in the workflow. This step must be carried out on your backend server.
Create a case with provided data
First name
Last name
Personal Number
Comapny name
Company number
Company address
POST /cases HTTP/1.1
Host: api.transactionlink.io
Content-Type: application/json
Accept: */*
Content-Length: 646
{
"firstName": "Jan",
"lastName": "Nowak",
"personalNumber": 17300211234,
"email": "[email protected]",
"phone": {
"countryCode": 48,
"number": 666666666
},
"companyName": "Company name",
"companyNumber": "Company number",
"companyAddress": "Company address",
"documents": [
{
"resourceId": "20fd5007-008d-447c-8378-6f81ea48fe65",
"resourceName": "File name.pdf",
"resourcePath": "resources/e1413f5b-acb0-4995-919a-3fc60c9592c5/20fd5007-008d-447c-8378-6f81ea48fe65/File name.pdf"
},
{
"resourceId": "20fd5007-008d-447c-8378-6f81ea48fe65",
"resourceName": "File name.pdf",
"resourcePath": "resources/e1413f5b-acb0-4995-919a-3fc60c9592c5/20fd5007-008d-447c-8378-6f81ea48fe65/File name.pdf"
}
]
}
{
"createdDate": "text",
"caseId": "text",
"partyId": "text",
"partyDetails": {
"personal": {
"firstName": "text",
"lastName": "text",
"personalNumber": "text",
"email": "text",
"phone": {
"countryCode": "text",
"number": "text"
}
},
"business": {
"companyNumber": "text",
"companyName": "text",
"companyAddress": "text"
},
"documents": [
{
"resourceId": "text",
"resourceName": "text",
"resourcePath": "text"
}
]
}
}
Create Parameters (optional)
The second step involves passing custom parameters to the workflow if the process requires it. Configuration of this should be done from the dashboard.
Create a set of parameters for given workflow definition to use
Id of the workflow definition
3b2d8a4f-579f-4e2e-a51c-f859e532fe8c
{"param0":0,"param1":1.2222,"param2":true,"param3":"text"}
POST /parameters HTTP/1.1
Host: api.transactionlink.io
Content-Type: application/json
Accept: */*
Content-Length: 135
{
"workflowDefinitionId": "3b2d8a4f-579f-4e2e-a51c-f859e532fe8c",
"parameters": {
"param0": 0,
"param1": 1.2222,
"param2": true,
"param3": "text"
}
}
{
"workflowDefinitionId": "e1413f5b-acb0-4995-919a-3fc60c9592c5",
"parametersId": "c3faa0ef-e83a-41e8-b178-9fd8e4b0ee81",
"parameters": {
"param1": "value1",
"param2": true,
"param3": "text"
}
}
Run Workflow
Next, we can initiate the workflow by providing the workflowDefinitionId
, caseId
, and optional parametersId
.
Run Workflow
Case identifier for which we want to initiate the workflow
Id of the workflow definition
3b2d8a4f-579f-4e2e-a51c-f859e532fe8c
Id of the parameters used in workflow
4b6ffcb6-ab6d-44b9-b5ab-4b5147b0b302
POST /workflows/run HTTP/1.1
Host: api.transactionlink.io
Content-Type: application/json
Accept: */*
Content-Length: 165
{
"caseId": "123e4567-e89b-12d3-a456-426614174000",
"workflowDefinitionId": "3b2d8a4f-579f-4e2e-a51c-f859e532fe8c",
"parametersId": "4b6ffcb6-ab6d-44b9-b5ab-4b5147b0b302"
}
{
"id": "e1413f5b-acb0-4995-919a-3fc60c9592c5",
"caseId": "c3faa0ef-e83a-41e8-b178-9fd8e4b0ee81",
"status": "COMPLETED"
}
Check Workflow Status
The workflow result will only be available upon its completion. To check if the workflow has finished, one can implement long polling and periodically check its status through an API or receive a webhook with information about the completed process.
Check Workflow Status
Workflow Identifier
GET /workflows/{workflowId} HTTP/1.1
Host: api.transactionlink.io
Accept: */*
{
"id": "e1413f5b-acb0-4995-919a-3fc60c9592c5",
"caseId": "c3faa0ef-e83a-41e8-b178-9fd8e4b0ee81",
"status": "COMPLETED"
}
Get Workflow Result
Upon receiving confirmation that the workflow has finished, you can then fetch the result of the process. The specific outcome of the process is contingent upon its individual configuration.
Get Workflow Result
Workflow Identifier
GET /workflows/{workflowId}/result HTTP/1.1
Host: api.transactionlink.io
Accept: */*
{
"createdDate": "text",
"caseId": "text",
"partyId": "text",
"partyDetails": {
"personal": {
"firstName": "text",
"lastName": "text",
"personalNumber": "text",
"email": "text",
"phone": {
"countryCode": "text",
"number": "text"
}
},
"business": {
"companyNumber": "text",
"companyName": "text",
"companyAddress": "text"
},
"documents": [
{
"resourceId": "text",
"resourceName": "text",
"resourcePath": "text"
}
]
}
}
Last updated
Was this helpful?