Email — Send & Manage

Send new emails, reply to and forward existing messages, delete emails, and modify properties like read status and labels.

POST/api/access/email/messages/sendBearer Token

Send Email

Sends a new email from one of the connected provider accounts.

Request Body

FieldTypeRequiredDescription
toParticipant[]YesList of recipients
ccParticipant[]NoCC recipients
bccParticipant[]NoBCC recipients
subjectstringYesEmail subject
bodystringYesEmail body content
bodyTypestringNoBody content type: html (default) or text
importancestringNoPriority: low, normal (default), high
connectionIdlongNoProvider connection to send from. If omitted, uses the first active email-capable connection
{
"to": [
{ "email": "recipient@example.com", "name": "John Doe" }
],
"cc": [
{ "email": "cc@example.com", "name": "CC Person" }
],
"subject": "Meeting Follow-up",
"body": "<p>Thanks for meeting today. Here are the action items...</p>",
"bodyType": "html",
"importance": "normal"
}

Note

Gmail returns the sent message's emailId and threadId. Microsoft 365 returns null for both (Graph API's sendMail endpoint returns 202 Accepted with no message ID). Use connectionId to specify which provider account sends the email when the token has access to multiple providers.

Error Responses

StatusDescription
403Token does not allow sending emails
POST/api/access/email/messages/{emailId}/replyBearer Token

Reply to Email

Replies to an existing email. Automatically threads the reply with the original message.

Path Parameters

ParameterTypeDescription
emailIdstringProvider-prefixed email ID to reply to

Request Body

FieldTypeRequiredDescription
bodystringYesReply body content
bodyTypestringNoBody content type: html (default) or text
replyAllboolNoReply to all recipients (default: false)
{
"body": "<p>Thanks, I'll review this and get back to you.</p>",
"bodyType": "html",
"replyAll": false
}

Note

Gmail automatically threads the reply using In-Reply-To and References headers. The Re: prefix is added if not present. When replyAll is true, the original To/Cc recipients are included (excluding the sending account). Microsoft 365 uses the native /reply or /replyAll Graph API endpoint.

Error Responses

StatusDescription
403Token does not allow replying to emails
POST/api/access/email/messages/{emailId}/forwardBearer Token

Forward Email

Forwards an email to specified recipients.

Path Parameters

ParameterTypeDescription
emailIdstringProvider-prefixed email ID to forward

Request Body

FieldTypeRequiredDescription
toParticipant[]YesForward recipients
ccParticipant[]NoCC recipients
bodystringNoOptional message to prepend
bodyTypestringNoBody content type: html (default) or text
{
"to": [
{ "email": "colleague@example.com", "name": "Colleague" }
],
"body": "FYI see the email below."
}

Error Responses

StatusDescription
403Token does not allow forwarding emails
DELETE/api/access/email/messages/{emailId}Bearer Token

Delete Email

Soft-deletes an email. The email is moved to Trash/Deleted Items and can be recovered.

Path Parameters

ParameterTypeDescription
emailIdstringProvider-prefixed email ID to delete

Response 204 No Content

(empty response body)

Note

Gmail moves the email to Trash (recoverable for 30 days). Microsoft 365 moves it to the Deleted Items folder. This is a soft delete — emails are not permanently destroyed.

Error Responses

StatusDescription
404Email not found or could not be deleted
PATCH/api/access/email/messages/{emailId}Bearer Token

Modify Email

Modifies email properties such as read status and labels/categories.

Path Parameters

ParameterTypeDescription
emailIdstringProvider-prefixed email ID to modify

Request Body

FieldTypeRequiredPermissionDescription
markAsReadboolNomark_as_readMark as read (true) or unread (false)
addLabelsstring[]Noapply_labelsLabels/categories to add
removeLabelsstring[]Noapply_labelsLabels/categories to remove
{
"markAsRead": true,
"addLabels": ["IMPORTANT"],
"removeLabels": ["UNREAD"]
}

Note

Each sub-operation requires its own permission flag. A token with mark_as_read but not apply_labels can mark emails as read but cannot modify labels. Gmail uses messages/modify with label IDs. Microsoft 365 patches isRead and categories.

Error Responses

StatusDescription
404Email not found or could not be modified