You can easily publish important email messages coming into your Gmail to a Slack channel using Google Apps Script. Your Slack channel has a Webhook URL and you can send a POST HTTP request to this URL with the email message in JSON format as the payload parameter.
You can archive the message, or apply a specific Gmail label, to prevent duplicate posts in Slack for the same message. Credit: @matsuyoro
var postUrl = "https://hooks.slack.com/services/xxxxxxxxxxxxxxxx"; var postChannel = "#labnol"; function postGmailToSlack() { var threads = GmailApp.getInboxThreads(); for(var m in threads) { sendHttpPost(threads[m].getFirstMessageSubject() + " link:" + threads[m].getPermalink(), "GMAIL"); } } function sendHttpPost(message, username) { var jsonData = { "channel" : postChannel, "username" : username, "text" : message }; var payload = JSON.stringify(jsonData); var options = { "method" : "post", "contentType" : "application/json", "payload" : payload }; UrlFetchApp.fetch(postUrl, options); }