This page provides guidance on how to use the Start Process Smart Service to initiate processes in your process models, interfaces, and web APIs. Processes initiated using this smart service are run asynchronously, meaning that the current process flow will continue without waiting for these processes to complete.
Learn more about other ways to start a process, and how they compare to this smart service, here.
The behavior of the node depends on the permissions of the user running the smart service. The following table details the result of running the smart service given different permission levels.
Permission Level | Result of Executing Smart Service |
---|---|
Deny or Not in Role Map | The smart service errors, generating an error message for the process administrators and pausing the process |
Initiator | The process is started, but only the process instance ID (processInfo.pp.id ) is populated in the process info variable. All other process info values will be null |
Viewer and Above | The process is started, and all process model properties, process instance properties, and process variable values are populated in the process info output value |
Category: Process Management
Icon:
Assignment Options: Unattended/Attended - Note: When this smart service is attended, the form that the user sees is the form configured on the node, not the start form for the specified process model.
This section contains tab configuration details specific to this smart service. For more information about common configurations see the Process Node Properties page.
Input | Data Type | Description | Required | Multiple |
---|---|---|---|---|
Process Model | Process Model | The process model to start asynchronously | Yes | No |
Process Parameters | Dictionary | A dictionary containing the parameters for the process and their values | No | No |
The Process Parameters property is a dictionary where the keys are process parameter names and the values are parmeters' values. If any required parameters are missing or if the dictionary contains any entries that do not match parameters of the selected process model, the process will not start.
For example, if you have a process model that controls an employee review cycle, it might have a required parameter named employeeId
and optional parameters named deadline
and reasonCode
.
To successfully start this process, the Process Parameters input would look like one of the following:
1
2
3
{
employeeId: 12345
}
1
2
3
4
{
employeeId: 12345,
deadline: today()+30
}
1
2
3
4
5
{
employeeId: 12345,
deadline: today()+30,
reasonCode: "ANNUAL"
}
In the following examples, the process would not start. For the first two cases, the reason is that the required process model parameter, employeeId
, was not provided. For the third case the reason is that an entry in the Process Parameters input, supervisorId
, did not match any of the parameters of the process model.
1
2
3
{
}
1
2
3
{
deadline: today()+30
}
1
2
3
4
{
employeeId: 12345,
supervisorId: 6789
}
Output | Data Type | Description |
---|---|---|
Process Info | ProcessInfo | Contains information about the process that was started, its model, and the values of its process variables |
The Start Process smart service is available as an expression function that can be executed inside a saveInto on a Interface Component or as part of a Web API. To learn more about using this function in interfaces, see Starting Processes From an Interface.
a!startProcess( processModel, processParameters, onSuccess, onError )
Keyword | Type | Description |
---|---|---|
|
Process Model |
The process model to start asynchronously. You must provide a constant referencing the process model or a process model ID. |
|
Dictionary |
A dictionary containing the parameters for the process and their values. |
|
Any Type |
A list of saves or an HTTP response to execute after the smart service executes successfully. Created with |
|
Any Type |
A list of saves or an HTTP response to execute when the smart service does not execute successfully. Created with |
This smart service follows activity-chaining, completing only when the activity chain is complete or broken. The smart service then returns the process variables as of the completion of activity chaining through the processInfo.pv
output. This means that the Start Process smart service can be used to complete multiple smart services and retrieve the results of the smart services from within an interface or web API. This can be a very powerful tool. Nonetheless, consider the following notes when using activity-chaining in conjunction with the Start Process smart service to ensure you use the smart service properly:
Feature | Compatibility | Note |
---|---|---|
Portals | Partially compatible | Can be used with Appian Portals if it is connected using an integration and web API. |
Offline Mobile | Incompatible | |
Sync-Time Custom Record Fields | Incompatible | |
Real-Time Custom Record Fields | Incompatible | |
Process Reports | Incompatible | You cannot use this function to configure a process report. |
Process Events | Incompatible | You cannot use this function to configure a process event node, such as a start event or timer event. |
Start Process Smart Service