Table of Contents

Class MailSubmissionRequest

Namespace
MailFathom.Application.Mail.Delivery.Submission
Assembly
MailFathom.Application.dll

States one message somebody asked this deployment to send, in the terms they wrote it in.

public sealed record MailSubmissionRequest : IEquatable<MailSubmissionRequest>
Inheritance
MailSubmissionRequest
Implements
Inherited Members

Remarks

There is no sending address here. The account is named and the address it writes as comes from that account's own configuration, so nothing a caller can send makes a message claim to be from somebody else. It is the same absence AuthoredEmail is built around, restated at the boundary a caller actually reaches so that no entrypoint has to remember to leave the field out.

The account is named the way every other request names one — by the identifier or the display name a deployment publishes — rather than by the internal identity, so a caller composes this request from what list_accounts told it.

The requester is the whole of the idempotency identity a caller supplies, and it is required rather than derived. A submission this type could mint a key for would be a submission whose retry is a second message: only the caller knows whether it is asking again or asking anew, and a duplicated delivery cannot be withdrawn.

Properties

Account

Gets the account the message is sent as, named as a caller names one.

DueAt

Gets the time the author asked the message to leave at, or null when they asked for it to leave at once.

HtmlBody

Gets the HTML alternative the author wrote, or null when they wrote none.

PlainTextBody

Gets the plain-text body the author wrote, which every sent message carries.

Recipients

Gets the people the message is addressed to, in the headers the author named them in.

Requester

Gets the authored act asking, which is what makes the same submission twice one delivery.

Subject

Gets the subject line the author wrote.