Sending and operations
Queue a message
Receive ID mailbox from GET /v1/mailboxes. Create a unique Idempotency-Key for one submission and save it until the final result. For network replay, use the same key and the same body.
HTTP 202 returns an operation object, not a delivery confirmation. Field id contains ID operations. Poll GET /v1/operations/{operation_id}.
POST /v1/mailboxes/42/sendIdempotency-Key: message-20261019-0001Content-Type: application/json
{"to":["[email protected]"],"subject":"Hello","text":"A message from Adapt Mail"}Understanding the result
queued- The message is waiting to be sent.
running- Sending is in progress.
succeeded- The mail server accepted the submission. Check the result for each recipient.
failed- Sending failed. The reason is given in error.
cancelled- Dispatch cancelled.
uncertain- Failed to confirm the send result. Please check the operation and your sent folder before trying again.
After a successful send, result contains accepted_recipients, rejected_recipients and sent_saved, which indicates whether a copy was saved in Sent. Acceptance by the mail server does not guarantee delivery to the recipient’s inbox.
To cancel a pending send, run POST /v1/operations/{operation_id}/cancel. The /retry method does not resend the email.
Replies, forwarding and scheduled delivery
To reply, please include message_id of the original email in reply_to_message_id and forward it to references. In to, enter the reply address from reply_to or the sender's address. To reply to everyone, add other participants to to and cc, excluding your own address.
To forward attachments, pass forward_message with folder, uidvalidity and uid. For your uploaded files, use file_ids. Total attachment size is limited to 25 MiB.
Provide send_at with a time zone; it is stored in UTC. Sending can be scheduled up to a year ahead. Outbound limits are checked when the message is sent, not when it is queued.