This article describes the RPA Queue functionality to mark a queue item as failed.
For a full list of available functions, please read QUEUE functions.
Description
The Mark item as failed function marks a queue item as failed with an exception type and reason. There are two exception types:
- Application (retryable) – the item is returned to "new" status and will be retried up to the queue’s max retry limit. Use this for transient errors like network timeouts or application crashes.
- Business (permanent) – the item is permanently marked as "failed" and will not be retried. Use this for data errors like invalid invoice numbers or missing required fields.
Setting it up
To use the Mark item as failed function, follow these instructions:
{{popups:rpas/add:action=queue-fail}}
Once on a process map:
- Navigate to the process where you would like to add the function
- Click on the green button’s drop-down (right side of the green button labelled “Process”)
- On the menu that appears, click on the “+ Activity” item
- From here you can select the QUEUE Mark item as failed option
- Click "Add" once you are done
Input parameters
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
| Item ID | Yes | Text | - | The queue item ID, or a variable such as {item_id} |
| Exception type | Yes | Select | Application | Application (retryable) or Business (permanent) |
| Reason | Yes | Textarea | - | Description of why the item failed |
| Variable | Yes | Text | - | Variable to store the result |
Output variables
| Variable | Type | Description |
|---|---|---|
| Variable | Object | The updated queue item (status will be "new" if retrying, or "failed" if exhausted/business) |
Errors
- Item not in progress – only items with status "inprogress" can be failed
- Item not found – if the item ID is invalid
Tips
- Use Application exceptions for transient errors (timeouts, crashes) – these auto-retry
- Use Business exceptions for data errors (invalid data) – these fail permanently
- Set the queue’s Max retries to control how many application retries are allowed
- Use try-catch blocks around your processing logic and call this in the catch block