Never Answer Without Full Context

Someone DMs you a question, but you need to find the relevant emails first. Notis automatically searches Gmail for related messages and surfaces them, so you can respond immediately with full context.

Trigger

Direct Message Received

Triggered when a new direct message (DM) is sent to a user in Slack. Catches all DMs across all DM channels.

Gmail logo

Action

Fetch emails

Fetches a list of email messages from a gmail account, supporting filtering, pagination, and optional full content retrieval.

Why this helps

You get DMs asking about ongoing projects or decisions, but you lack context. Finding the relevant emails breaks your flow and leads to slower, less informed responses.

  • Answer Slack questions faster with full email context
  • Avoid missing critical details or past commitments
  • Reduce back-and-forth needed to get up to speed
  • Make better decisions without context-switching

Setup

Build it in a few focused steps.

  • 1Connect Slack and Gmail.
  • 2Create an automation: 'When I get a Slack DM, search Gmail for emails related to that person or topic.'
  • 3Notis will use Direct Message Received as your trigger and Fetch emails as your action.
  • 4Configure the search keywords (sender name, company, project name, etc.).
  • 5Test by having someone DM you; Notis will return matching emails in a sidebar or notification.

Questions about this workflow

How does Notis know what to search for?

By default, it searches by the DM sender's name and email. You can add keywords like 'project name' or 'client name' for smarter searches.

Will this slow down my DM notifications?

No. Notis runs the search in the background and surfaces results in your Notis panel or email.

Can I get these results in Slack instead of email?

Yes. Notis can post search results as a Slack thread reply, keeping context in one place.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

Notis builds workflows that link Slack to Gmail. A trigger fires from one place; an action lands in another.

Slack logo

Slack triggers

Gmail logo

Gmail actions

New Channel Created Trigger

Triggered when a new channel is created in Slack.

TriggerInstant

Modify email labels

Adds and/or removes specified gmail labels for a message; ensure `message id` and all `label ids` are valid (use 'listlabels' for custom label ids).

ActionInstant

Channel Message Received

Triggered when a message is posted in a Slack channel (public, private, or multi-party IM). Does NOT match direct messages.

TriggerInstant

Create email draft

Creates a gmail email draft, supporting to/cc/bcc, subject, plain/html body (ensure `is html=true` for html), attachments, and threading.

ActionInstant

Direct Message Received

Triggered when a new direct message (DM) is sent to a user in Slack. Catches all DMs across all DM channels.

TriggerInstant

Create label

Creates a new label with a unique name in the specified user's gmail account.

ActionInstant

Message Reaction Added

Triggered when a reaction is added to a message in Slack. Supports optional filtering by channel and emoji name.

TriggerInstant

Delete Draft

Permanently deletes a specific gmail draft using its id; ensure the draft exists and the user has necessary permissions for the given `user id`.

ActionInstant

Message Reaction Removed

Triggered when a reaction is removed from a message in Slack. Supports optional filtering by channel and emoji name.

TriggerInstant

Delete message

Permanently deletes a specific email message by its id from a gmail mailbox; for `user id`, use 'me' for the authenticated user or an email address to which the authenticated user has delegated access.

ActionInstant

Reaction Added Trigger

DEPRECATED: use `SLACK_MESSAGE_REACTION_ADDED` instead. Triggered when a reaction is added to a message in Slack.

TriggerInstant

Fetch emails

Fetches a list of email messages from a gmail account, supporting filtering, pagination, and optional full content retrieval.

ActionInstant

Reaction Removed Trigger

DEPRECATED: use `SLACK_MESSAGE_REACTION_REMOVED` instead. Triggered when a reaction is removed from a message.

TriggerInstant

Fetch message by message ID

Fetches a specific email message by its id, provided the `message id` exists and is accessible to the authenticated `user id`.

ActionInstant

New Bot Message Received Trigger

DEPRECATED: use `SLACK_CHANNEL_MESSAGE_RECEIVED` with `is_bot_message=true` instead. Triggered when a new bot message is posted to a Slack channel.

TriggerInstant

Fetch Message by Thread ID

Retrieves messages from a gmail thread using its `thread id`, where the thread must be accessible by the specified `user id`.

ActionInstant

Connect any two apps with Notis in the middle.

Not just Slack and Gmail. Any combination from 985+ integrations.

When this happens · Trigger

Do this · Action

Save your first hour today.

7 days free trial with 20$ free usage included.
No card. Works with personal or business Gmail.