Flowingly provides an API through which a flow can be started. This provides Flowingly customers an option to integrate third party systems and start flow within Flowingly.
API
Flowingly API to start a flow is available at the following url:
https://publicapi.flowingly.net/public/startFlow
This can be accessed using a HTTP POST request.
Process
The API upon receiving the request first authorizes the request with access token in Authorization header. Once request is authorized then request payload model is validated. Then the flow is started. The following diagram depicts this process:
Request Model
In-order to start a flow, the Flowingly Start Flow API requires the following request model:
{
"Name": "string",
"Subject": "string",
"ActorsToStartFlowFor": [
{
"UserEmail": "string",
"Team": "string"
}
],
"CCActors": [
{
"UserEmail": "string",
"Team": "string"
}
],
"AssignedActor": "string",
"FlowInitiator": "string"
}
Name - Flow model name which is used to uniquely identify a flow model in Flowingly.
Subject - Flow instance subject which is required to start a flow.
ActorsToStartFlowFor - Array of either
UserEmail - User email to start the flow for.
Team- Name of the team if starting the flow for a team.
CCActors - (Optional) Array of either
UserEmail - User email to start the flow for.
Team- Name of the team if starting the flow for a team.
FlowInitiator - Email of the user who initiate the flow.
AssignedActor - (Optional) Email of the user to assign the first step of the flow while starting a new flow. Only required in case when the flow’s first step requires approvers to be selected.
For example: if I want to start a Flowingly flow called 'Set-up New Customer (Debtor) - Integrated' and I want the subject to be 'New customer to set up', and I want the initiator to be the myself, and I want the first step to be assigned to myself, then this is what the body of the post request should look like:
Response Model
Start Flow API upon processing a request returns the following model if the request was authorized successfully.
{
"success": true,
"errorMessage": null,
"errorCode": null,
"dataModel": [
{
"flowIdentifier": "FLOW-9042",
"stepIdentifier": "Step 1"
}
]
}
Success - Flag to indicate result of the api request.
ErrorMessage - Error message, if any.
ErrorCode - Error code, if any.
DataModel - Response model when a flow instance was successfully started.
FlowIdentifier - Flow instance identifier of the started flow instance.
StepIdentifier - Name of the first Step in the started flow.