reply_email
Reply to an existing email using a unique idempotency key to prevent duplicate sending. If human approval is required, the reply is queued as a draft and returns a draft ID.
Instructions
Reply to an email you received. Call this when answering an existing message — recipient, subject, and conversation threading are derived automatically from the original. Pass a client_id (any unique string you make up) and reuse the SAME client_id if you retry after an error — that guarantees the reply is sent at most once. If the mailbox requires human approval, the reply is queued as a draft and returns {draft_id, status:"pending_approval"} instead of a message id — that is NOT a failure and must NOT be retried; it is sent once a human approves it (check with list_drafts).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Plain-text reply body, max 50,000 characters. | |
| client_id | Yes | REQUIRED idempotency key — any unique string you invent for this reply. Reuse the SAME value when retrying after an error and the reply goes out at most once; a new value sends a second copy. Cannot start with "draft:". | |
| mailbox_id | Yes | Id of the mailbox the original message arrived in. | |
| reply_to_message_id | Yes | Id of the message being replied to, from list_inbox or read_email. Recipient, subject and threading are derived from it. |