Find Emails in Gmail that are Awaiting a Reply

F
Published in: Gmail - Google Apps Script

This Google Script scans the Sent Items folder of your Gmail mailbox and creates a list of messages that are still awaiting a reply from the recipient.

It looks at the sender’s address of the last message in a Gmail thread that is older than 7 days and, if it is different from the email address of the user running the Google Script, logs that message.

/* Credit: https://gist.github.com/cjbarber */
function label_waiting_for_reply() {

  // Get the gmail address of the current user
  var emailAddress = Session.getEffectiveUser().getEmail();

  var EMAIL_REGEX = /[a-zA-Z0-9\._\-]+@[a-zA-Z0-9\.\-]+\.[a-z\.A-Z]+/g;

  // Check if the Gmail label exists, else create it
  var label = GmailApp.getUserLabelByName("[Waiting For]") ?
        GmailApp.getUserLabelByName("[Waiting For]") : GmailApp.createLabel("[Waiting For]");

  // Find Gmail Sent Items that are older than a week
  var d = new Date();
  d.setDate(d.getDate() - 7);
  var dateString = d.getFullYear() + "/" + (d.getMonth() + 1) + "/" + d.getDate();
  threads = GmailApp.search("in:sent after:" + dateString);

  for (var i = 0; i < threads.length; i++)
  {
    var thread = threads[i];
    // Find the senders email address of the last message in the Gmail thread
    var lastMessage = thread.getMessages()[thread.getMessageCount()-1];
    lastMessageSender = lastMessage.getFrom().match(EMAIL_REGEX)[0];

    // If the sender's email address is the same as the user, reply not received
    if (lastMessageSender == emailAddress && thread.getMessageCount() == 1)
    {
      thread.addLabel(label);
      Logger.log(lastMessageSender);
    }
  }
}

// Publish this Google Script as a web app
function doGet(e) {
  label_waiting_for_reply();
}
Published in: Gmail - Google Apps Script

Looking for something? Find here!

Meet the Author

Web Geek, Tech Columnist
A
Amit Agarwal

Amit Agarwal is a Google Developer Expert in GSuite and Google Apps Script. He holds an engineering degree in Computer Science (I.I.T.) and is the first professional blogger in India. Read more on Lifehacker and YourStory

Get in touch