146 lines
3.6 KiB
Markdown
146 lines
3.6 KiB
Markdown
# Gmail Routing Reference
|
|
|
|
**App name:** `google-mail`
|
|
**Base URL proxied:** `gmail.googleapis.com`
|
|
|
|
## API Path Pattern
|
|
|
|
```
|
|
/google-mail/gmail/v1/users/me/{endpoint}
|
|
```
|
|
|
|
## Common Endpoints
|
|
|
|
### List Messages
|
|
```bash
|
|
GET /google-mail/gmail/v1/users/me/messages?maxResults=10
|
|
```
|
|
|
|
With query filter:
|
|
```bash
|
|
GET /google-mail/gmail/v1/users/me/messages?q=is:unread&maxResults=10
|
|
```
|
|
|
|
### Get Message
|
|
```bash
|
|
GET /google-mail/gmail/v1/users/me/messages/{messageId}
|
|
```
|
|
|
|
With metadata only:
|
|
```bash
|
|
GET /google-mail/gmail/v1/users/me/messages/{messageId}?format=metadata&metadataHeaders=From&metadataHeaders=Subject&metadataHeaders=Date
|
|
```
|
|
|
|
### Send Message
|
|
```bash
|
|
POST /google-mail/gmail/v1/users/me/messages/send
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"raw": "BASE64_ENCODED_EMAIL"
|
|
}
|
|
```
|
|
|
|
### List Labels
|
|
```bash
|
|
GET /google-mail/gmail/v1/users/me/labels
|
|
```
|
|
|
|
### List Threads
|
|
```bash
|
|
GET /google-mail/gmail/v1/users/me/threads?maxResults=10
|
|
```
|
|
|
|
### Get Thread
|
|
```bash
|
|
GET /google-mail/gmail/v1/users/me/threads/{threadId}
|
|
```
|
|
|
|
### Modify Message Labels
|
|
```bash
|
|
POST /google-mail/gmail/v1/users/me/messages/{messageId}/modify
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"addLabelIds": ["STARRED"],
|
|
"removeLabelIds": ["UNREAD"]
|
|
}
|
|
```
|
|
|
|
### Trash Message
|
|
```bash
|
|
POST /google-mail/gmail/v1/users/me/messages/{messageId}/trash
|
|
```
|
|
|
|
### Create Draft
|
|
```bash
|
|
POST /google-mail/gmail/v1/users/me/drafts
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"message": {
|
|
"raw": "BASE64URL_ENCODED_EMAIL"
|
|
}
|
|
}
|
|
```
|
|
|
|
### Update Draft
|
|
```bash
|
|
PUT /google-mail/gmail/v1/users/me/drafts/{draftId}
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"message": {
|
|
"raw": "BASE64URL_ENCODED_EMAIL"
|
|
}
|
|
}
|
|
```
|
|
|
|
### Send Draft
|
|
```bash
|
|
POST /google-mail/gmail/v1/users/me/drafts/send
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"id": "{draftId}"
|
|
}
|
|
```
|
|
|
|
### Get Profile
|
|
```bash
|
|
GET /google-mail/gmail/v1/users/me/profile
|
|
```
|
|
|
|
## Query Operators
|
|
|
|
Use in the `q` parameter:
|
|
- `is:unread` - Unread messages
|
|
- `is:starred` - Starred messages
|
|
- `from:email@example.com` - From specific sender
|
|
- `to:email@example.com` - To specific recipient
|
|
- `subject:keyword` - Subject contains keyword
|
|
- `after:2024/01/01` - After date
|
|
- `before:2024/12/31` - Before date
|
|
- `has:attachment` - Has attachments
|
|
|
|
## Notes
|
|
|
|
- Authentication is automatic - the router injects the OAuth token
|
|
- Use `me` as userId for the authenticated user
|
|
- Message body is base64url encoded in the `raw` field
|
|
|
|
## Resources
|
|
|
|
- [API Overview](https://developers.google.com/gmail/api/reference/rest)
|
|
- [List Messages](https://developers.google.com/gmail/api/reference/rest/v1/users.messages/list)
|
|
- [Get Message](https://developers.google.com/gmail/api/reference/rest/v1/users.messages/get)
|
|
- [Send Message](https://developers.google.com/gmail/api/reference/rest/v1/users.messages/send)
|
|
- [Modify Message Labels](https://developers.google.com/gmail/api/reference/rest/v1/users.messages/modify)
|
|
- [Trash Message](https://developers.google.com/gmail/api/reference/rest/v1/users.messages/trash)
|
|
- [List Threads](https://developers.google.com/gmail/api/reference/rest/v1/users.threads/list)
|
|
- [Get Thread](https://developers.google.com/gmail/api/reference/rest/v1/users.threads/get)
|
|
- [List Labels](https://developers.google.com/gmail/api/reference/rest/v1/users.labels/list)
|
|
- [Create Draft](https://developers.google.com/gmail/api/reference/rest/v1/users.drafts/create)
|
|
- [Update Draft](https://developers.google.com/gmail/api/reference/rest/v1/users.drafts/update)
|
|
- [Send Draft](https://developers.google.com/gmail/api/reference/rest/v1/users.drafts/send)
|
|
- [Get Profile](https://developers.google.com/gmail/api/reference/rest/v1/users/getProfile) |