All Projects → johnagan → gmail-labeler

johnagan / gmail-labeler

Licence: MIT license
Label and filter Gmail threads using basic RegEx against the email body or headers.

Programming Languages

javascript
184084 projects - #8 most used programming language

Gmail Labeler

Label and filter Gmail threads using basic RegEx against the email body or headers.

Configuration

Filters Options

var filters = [
  // star emails deliveredto user@domain.com
  { name: 'user emails', match: /deliveredto:[email protected]/, star: true },
  
  // organize by list name
  { match: /(?:List-ID:\s(.+?)\s<)/, archive: true },

  // label all emails with "bank" in the subject as "finance" and mark as read
  { name: 'finance', subject: 'bank', markRead: true },
];
  • name - The label name to apply when matched. This can also be nested by adding slashes folder/name. If no name is set, it will use the first RegEx selector result (.+?)
  • match - The RegEx to match against. This searches the entire raw contents of the email, including the header. Include a RegEx selector to return dynamic label names (.+?)
  • subject - Helper to search the subject for text
  • archive - true/false to archive the matching emails
  • star - true/false to star the matching emails
  • markRead - true/false to mark the matching emails as read

From

var from = [
  "from:[email protected]",
  "list:subscription.domain.com"
];

This can be any combination of Gmail filters to apply the labels against.

Installation

You'll need to enable Google App Scripts in your Google Drive account

Create a new Google App Script

Paste the labeler.gs contents into the new file and Save

After savings, create a new trigger

Run the labeler function every minute

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].