Method SubmitAsync
- Namespace
- MailFathom.Application.Mail.Delivery.Submission
- Assembly
- MailFathom.Application.dll
SubmitAsync(MailSubmissionRequest, CancellationToken)
Queues one message, or refuses it naming what the caller has to change.
public Task<OutgoingEmailRecord> SubmitAsync(MailSubmissionRequest request, CancellationToken cancellationToken)
Parameters
requestMailSubmissionRequestThe message that was asked for.
cancellationTokenCancellationTokenCancels the reads and the write.
Returns
- Task<OutgoingEmailRecord>
The durable record the message was written down as, whether this call created it or an identical earlier one did.
Exceptions
- ArgumentNullException
Thrown when
requestis null.- PrincipalNotAuthorizedException
Thrown when the caller does not hold MailSend.
- MailAccountNotAccessibleException
Thrown when the request names an account this deployment does not serve.
- MailSubmissionRefusedException
Thrown when a recipient names nobody, a field cannot be composed, a bound is exceeded, the account configures no address to send from, or the message is asked to leave at a time that has passed.
- OutgoingMailRefusedException
Thrown when a recipient is one this deployment may not write to, when this caller has reached a ceiling of its own, or when a recipient it named is one nothing here vouches for.