Gmail Toolkit
The Gmail Toolkit is a workflow node. Its tools include Send Email, Search Emails, Get Email, and Get Thread, plus 5 more listed below. Connect a Gmail account before you use any of these tools. Type @ in a field when the value should come from an earlier step.
Authenticationβ
Every Gmail tool needs a connected account before it can run. On the node, open Gmail Account.
- Choose Use my Gmail account or Use team account.
- If no personal account is connected, click Connect Gmail Account and finish sign-in.
- For a team account, choose Use team account and pick one from Team account. The list shows accounts already connected for the project.
Toolsβ
Send Emailβ
Sends email.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
| To | Yes | Recipient email address. Type @ to select a variable. |
| Subject | Yes | Email subject line. Type @ to select a variable. |
| Body | Yes | Email body content. Type @ to select a variable. |
| Cc | No | CC email addresses (comma-separated). Default is null. Type @ to select a variable. |
| Bcc | No | BCC email addresses (comma-separated). Default is null. Type @ to select a variable. |
| Body Type | No | Email body type: 'plain' or 'html'. Default is plain. Type @ to select a variable. |
| Attachments | No | File attachments (array). Supported formats per item: (1) Base64: {"base64": "<data>", "filename": "file.pdf"} β raw base64-encoded file; (2) Data URL: {"base64": "data:application/pdf;base64,...", "filename": "file.pdf"} β data URL prefix is auto-stripped; (3) Content field: {"content": "<base64_data>", "filename": "file.pdf"} β alternative key for base64; (4) KB file object: {"content_key": "...", "document_id": "...", "name": "..."} β fetches binary from Supabase storage; (5) Trigger file reference: use {{ trigger.inputs.file_1 }} to pass uploaded file objects directly; (6) Bare document_id string: "project_id/filename.pdf" β auto-wrapped into a KB lookup. Multiple attachments are supported. Default is []. |
Search Emailsβ
Searches emails.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
| Query | No | Optional. Gmail search operators (e.g. from:, subject:, is:unread). Leave empty to fetch recent messages with no search filterβup to max_results per request (not your entire mailbox; use pagination for more). Default is ``. Type @ to select a variable. |
| Max Results | No | Maximum number of emails to return per page (max 100). Default is 10. |
| Include Attachments | No | Whether to fetch attachment metadata (filename, size, type). Does not include binary data by default to avoid context overflow. Default is false. |
| Include Attachment Data | No | Whether to include full binary attachment data (base64). Only use in workflows, not with AI agents. Default is false. |
| Mark As Read | No | If True, mark the retrieved emails as read by removing UNREAD label. Requires gmail.modify OAuth scope. Default is false. |
| Page Token | No | Token for the next page of results from next_page_token in a previous search_emails response (Gmail cursor pagination). Default is null. Type @ to select a variable. |
Get Emailβ
Retrieves email.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
| Message ID | Yes | Gmail message ID. Type @ to select a variable. |
| Format | No | Message format: 'minimal', 'full', 'raw', 'metadata'. Default is full. Type @ to select a variable. |
Get Threadβ
Retrieves thread.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
| Thread ID | Yes | Gmail thread ID (same as the first message ID in the thread). Type @ to select a variable. |
| Format | No | Message format: 'minimal', 'full', 'raw', 'metadata'. Default is full. Type @ to select a variable. |
Create Draftβ
Creates draft.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
| To | Yes | Recipient email address. Type @ to select a variable. |
| Subject | Yes | Email subject line. Type @ to select a variable. |
| Body | Yes | Email body content. Type @ to select a variable. |
| Cc | No | CC email addresses (comma-separated). Default is null. Type @ to select a variable. |
| Bcc | No | BCC email addresses (comma-separated). Default is null. Type @ to select a variable. |
| Body Type | No | Email body type: 'plain' or 'html'. Default is plain. Type @ to select a variable. |
Reply To Emailβ
Runs the reply to email tool.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
| Message ID | Yes | ID of the message to reply to. Type @ to select a variable. |
| Body | Yes | Reply body content. Type @ to select a variable. |
| Body Type | No | Email body type: 'plain' or 'html'. Default is plain. Type @ to select a variable. |
| Reply All | No | Whether to reply to all recipients. Default is false. |
Create Labelβ
Creates label.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
| Label Name | Yes | Name of the label to create. Type @ to select a variable. |
Assign Label To Emailβ
Runs the assign label to email tool.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
| Message ID | Yes | Gmail message ID to assign labels to. Type @ to select a variable. |
| Label Ids | Yes | List of label IDs to assign to the email (array of strings). Type @ to select a variable. |
Get All Labelsβ
Retrieves all labels.
| Field | Required | Description |
|---|---|---|
| Gmail Account | Yes | Select your personal or team Gmail account. |
Relatedβ
Agents can use this integration from chat. See Gmail.
See all integrations on the toolkits overview.