Find a contact in Gmail when a new Notion row appears
Add a person to your Notion CRM and Notis searches your Gmail contacts for a match, reporting their email and details back to you, so you never open a new row wondering how to actually reach them.
Trigger
New Page
Triggers when a new page is added to a Notion database.
Action
Search People
Searches contacts by matching the query against names, nicknames, emails, phone numbers, and organizations, optionally including 'other contacts'.
Why this helps
You log a new contact in Notion but still have to dig through Gmail to find their real email and history, and that dig is where the follow-up dies.
- New CRM rows come with the contact's real email already found
- No digging through Gmail to reach someone you just logged
- Follow-up starts with details in hand instead of a search
Setup
Build it in a few focused steps.
- 1Connect Notion and Gmail to Notis once from the portal.
- 2Create a new automation named New Notion contact lookup.
- 3Write the prompt: when a new contact is added to my Notion CRM, search my Gmail contacts for them and report the match.
- 4Choose the New Page in a database trigger and pick a run-report channel.
- 5Add a test contact and confirm Notis reports the Gmail match.
Questions about this workflow
Where does the result go?
Notis reports the match in the channel you selected, so you get the details wherever you already work.
What if there is no match?
Notis tells you it found nothing, so you know to add the contact rather than assuming a lookup succeeded.
Does it change my Notion row?
This workflow finds and reports the contact. You can extend it later to write details back if you want.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Notion to Gmail. A trigger fires from one place; an action lands in another.
Notion triggers
Gmail actions
All Page Events
Triggers when any Notion page is created or updated across the workspace.
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).
Comment Created
Triggers when a new comment is created in Notion. Optional `page_id` filter scopes to comments on a specific page. When omitted, fires for any new comment in the workspace the integration has access to. Requires the 'Read comments' capability on the Notion integration. If a connection was authorized before that capability was enabled, the user must re-authorize the connection for comment events to flow.
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.
New Comment
Triggers when a new comment is added to a specified Notion block or page.
Create label
Creates a new label with a unique name in the specified user's gmail account.
Database Created
Triggers when a new Notion database (the container) is created. A database is the post-2025-09-03 container that holds one or more data sources. This trigger fires for the container's creation event (`database.created`), distinct from `NOTION_DATASOURCE_CREATED` which fires when a new data source is added to an existing database. Most customers calling Notion's `POST /v1/databases` (the legacy API) or creating a database via the Notion UI will see this event. Adding a new data source to an existing database fires `data_source.created` instead — use `NOTION_DATASOURCE_CREATED` for that. Notion's payload puts `entity.type: "block"` (the container is a `child_database` block in the content tree) and `entity.id` is the database id.
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`.
Data Source Created
Triggers when a new Notion data source is created. Fires workspace-wide. The payload's `data.parent` carries the data source's tree parent (typically the teamspace) for downstream filtering. A single template-based database creation can fire multiple `data_source.created` events at once — one per data source the template instantiates.
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.
Data Source Schema Updated
Triggers when a Notion data source's schema is updated. Fires on column add / remove / rename. Payload includes `data.updated_properties: [{id, name, action}]` so consumers can discriminate the kind of change downstream. Optional `data_source_id` filter scopes to schema changes on a single data source. When omitted, fires for any schema change in the workspace the integration has access to. Note: adding a column also fires `page.properties_updated` once per existing row in the data source. Customers wanting a single structural-change signal should use this trigger.
Fetch emails
Fetches a list of email messages from a gmail account, supporting filtering, pagination, and optional full content retrieval.
New Page
Triggers when a new page is added to a Notion database.
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`.
Page Added to Page
Fires when a new subpage (a `child_page` type block) is added under a specified parent Notion page.
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`.
Connect any two apps with Notis in the middle.
Not just Notion and Gmail. Any combination from 1,000+ 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.