Files
openclaw-workspace/skills/api-gateway/references/zoho-mail.md
2026-04-11 09:45:12 -05:00

3.9 KiB

Zoho Mail Routing Reference

App name: zoho-mail Base URL proxied: mail.zoho.com

API Path Pattern

/zoho-mail/api/{resource}

Common Endpoints

Accounts

# Get all accounts
GET /zoho-mail/api/accounts

# Get account details
GET /zoho-mail/api/accounts/{accountId}

Folders

# List all folders
GET /zoho-mail/api/accounts/{accountId}/folders

# Create folder
POST /zoho-mail/api/accounts/{accountId}/folders
Content-Type: application/json

{
  "folderName": "My Folder"
}

# Rename folder
PUT /zoho-mail/api/accounts/{accountId}/folders/{folderId}
Content-Type: application/json

{
  "folderName": "Renamed Folder"
}

# Delete folder
DELETE /zoho-mail/api/accounts/{accountId}/folders/{folderId}

Labels

# List labels
GET /zoho-mail/api/accounts/{accountId}/labels

# Create label
POST /zoho-mail/api/accounts/{accountId}/labels
Content-Type: application/json

{
  "labelName": "Important"
}

# Update label
PUT /zoho-mail/api/accounts/{accountId}/labels/{labelId}

# Delete label
DELETE /zoho-mail/api/accounts/{accountId}/labels/{labelId}

Messages

# List emails in folder
GET /zoho-mail/api/accounts/{accountId}/messages/view?folderId={folderId}&limit=50

# Search emails
GET /zoho-mail/api/accounts/{accountId}/messages/search?searchKey={query}

# Get email content
GET /zoho-mail/api/accounts/{accountId}/folders/{folderId}/messages/{messageId}/content

# Get email headers
GET /zoho-mail/api/accounts/{accountId}/folders/{folderId}/messages/{messageId}/header

# Get email metadata
GET /zoho-mail/api/accounts/{accountId}/folders/{folderId}/messages/{messageId}/details

# Get original MIME message
GET /zoho-mail/api/accounts/{accountId}/messages/{messageId}/originalmessage

# Send email
POST /zoho-mail/api/accounts/{accountId}/messages
Content-Type: application/json

{
  "fromAddress": "sender@yourdomain.com",
  "toAddress": "recipient@example.com",
  "subject": "Subject",
  "content": "Email body",
  "mailFormat": "html"
}

# Reply to email
POST /zoho-mail/api/accounts/{accountId}/messages/{messageId}

# Update message (mark read, move, flag, archive, spam)
PUT /zoho-mail/api/accounts/{accountId}/updatemessage
Content-Type: application/json

{
  "messageId": ["messageId1"],
  "folderId": "folderId",
  "mode": "markAsRead"
}

# Delete email
DELETE /zoho-mail/api/accounts/{accountId}/folders/{folderId}/messages/{messageId}

Attachments

# Upload attachment
POST /zoho-mail/api/accounts/{accountId}/messages/attachments
Content-Type: multipart/form-data

# Get attachment info
GET /zoho-mail/api/accounts/{accountId}/folders/{folderId}/messages/{messageId}/attachmentinfo

# Download attachment
GET /zoho-mail/api/accounts/{accountId}/folders/{folderId}/messages/{messageId}/attachments/{attachmentId}

Update Message Modes

Mode Description
markAsRead Mark messages as read
markAsUnread Mark messages as unread
moveMessage Move messages (requires destfolderId)
flag Set flag (requires flagid: 1-4)
archive Archive messages
unArchive Unarchive messages
spam Mark as spam
notSpam Mark as not spam

Default Folders

Folder Type
Inbox Inbox
Drafts Drafts
Templates Templates
Snoozed Snoozed
Sent Sent
Spam Spam
Trash Trash
Outbox Outbox

Notes

  • Account IDs are required for most operations - get via /api/accounts
  • Message IDs and Folder IDs are numeric strings
  • The fromAddress must be associated with the authenticated account
  • Uses offset-based pagination with start and limit parameters
  • Some operations require additional OAuth scopes

Resources