The Myndbend Process Manager action resend-approval-request automatically resends an approval request to specified approvers, based on trigger and message conditions. This action is useful if you want to re-request approval from your approvers when key data in the ticket changes.
How do I use this action?
Create a Zendesk trigger with conditions that match the moment when you want to resend the approval request to the approver.
Then set the action in MPM. For the action, select Notify Webhook - MPM Webhook. You will be presented with the option to paste in the message that will be sent to our servers.
The message for this action is:
{
"action": "resend-approval-request",
"data": ...
}
What data is expected in the message?
This webhook action is powerfully versatile and advanced, since it allows you to conditionally resend approval requests to your approvers using conditions you can define in the message (for example, "send a reminder email to all approvers who have not yet signed off on an upcoming release.)
{
"action": "resend-approval-request",
"data": {
"conditions": {
"all": [
[
"id|email|groupId|approvalStatus|tags",
"all|any|none",
[
"value1",
"value2"
]
]
],
"any": [
[
"id|email|groupId|approvalStatus|tags",
"all|any|none",
[
"value1",
"value2"
]
]
]
}
}
}
There is a lot here, so let's unpack it:
First, just like Zendesk's Triggers, all conditions are broken down into two main groups:
- all - All conditions in this group have to be met
- any - At least one of the conditions in this group have to be met
You don't have to use both groups. You can use just all if needed.
Each condition of the group has 3 parameters:
- Fields
- Operators
- Values
Specified Field needs to satisfy Operation with its Values.
For example, if we defined:
- Field = tags
- Operation = all
- Values = ["sales"]
This means that all of the specified tags need to be present on the user's profile (values specified - sales).
Possible options for field:
id
- match by User's IDemail
- match by User's EmailgroupId
- match by group ID User belongs toapprovalStatus
- match by User's current approval status (allowed:approved
,denied
,pending
)tags
- match by User's tags
Possible options for Operation:
all
- all values should matchany
- at least one should matchnone
- none of the values should match
Values in the Values must be provided in an array, like so:
["value1", "value2"]
Keep in mind that values are using strict comparison, so if you want to match a number (User ID), quotes are not needed:
[123123, 321321]
Using these types of conditions, you can create complex conditions under which you might want to resend the approval request.
For example, the recipe for resending approval request to a user with the ID 123123, once he approves is:
{
"action": "resend-approval-request",
"data": {
"conditions": {
"all": [
[
"id",
"any",
[
123123
]
],
[
"approvalStatus",
"any",
[
"approved"
]
]
]
}
}
}
Once conditions are met, approval requests will be re-sent to the specified user. If they have already approved/declined, the status will go back to approval pending.