Blink Gmail
Access the user's Gmail inbox. Provider key: google_gmail or composio_gmail (check blink connector status for the exact key).
Base URL: https://gmail.googleapis.com/gmail/v1/ — endpoints below are relative to this.
List messages (inbox)
blink connector exec google_gmail /users/me/messages GET \
'{"labelIds": "INBOX", "maxResults": 20}'
Search messages
blink connector exec google_gmail /users/me/messages GET \
'{"q": "from:boss@company.com is:unread", "maxResults": 10}'
Get full message content
blink connector exec google_gmail /users/me/messages/MESSAGE_ID GET \
'{"format": "full"}'
Send an email
blink connector exec google_gmail /users/me/messages/send POST '{
"raw": "'$(echo -e "To: recipient@example.com\r\nSubject: Hello\r\nContent-Type: text/plain\r\n\r\nHello from your agent!" | base64 -w 0 | tr '+/' '-_' | tr -d '=')'"
}'
List labels
blink connector exec google_gmail /users/me/labels GET
Modify message labels (mark as read)
blink connector exec google_gmail /users/me/messages/MESSAGE_ID/modify POST '{
"removeLabelIds": ["UNREAD"]
}'
Move to trash
blink connector exec google_gmail /users/me/messages/MESSAGE_ID/trash POST '{}'
List threads
blink connector exec google_gmail /users/me/threads GET \
'{"labelIds": "INBOX", "maxResults": 10}'
Get a thread
blink connector exec google_gmail /users/me/threads/THREAD_ID GET
Common use cases
- "Check my unread emails" → list messages with
q: "is:unread"filter - "What emails did I get from Sarah today?" → search
from:sarah@... after:today - "Send John a meeting confirmation" → compose and send email
- "Mark all emails from newsletter as read" → list + modify each
- "What's the latest update on project X?" → search for "project X" in inbox
- "Archive old emails" → modify labels to remove INBOX