> For the complete documentation index, see [llms.txt](https://docs.exavault.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.exavault.com/administration/sending-email.md).

# Sending Email

Your ExaVault appliance generates a variety of emails, such as notifications of new user accounts, password reset links, invitations to download or upload shared files, and notifications of file and user activity.

## SMTP Configuration

ExaVault does not include an email delivery service. Configure the Appliance Manager with the SMTP settings supplied by your email provider.

Use an email delivery provider designed for automated or transactional email, such as [Amazon SES](https://aws.amazon.com/ses/), [Twilio SendGrid](https://sendgrid.com/en-us), [Sinch Mailgun](https://www.mailgun.com/), [Azure Communication Services](https://azure.microsoft.com/en-us/products/communication-services), [Mailchimp](https://mailchimp.com/features/transactional-email), or [Postmark](https://postmarkapp.com/transactional-email). Mailbox-oriented services such as Microsoft Exchange, Office 365, and Google Workspace are designed for end-user email and can impose authentication, throttling, or policy restrictions that make them unsuitable for appliance-generated messages.

The Appliance Manager is available on port `9002`. If the domain is `files.example.com`, open `https://files.example.com:9002/`.

On the Appliance Manager *Configuration* page, provide these settings:

* *Email Host*: The address of the SMTP server that delivers messages generated by the appliance.
* *Email Port*: The port used to connect to the SMTP service.
* *Email SSL*: Select this option when the SMTP service requires SSL. This is typically used with port `465`.
* *Email Username* and *Email Password*: The credentials used to authenticate with the SMTP service.
* *Email From*: The From address used for messages generated by the appliance.

After changing these settings, save the configuration and [restart the appliance](/administration/restarting-the-appliance.md).

## Microsoft Exchange Online Is Not Compatible

Microsoft Exchange Online, Microsoft 365, Office 365, and `smtp.office365.com` cannot be used as the SMTP service for your ExaVault appliance. Microsoft [does not permit authentication](https://learn.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/deprecation-of-basic-authentication-exchange-online) by the methods the appliance uses to connect.

For an alternative within the Microsoft ecosystem, [Azure Communication Services](https://azure.microsoft.com/en-us/products/communication-services) can [provide SMTP services](https://learn.microsoft.com/en-us/azure/communication-services/quickstarts/email/send-email-smtp/smtp-authentication). You can also use a transactional email provider such as Amazon SES, SendGrid, Mailgun, or Postmark.

## Troubleshooting Emails

ExaVault generates a message and submits it to the configured SMTP service. The provider then attempts delivery to the recipient's mail server, where the message may be accepted, filtered, rejected, or suppressed. Check each stage in that order.

Appliance services run in Docker containers and write logs under `/data/exavault/logs/`. The Celery service sends outbound email asynchronously and writes files whose names begin with `celery`.

### Determine if Your Email Was Generated

Search the Celery logs for `send_email`. A connection or authentication error includes the failure returned by the SMTP service. After correcting the SMTP configuration, save the changes and [restart the appliance](/administration/restarting-the-appliance.md).

If the Celery logs only show that emails were sent and do not show any error messages, you have determined that the email was successfully created and was sent to your mail provider. Your next step is to check your mail provider's logs for the message delivery status.

### No Email Logs Generated

If generating an email adds no `send_email` entry to the Celery logs, the asynchronous workers may not be processing jobs. The RabbitMQ queue service or Celery worker may have stopped responding. [Restart the appliance](/administration/restarting-the-appliance.md), then test again.

### Check Delivery Status in Your Mail Provider

After confirming that ExaVault submitted the message without an SMTP error, check the provider's delivery logs. The available detail depends on the provider.

You can usually determine whether the message that was sent using your mail provider was accepted by the recipient's mail server. If the recipient's mail server does not accept the email, this is known as a bounce, which can be a hard bounce or a soft bounce.

Soft bounces indicate temporary problems, such as the recipient's mailbox being full. A hard bounce happens when an email can't be delivered and never will be. A hard bounce usually means the email address doesn't exist, the domain name is incorrect, or the recipient's email server is blocking the message.

### Check Recipient Mail Filters

If the recipient's mail server accepted the message without a bounce, check the recipient's quarantine, spam folder, and mailbox rules. File-activity notifications can be misclassified because their subjects are repetitive.
