Agent Mail Messages | Integrations | AutoGPT

Agent Mail Forward Message

What it is

Forward an email message to one or more recipients. Supports CC/BCC and optional extra text or subject override.

How it works

The block validates that the combined recipient count across to, cc, and bcc does not exceed 50, then calls the AgentMail API to forward a specific message from your inbox. You provide the inbox ID and message ID to identify the original email, along with the target email addresses. Optionally, you can override the subject line or prepend additional plain text or HTML content before the forwarded message body.

The API handles constructing the forwarded email with the original content included. Any errors from the API propagate directly to the global error handler without being caught by the block.

Inputs

Input Description Type Required
inbox_id Inbox ID or email address to forward from str Yes
message_id Message ID to forward str Yes
to Recipient email addresses to forward the message to List[str] Yes
cc CC recipient email addresses List[str] No
bcc BCC recipient email addresses (hidden from others) List[str] No
subject Override the subject line (defaults to 'Fwd: ') str No
text Additional plain text to prepend str No
html Additional HTML to prepend str No

Outputs

Output Description Type
error Error message if the operation failed str
message_id Unique identifier of the forwarded message str
thread_id Thread ID of the forward str
result Complete forwarded message object with all metadata Dict[str, Any]

Possible use case


Agent Mail Get Message

What it is

Retrieve a specific email message by ID. Includes extracted_text for clean reply content without quoted history.

How it works

The block fetches a single message from an AgentMail inbox by calling the API with the inbox ID and message ID. It returns the full message content including subject, plain text body, HTML body, and all metadata.

A key output is extracted_text, which contains only the new reply content with quoted history stripped out. This is especially useful when feeding message content into an LLM, since it avoids processing redundant quoted text from earlier in the conversation.

Inputs

Input Description Type Required
inbox_id Inbox ID or email address the message belongs to str Yes
message_id Message ID to retrieve str Yes

Outputs

Output Description Type
error Error message if the operation failed str
message_id Unique identifier of the message str
thread_id Thread this message belongs to str
subject Email subject line str
text Full plain text body str
extracted_text Just the new reply content with quoted history stripped. str
html HTML body of the email str
result Complete message object with all fields Dict[str, Any]

Possible use case


Agent Mail List Messages

What it is

List messages in an AgentMail inbox. Filter by labels to find unread, campaign-tagged, or categorized messages.

How it works

The block queries the AgentMail API to retrieve a paginated list of messages from the specified inbox. You can control the page size with limit (1-100) and navigate through results using the page_token returned from a previous call. An optional labels filter returns only messages that have all of the specified labels.

The block outputs the list of message objects, a count of messages returned in the current page, and a next_page_token for fetching subsequent pages. When next_page_token is empty, there are no more results.

Inputs

Input Description Type Required
inbox_id Inbox ID or email address to list messages from str Yes
limit Maximum number of messages to return per page (1-100) int No
page_token Token from a previous response to fetch the next page str No
labels Only return messages with ALL of these labels List[str] No

Outputs

Output Description Type
error Error message if the operation failed str
messages List of message objects List[Dict[str, Any]]
count Number of messages returned int
next_page_token Token for the next page. Empty if no more results. str

Possible use case


Agent Mail Reply To Message

What it is

Reply to an existing email in the same conversation thread. Use for multi-turn agent conversations.

How it works

The block sends a reply to an existing message by calling the AgentMail API with the inbox ID, the message ID being replied to, and the reply body text. An optional HTML body can be provided for rich formatting. The API automatically threads the reply into the same conversation as the original message.

The block returns the new reply's message ID, the thread ID it was added to, and the complete message object. This makes it straightforward to build multi-turn email conversations where an agent responds to incoming messages within the same thread.

Inputs

Input Description Type Required
inbox_id Inbox ID or email address to send the reply from str Yes
message_id Message ID to reply to str Yes
text Plain text body of the reply str Yes
html Rich HTML body of the reply str No

Outputs

Output Description Type
error Error message if the operation failed str
message_id Unique identifier of the reply message str
thread_id Thread ID the reply was added to str
result Complete reply message object with all metadata Dict[str, Any]

Possible use case


Agent Mail Send Message

What it is

Send a new email from an AgentMail inbox. Creates a new conversation thread. Supports HTML, CC/BCC, and labels.

How it works

The block first validates that the combined count of to, cc, and bcc recipients does not exceed 50. It then calls the AgentMail API to send a new message from the specified inbox, creating a new conversation thread. You must provide at least a plain text body; an optional HTML body can be included for rich formatting.

The block supports CC and BCC recipients for human-in-the-loop oversight or silent monitoring, and labels for tagging outgoing messages for later filtering. The API returns the new message's ID, the thread ID for tracking future replies, and the complete message object.

Inputs

Input Description Type Required
inbox_id Inbox ID or email address to send from str Yes
to Recipient email addresses List[str] Yes
subject Email subject line str Yes
text Plain text body of the email str Yes
html Rich HTML body of the email str No
cc CC recipient email addresses List[str] No
bcc BCC recipient email addresses List[str] No
labels Labels to tag the message for filtering List[str] No

Outputs

Output Description Type
error Error message if the operation failed str
message_id Unique identifier of the sent message str
thread_id Thread ID grouping this message and future replies str
result Complete sent message object with all metadata Dict[str, Any]

Possible use case


Agent Mail Update Message

What it is

Add or remove labels on an email message. Use for read/unread tracking, campaign tagging, or state management.

How it works

The block calls the AgentMail API to modify the labels on a specific message. You can add new labels, remove existing ones, or do both in a single call. Labels are arbitrary strings you define, making them flexible for tracking message state such as read/unread, processing status, or campaign membership.

The block returns the updated message ID and the complete message object reflecting the current label state. This is useful as a downstream step after processing a message, allowing you to mark it as handled so it is not picked up again by a polling workflow.

Inputs

Input Description Type Required
inbox_id Inbox ID or email address the message belongs to str Yes
message_id Message ID to update labels on str Yes
add_labels Labels to add List[str] No
remove_labels Labels to remove List[str] No

Outputs

Output Description Type
error Error message if the operation failed str
message_id The updated message ID str
result Complete updated message object with current labels Dict[str, Any]

Possible use case