Convert spreadsheet rows into Gmail drafts instantly
New sheet row? Draft an email. No copy-pasting, no context switching. Notis reads the row, writes the draft, you hit send when ready.
Trigger
New Rows in Google Sheet
Simple polling trigger that monitors Google Sheets for new rows. Detects when new rows are added and returns the complete row data. Perfect for triggering any workflow based on new sheet entries.
Action
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.
Why this helps
Manually retyping sheet data into emails kills momentum. Copy-paste errors and forgotten follow-ups leave opportunities cold.
- Turn new sheet rows into ready-to-send Gmail drafts
- Review before sending to catch tone and accuracy
- Capture context directly from structured data
- No more copy-paste into email
Setup
Build it in a few focused steps.
- 1Connect your Google Sheets and Gmail accounts to Notis (one-time setup).
- 2Open Automations and create a new workflow, or ask Notis: 'When a new row is added to my Google Sheet, create a Gmail draft with the row data.'
- 3Set the trigger to 'New Rows in Google Sheet' and pick the spreadsheet and sheet name.
- 4Choose your notification channel (Telegram, email, or Slack) to track when Notis runs.
- 5Test by adding a new row to your sheet and confirm a draft appears in Gmail ready for you to refine.
Questions about this workflow
Can Notis pick specific columns from the row?
Yes. In your plain-language instruction, tell Notis which columns to use (e.g., 'use the Name column for the email subject and the Company column in the body'). Notis will extract and format them.
What if the draft needs a custom template?
Describe your template in the automation prompt (e.g., 'start with Dear [Name], thank them for their interest in [Product]'). Notis learns your style and applies it.
Do I need to send every draft?
No. Drafts stay in Gmail until you review and send. Edit, delete, or send as-is. You stay in control.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Google Sheets to Gmail. A trigger fires from one place; an action lands in another.
Google Sheets triggers
Gmail actions
Aggregate Metric Changed
Triggers when an aggregate metric (SUM/COUNT/AVG/MIN/MAX) changes in a Google Sheets spreadsheet. This trigger monitors an aggregate calculation on a target column (optionally filtered by a search column/value) and fires when the calculated result changes.
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).
Cell Range Values Changed
Triggers when values in a specified A1 range change in Google Sheets. This trigger monitors a specific cell or range of cells and fires when any values change.
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.
Conditional Format Rule Changed
Triggers when conditional formatting rules change in a Google Spreadsheet. Detects when rules are added, updated, or removed. Uses snapshot-based diffing to detect changes between polls.
Create label
Creates a new label with a unique name in the specified user's gmail account.
Data Validation Rule Changed
Triggers when data validation rules change (added/updated/removed) in a Google Spreadsheet. Uses snapshot-based diffing to detect changes between polls.
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`.
Developer Metadata Changed
Triggers when developer metadata entries change (new/updated/removed) in a Google Spreadsheet. Uses snapshot-based diffing to detect changes between polls.
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.
Filtered Range Values Changed
Polling trigger that monitors Google Sheets filtered ranges for value changes. Uses snapshot-based diffing to detect when values matching a data filter change. Emits the matched values when changes are detected.
Fetch emails
Fetches a list of email messages from a gmail account, supporting filtering, pagination, and optional full content retrieval.
New Rows in Google Sheet
Simple polling trigger that monitors Google Sheets for new rows. Detects when new rows are added and returns the complete row data. Perfect for triggering any workflow based on new sheet entries.
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`.
New Sheet Added in Google Spreadsheet
Polling trigger that detects when a new sheet is added to a Google Spreadsheet.
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 Google Sheets 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.
