update_draft
Edit an existing draft's recipients, subject, body, or other fields before sending. Only provided fields change; omitted fields stay the same, then send or sync the updated draft.
Instructions
Update an existing locally saved draft's recipients, subject, body, or other fields. Use to edit a draft before sending. Only provided fields are updated — omitted fields retain their current values. After updating, call send_draft to send or sync_draft_to_remote to push to Proton Drafts. The response's attachments are metadata only (filename/contentType/size, no base64 content) even if the draft has attachments from a previous call — use get_draft if you need the actual attachment bytes back.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cc | No | CC recipient email addresses, comma-separated. | |
| to | No | Recipient email addresses, comma-separated. | |
| bcc | No | BCC recipient email addresses, comma-separated. | |
| body | No | Draft body. Replaces the WHOLE body — for a change to part of a long draft use bodyEdits instead, which costs a fraction of the tokens. | |
| from | No | Send as this address instead of the Bridge login's default when the draft is sent (e.g. an alias or additional address on the same Proton account). Proton accepts any address verified on the account; an address not on the account is rejected by Proton at send time. | |
| notes | No | Optional local note for the draft. | |
| isHtml | No | Whether the body should be HTML. | |
| draftId | Yes | Draft id returned by create_draft, list_drafts, or a create_*_draft call. | |
| replyTo | No | Optional reply-to email address. | |
| subject | No | Draft subject. | |
| priority | No | ||
| bodyEdits | No | Change parts of the existing body without resending it: find/replace edits applied in order (use instead of body; not both). Each find must appear exactly once in the body (add surrounding text to make it unique, or set all:true), otherwise nothing is changed and the error says why. replace:'' deletes the text. Matches the stored body literally — for an HTML draft that means the HTML source. The response reports bodyEditsApplied (number of replacements). | |
| attachments | No | Attachments with base64 encoded content. | |
| syncToRemote | No | Whether to sync the updated draft to the Proton Drafts mailbox when IMAP is available. |