I have a web API which expects post request and provides the response after completing few important nodes and other actions are configured Asynchronously . Asynchronous process involves copy document, send data to second external system which are wrapped as multiple subprocesses. Now let's say if any of these asych process fails and I notify the first external system along with process ID, is there a way possible to retrigger the appian broken instance again (ignore the failure reason)? if not can I restart from the broken node itself? does appian provide this capability?
(Plugins: Get Processes By Node Status and process-management-services doesn't seem to be working as expected for my case)
Discussion posts and replies are publicly visible
In Appian, you cannot restart a failed process instance or resume from a specific node once it has errored or completed.Instead, the recommended approach is to design retry logic—store the required data and trigger a new process or subprocess to re-run only the failed steps.To make this safe, ensure your integrations are idempotent and state is tracked, so retries don’t cause duplicate or inconsistent results.
No you can't. And this is no technical limitation, but a logical. Something that break in the middle of multiple steps is in an unknown state. You will either have to make the support team fix that process manually, or design a error handling process.
Appian does not directly provide an option to restart a failed process instance from the exact broken node. The better approach is to design exception handling with retry logic or create a separate recovery process that uses the Process ID to re-run the failed asynchronous subprocess or integration. In short, this is usually managed through process design rather than manual restart from the failed step.
No. Does not support programmatically resuming a failed process instance from the broken node.Only option natively: Manual retry via Process Monitor.Practical workaround: Store async subprocess inputs in a DB -> on failure, expose a retry endpoint that re-invokes only the failed subprocess using stored inputs.