Skip to main content
Reads a staged draft back: its sender, every recipient including bcc, the subject, whether it is threaded onto a conversation, the first 500 characters of the body, and every attached file with its blobId. Use it to confirm what create_draft or update_draft actually staged before sending. get_email deliberately can’t do this job. It renders a message through the cleaning pipeline (markdown out, whatever the sender put in) and never shows bcc, because a received message has none. A draft needs the literal staged fields. For messages that have already been sent or received, use get_email.

Parameters

string
required
The draft id, as returned by create_draft or the most recent update_draft.

Example

Call
Result
The attachments section lists every file the draft carries. The blobId on each line is the handle to pass back to update_draft: supplying attachments replaces the list wholesale, so an edit that means to add a file lists these alongside the new one. Drafts with no files omit the section. A line may instead say the file has no blobId, so it cannot be re-attached. That happens for a draft written by another client whose attachment the server exposes without a retrieval handle: the file is really there and send_draft will deliver it, but update_draft cannot carry it onto the rewritten message and refuses the edit rather than dropping it. Edit that draft in Langmail.

Errors

  • Draft not found: <id> — no such message.
  • <id> is not a draft — it has already been sent or received. — read it with get_email instead.