Inboxes

Update a draft

Omitted fields stay as they are; null clears one. The result must keep at least one non-empty field and at most 50 recipients. A sent draft, or one being sent, returns 409. Not in Resend: pass revision (from the draft object) to make the edit land only on that version; if the draft changed since, nothing is written and the answer is 409 with code draft_changed and the current revision. Requires the inbound:read scope.

patch/v1/inboxes/{inbox_id}/drafts/{draft_id}

Request

  • Base URL: https://smtpfa.st/api
  • URL: https://smtpfa.st/api/v1/inboxes/{inbox_id}/drafts/{draft_id}
  • Auth: HTTP bearer

Path parameters

inbox_idstring required

The inbox id or its email address

draft_idstring required

The draft id

Request body

subjectstring nullable
htmlstring nullable
textstring nullable
revisioninteger

Only write if the draft is still at this revision. Not in Resend.

Response

The saved draft

objectstring
idstring
type'standalone' | 'reply'
tostring[] nullable
ccstring[]
bccstring[]
subjectstring nullable
htmlstring nullable
textstring nullable
thread_idstring nullable
reply_to_email_idstring nullable
email_idstring nullable

The queued email once sent

created_atstring date-time
updated_atstring date-time
created_via'api' | 'dashboard'

Who wrote the draft. Not in Resend.

sent_atstring date-time nullable

Not in Resend

revisioninteger

Goes up with every edit. Pass it to send or update to act only on this version. Not in Resend.

thread_subjectstring nullable

The subject of the thread a reply draft answers. Not in Resend.

Example response

{
  "object": "inbox_draft"
}

Changes

No recorded changes to this operation across all 1 revision of this API.