Error changing the order of actions in a Quick Action
@hamza221 is already working on this.
Since Jul 21, 2026.
- Dominant language
- JavaScript
- Stars
- 1k
- Forks
- 348
- Avg merge
- 12h 28m
- Merged PRs (30d)
- 91
Description
Steps to reproduce
- create a new Quick Action
- add an action of type "Move Thread" selecting any folder as destination
- save the Quick Action
- go to edit the previously created Quick Action
- add an action of type "Tag" selecting any tag
- save again the Quick Action
Expected behavior
The Quick Action is saved, and configured to perform the addition of a tag and the move to a different folder.
Actual behavior
At the second save, nothing happens in frontend.
Server returns the following payload:
{
"status": "error",
"message": "Cant perform actions after moveThread",
"data": {
"debug": true,
"type": "OCA\\Mail\\Exception\\ServiceException",
"message": "Cant perform actions after moveThread",
"code": 0,
"trace": [
{
"file": "\/path\/of\/nextcloud\/apps\/mail\/lib\/Service\/QuickActionsService.php",
"line": 102,
"function": "validateActionStep",
"class": "OCA\\Mail\\Service\\QuickActionsService"
},
{
"file": "\/path\/of\/nextcloud\/apps\/mail\/lib\/Controller\/ActionStepController.php",
"line": 57,
"function": "createActionStep",
"class": "OCA\\Mail\\Service\\QuickActionsService"
},
{
"file": "\/path\/of\/nextcloud\/lib\/private\/AppFramework\/Http\/Dispatcher.php",
"line": 165,
"function": "create",
"class": "OCA\\Mail\\Controller\\ActionStepController"
},
{
"file": "\/path\/of\/nextcloud\/lib\/private\/AppFramework\/Http\/Dispatcher.php",
"line": 78,
"function": "executeController",
"class": "OC\\AppFramework\\Http\\Dispatcher"
},
{
"file": "\/path\/of\/nextcloud\/lib\/private\/AppFramework\/App.php",
"line": 137,
"function": "dispatch",
"class": "OC\\AppFramework\\Http\\Dispatcher"
},
{
"file": "\/path\/of\/nextcloud\/lib\/private\/Route\/Router.php",
"line": 324,
"function": "main",
"class": "OC\\AppFramework\\App"
},
{
"file": "\/path\/of\/nextcloud\/lib\/base.php",
"line": 1159,
"function": "match",
"class": "OC\\Route\\Router"
},
{
"file": "\/path\/of\/nextcloud\/index.php",
"line": 25,
"function": "handleRequest",
"class": "OC"
}
],
"previous": null
},
"code": 0
}
Reloading the web page and opening again the edited Quick Action, actions list is empty: previously configured actions are lost.
Mail app version
5.10
Nextcloud version
No response
Mailserver or service
No response
Operating system
No response
PHP engine version
No response
Nextcloud memory caching
No response
Web server
No response
Database
No response
Additional info
My guess is that Quick Action contents should be saved in a single step, as calling "/apps/mail/api/action-step" individually for all single actions do not provide context and do not permits proper server-side validation.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.