Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Send Reminder Email after 7 Days if Approval Is Still Pending

MONISHRAM PANDI
Tera Contributor

I have to send Reminder notification Email after 7 days if Approval is pending. 

2 ACCEPTED SOLUTIONS

debendudas
Mega Sage
Mega Sage

Hi @MONISHRAM PANDI ,

You can implement reminder notifications for pending approvals in ServiceNow in different ways. Below are two effective methods to achieve this functionality.

 

Method 1: Modify the existing Flow Designer

If you are using Flow Designer to send the approval request, you can modify the flow directly.

  • Add Wait for Condition: Insert a "Wait for Condition" action set to 7 days.
  • Check Approval Status: After the waiting period, evaluate the status of the approval request.
  • Send Reminder Email: Based on the approval status, trigger a reminder email to the relevant parties.

Method 2: Using Scheduled Jobs

  • Create a Scheduled Job: Create a scheduled job that runs daily.
  • Check Open Approval Requests: The job should query the current open approval requests and their corresponding dates.
  • Send Reminder Emails: Utilize events and notifications to send reminder emails as necessary.

 

If this solution helps you then, mark it as accepted solution ‌‌✔️ and give thumbs up 👍

View solution in original post

Deepak Shaerma
Kilo Sage
Kilo Sage

Hi @MONISHRAM PANDI 

 

There are two methods: 

1: Using Flow Designer (Low code)

2: Using Scheduled Job

 

I am currently sharing the Flow Designer approach for best practice, if you need specific schedule job method, then please reply

 

 

​1. Flow Designer (Recommended for modern instances)

​Flow Designer is the preferred method as it's more visual and requires less code.

​A. Set up the Flow Trigger

​Create a New Flow in Flow Designer.

​Trigger: Set the trigger to Scheduled.

​Run: Daily

​Time: Set a specific time (e.g., 8:00 AM).

​B. Find the Pending Approvals (Lookup Records)

​Action: Add a Look Up Records action.

​Table: sysapproval_approver (Approvers)

​Conditions:

​State is Requested

​Created on on or before javascript:gs.daysAgo(7) (This finds all approvals requested 7 days ago or longer).

​Optional: You might want to add a check to ensure the record hasn't been reminded recently (e.g., if you added a custom u_last_reminder_date field).

​C. Process Each Approval (For Each)

​Flow Logic: Add a For Each loop to iterate through the records found in the previous step.

​D. Send the Reminder (Send Notification)

​Action: Inside the loop, add a Send Notification action.

​Notification: Select or create a Notification record.

​Record: Pass the current approval record from the loop.

​Recipient: Set the recipient to the Approver field from the current approval record.

 

Happy to help! If this resolved your issue, kindly mark it as the correct answer and Helpful and close the thread 🔒 so others can benefit too.

Warm Regards,

Deepak Sharma

Community Rising Star 2025

View solution in original post

4 REPLIES 4

debendudas
Mega Sage
Mega Sage

Hi @MONISHRAM PANDI ,

You can implement reminder notifications for pending approvals in ServiceNow in different ways. Below are two effective methods to achieve this functionality.

 

Method 1: Modify the existing Flow Designer

If you are using Flow Designer to send the approval request, you can modify the flow directly.

  • Add Wait for Condition: Insert a "Wait for Condition" action set to 7 days.
  • Check Approval Status: After the waiting period, evaluate the status of the approval request.
  • Send Reminder Email: Based on the approval status, trigger a reminder email to the relevant parties.

Method 2: Using Scheduled Jobs

  • Create a Scheduled Job: Create a scheduled job that runs daily.
  • Check Open Approval Requests: The job should query the current open approval requests and their corresponding dates.
  • Send Reminder Emails: Utilize events and notifications to send reminder emails as necessary.

 

If this solution helps you then, mark it as accepted solution ‌‌✔️ and give thumbs up 👍

Deepak Shaerma
Kilo Sage
Kilo Sage

Hi @MONISHRAM PANDI 

 

There are two methods: 

1: Using Flow Designer (Low code)

2: Using Scheduled Job

 

I am currently sharing the Flow Designer approach for best practice, if you need specific schedule job method, then please reply

 

 

​1. Flow Designer (Recommended for modern instances)

​Flow Designer is the preferred method as it's more visual and requires less code.

​A. Set up the Flow Trigger

​Create a New Flow in Flow Designer.

​Trigger: Set the trigger to Scheduled.

​Run: Daily

​Time: Set a specific time (e.g., 8:00 AM).

​B. Find the Pending Approvals (Lookup Records)

​Action: Add a Look Up Records action.

​Table: sysapproval_approver (Approvers)

​Conditions:

​State is Requested

​Created on on or before javascript:gs.daysAgo(7) (This finds all approvals requested 7 days ago or longer).

​Optional: You might want to add a check to ensure the record hasn't been reminded recently (e.g., if you added a custom u_last_reminder_date field).

​C. Process Each Approval (For Each)

​Flow Logic: Add a For Each loop to iterate through the records found in the previous step.

​D. Send the Reminder (Send Notification)

​Action: Inside the loop, add a Send Notification action.

​Notification: Select or create a Notification record.

​Record: Pass the current approval record from the loop.

​Recipient: Set the recipient to the Approver field from the current approval record.

 

Happy to help! If this resolved your issue, kindly mark it as the correct answer and Helpful and close the thread 🔒 so others can benefit too.

Warm Regards,

Deepak Sharma

Community Rising Star 2025

Sarthak Kashyap
Mega Sage

Hi @MONISHRAM PANDI ,

 

You can configure this in 2 ways.

 

1. With your flow

Check for the condition of where approval is happen.

If this is still pending for last 7 days, you can send the email notification to specific users.

 

2. You can create schedule job, which runs daily and add below script 

var gr = new GlideRecord('sysapproval_approver');
gr.addQuery('state', 'requested');
gr.addQuery('sys_created_on', '<=', gs.beginningOfLast7Days());
gr.query();

while (gr.next()) {
    gs.eventQueue('approval.reminder.email', gr, gr.approver.toString(), '');
}

Modify script as per your requirment.

 

Please mark my answer correct and helpful if this works for you

Thanks and Regards,

Sarthak

 

Uncle Rob
Kilo Patron

What have you tried?