Limited offer50% off your first month: the $99 plan for $4924 hours onlySee plans
← All integrations
Gmail logo

Gmail

Send, read, and search email.

CommunicationOAuth63 endpoints

Endpoints

OperationMethod & pathEffectLatencyRateCost
GMAIL_ADD_LABEL_TO_EMAIL
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).
POST /composio/gmail/gmail_add_label_to_emailexternal_send——managed
GMAIL_BATCH_DELETE_MESSAGES
Tool to permanently delete multiple Gmail messages in bulk, bypassing Trash with no recovery possible. Use when you need to efficiently remove large numbers of emails (e.g., retention enforcement, mailbox hygiene). Use GMAIL_MOVE_TO_TRASH instead when reversibility may be needed. Always obtain explicit user confirmation and verify a sample of message IDs before executing. High-volume calls may trigger 429 rateLimitExceeded or 403 userRateLimitExceeded errors; apply exponential backoff.
POST /composio/gmail/gmail_batch_delete_messagesexternal_send——managed
GMAIL_BATCH_MODIFY_MESSAGES
Modify labels on multiple Gmail messages in one efficient API call. Supports up to 1,000 messages per request for bulk operations like archiving, marking as read/unread, or applying custom labels. High-volume calls may return 429 rateLimitExceeded or 403 userRateLimitExceeded; apply exponential backoff.
POST /composio/gmail/gmail_batch_modify_messagesexternal_send——managed
GMAIL_CREATE_EMAIL_DRAFT
Creates a Gmail email draft. While all fields are optional per the Gmail API, practical validation requires at least one of recipient_email, cc, or bcc and at least one of subject or body. Supports To/Cc/Bcc recipients, subject, plain/HTML body (ensure `is_html=True` for HTML), attachments, and threading. Returns a draft_id that must be used as-is with GMAIL_SEND_DRAFT — synthetic or stale IDs will fail. When creating a draft reply to an existing thread (thread_id provided), leave subject empty to stay in the same thread; setting a subject will create a NEW thread instead. HTTP 429 may occur on rapid creation/send sequences; apply exponential backoff.
POST /composio/gmail/gmail_create_email_draftexternal_send——managed
GMAIL_CREATE_FILTER
Tool to create a new Gmail filter with specified criteria and actions. Use when the user wants to automatically organize incoming messages based on sender, subject, size, or other criteria. Note: you can only create a maximum of 1,000 filters per account.
POST /composio/gmail/gmail_create_filterexternal_send——managed
GMAIL_CREATE_LABEL
Creates a new label with a unique name in the specified user's Gmail account. Returns a labelId (e.g., 'Label_123') required for downstream tools like GMAIL_ADD_LABEL_TO_EMAIL, GMAIL_BATCH_MODIFY_MESSAGES, and GMAIL_MODIFY_THREAD_LABELS — those tools do not accept display names.
POST /composio/gmail/gmail_create_labelexternal_send——managed
GMAIL_DELETE_DRAFT
Permanently deletes a specific Gmail draft using its ID with no recovery possible; verify the correct `draft_id` and obtain explicit user confirmation before calling. Ensure the draft exists and the user has necessary permissions for the given `user_id`.
POST /composio/gmail/gmail_delete_draftexternal_send——managed
GMAIL_DELETE_FILTER
Tool to permanently delete a Gmail filter by its ID. Use when you need to remove an existing email filtering rule.
POST /composio/gmail/gmail_delete_filterexternal_send——managed
GMAIL_DELETE_LABEL
Permanently DELETES a user-created Gmail label from the account (not from a message). WARNING: This action DELETES the label definition itself, removing it from all messages. System labels (INBOX, SENT, UNREAD, etc.) cannot be deleted. To add/remove labels from specific messages, use GMAIL_ADD_LABEL_TO_EMAIL action instead.
POST /composio/gmail/gmail_delete_labelexternal_send——managed
GMAIL_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.
POST /composio/gmail/gmail_delete_messageexternal_send——managed
GMAIL_DELETE_THREAD
Tool to immediately and permanently delete a specified thread and all its messages. This operation cannot be undone. Use threads.trash instead for reversible deletion.
POST /composio/gmail/gmail_delete_threadexternal_send——managed
GMAIL_FETCH_EMAILS
Fetches a list of email messages from a Gmail account, supporting filtering, pagination, and optional full content retrieval. Results are NOT sorted by recency; sort by internalDate client-side. The messages field may be absent or empty (valid no-results state); always null-check before accessing messageId or threadId. Null-check subject and header fields before string operations. For large result sets, prefer ids_only=true or metadata-only listing, then hydrate via GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID.
GET /composio/gmail/gmail_fetch_emailsnone——managed

Showing 12 of 63 Gmail actions. Every action is in the provider catalog, and the CLI and MCP list them with their inputs.