Auto-digest your support inbox to Slack with Gemini
Every 10 minutes, Gemini reads new support emails, tags urgency, and posts a compact digest to your team's Slack channel.
Build an agent workflow that sweeps my support Gmail inbox every 10 minutes and posts a digest of new unread threads to a Slack channel. Use Google Gemini to summarize each email and tag it with a priority.
Trigger: cron, every 10 minutes.
On each run, use Gmail List Messages to find unread messages in the inbox that do NOT already carry a Processed label (query something like `is:unread -label:Processed`). For each matching message, use Gmail Get a Message with the full format to pull the sender, subject, thread id, and body.
For each email, call Google Gemini Generate Content with model gemini-2.5-flash. Send the subject and body and ask Gemini to produce three things: (a) a two or three sentence summary written for a busy support lead, (b) the inferred customer sentiment, and (c) a priority tag with the value urgent, normal, or low.
Then use Slack Bot Send a Message to post one compact message per email to my team's support channel. Each message should include the sender, the subject, the priority tag, the short summary, and a link back to the original Gmail thread (https://mail.google.com/mail/u/0/#inbox/<threadId>). Keep formatting tight, use Slack mrkdwn, and never include the raw email body.
After posting each email to Slack, use Gmail Modify Message Labels to add a Processed label to that message so it never gets digested twice. If the Processed label does not exist yet, create it on first run.
If a run finds no new unprocessed emails, do nothing and finish silently. Do not post empty digests to Slack.
Make the Slack channel, Gmail search query, and Processed label name easy to change up top so I can point this at different inboxes and channels later.
Additional information
What does this prompt do?
- Watches your support Gmail inbox for new unread messages every 10 minutes.
- Uses Google Gemini to write a short summary and tag each thread as urgent, normal, or low priority.
- Posts a compact digest to your team's Slack channel with sender, subject, priority, summary, and a link back to the original email.
- Applies a Processed label in Gmail after posting so the same thread never shows up in Slack twice.
What do I need to use this?
- A Gmail login that can see your support inbox.
- A Google Gemini API key from Google AI Studio.
- A Slack workspace and the channel you want the digest posted in.
How can I customize it?
- Change how often it sweeps: every 5 minutes, hourly, or only during business hours.
- Point it at a different inbox filter, like a specific Gmail label, sender, or search query.
- Route urgent items to a separate escalation channel or an on-call DM instead of the shared channel.
Frequently asked questions
How often does the digest run?
Will the same email show up in Slack twice?
Can I filter which emails get picked up?
Does the full email body get posted in Slack?
Which Gemini model does it use?
Related templates
Stop asking your team to babysit the support inbox.
Connect Gmail, Gemini, and Slack once. Geni sweeps for new tickets every 10 minutes so your team only opens what matters.