Automation makes it easy to set up a hierarchy wherein an approval request is first sent to the immediate supervisor or the team leader of the user placing the request. If they approve, it is sent to the manager. The department head will get the request only if the manager approves it.
If the request is rejected at any stage, the user can make the necessary changes and resubmit it without bothering all his bosses every time.

In this solution article, we’re going to see how you can use the Workflow Automator to create a multi-level approval workflow. 

Let’s assume a scenario where whenever you get a service request for an Apple Macbook, you will have to send it to the requester’s approval manager and the department head. The service request will be sent to the fulfillment team only after the approval from both managers. 

To create the workflow, 

  • Go to the Admin module, and click on Workflow Automator under Automation & Productivity
    If your account has more than one workspace: 

    To modify global workflows, navigate to Admin > Global Settings > Automation & Productivity > Automation > Workflow Automator

    To modify workspace-level workflows, navigate to Admin > Workspace Settings > {Workspace Name} > Automations & Productivity > Automation > Workflow Automator

    Important Note:

    Workspace admins can view the list of global and local workflows applicable to their workspace. 

    The global workflows execute first, followed by the workspace-level workflows, to allow for the workspace-level workflows to take precedence over the global workflow. 

    For example, A global workflow can be configured to route tickets to the right workspace based on the subject/description. 

  • Click on the New Automator drop-down and select Ticket. 

  • Set the event as Service Request is Raised.

  • Click on the Condition icon from the left sidebar, drag and place it next to the event. 

  • Set the condition as Requested items including Apple Macbook. 

  • Click on the Action icon from the left sidebar, drag and place it next to the  'Apple Macbook Requested' condition. Set the action as Send Approval Mail to Reporting Manager.

  • Now, drag and place another action next to the 'Approved' branch. This means that when the reporting manager approves the service request, the workflow will proceed to process the next action. 

  • Set the next action as Send Approval Mail to the Department Head. You can add more actions to additional stages of approval based on your requirements. 

  • Now, drag and place another action.  

  • Set the action as Assign to Group and Service Request Fulfilment team. 

  • When the department head approves the service request, it will be assigned to the fulfillment team to the delivery of the device. 

  • You can also set actions to notify the requester when the service request is rejected in any of the stages. In order to do that, drag and place an action to the 'Reject' branch of an action and choose the option Send Email to Requester. Here you will be prompted to enter the subject line and the content of the email. 

The above steps show how easy it is to set up a hierarchical approval process in Freshservice. You can use a similar approach to create approval workflows for changes. 

If your automation rules were migrated to Workflow Automator, then the hierarchical approvals as explained here will still keep functioning through Workflow Automator. The above is an enhanced and simpler way of setting up approvals


1. Is there a way to set up a workflow for approval where multiple people are involved, but only the first person to approve it is considered the final approval?

In the Admin > Workflow Automation > Action node by default, "Everyone has to approve" will be set when you configure the approval. You can customize the "To be approved by" field based on your specific use case.