Email Provider Settings
Endatix requires an email provider to send transactional emails, form submission notifications, and identity verification links (like password resets). Out of the box, the Endatix API supports SendGrid, Mailgun, and standard SMTP.
Configuration is managed via your appsettings.json file or environment variables under the Endatix:Integrations:Email section.
SendGrid
To use SendGrid as your email provider, you need to configure the SendGridSettings section. The Endatix API uses the official SendGrid APIs to deliver emails reliably.
Configuration Example
{
"Endatix": {
"Integrations": {
"Email": {
"SendGridSettings": {
"ApiKey": "SG.your_api_key_here",
"DefaultFromAddress": "noreply@yourdomain.com",
"DefaultFromName": "Endatix Notifications"
}
}
}
}
}
Properties
ApiKey(Required): Your SendGrid API key with "Mail Send" permissions.DefaultFromAddress(Required): The verified sender email address configured in your SendGrid account.DefaultFromName: The display name for the sender.
For implementation details, refer to SendGridSettings.cs.
Mailgun
To use Mailgun, configure the MailgunSettings section. This integration uses the Mailgun REST API.
Configuration Example
{
"Endatix": {
"Integrations": {
"Email": {
"MailgunSettings": {
"ApiKey": "key-your_mailgun_api_key",
"Domain": "mg.yourdomain.com",
"BaseUrl": "https://api.mailgun.net/v3",
"DefaultFromAddress": "noreply@mg.yourdomain.com",
"DefaultFromName": "Endatix Notifications"
}
}
}
}
}
Properties
ApiKey(Required): Your private Mailgun API key.Domain(Required): The sending domain verified in your Mailgun account.BaseUrl: The Mailgun API base URL. Usehttps://api.eu.mailgun.net/v3if your domain is hosted in the EU region.DefaultFromAddress(Required): The default sender email address.DefaultFromName: The display name for the sender.
For implementation details, refer to MailgunSettings.cs.
SMTP
If you prefer to use a standard SMTP server (such as Amazon SES, Postmark, or a custom corporate mail server), Endatix provides an SmtpEmailSender implementation using MailKit, the open-source .NET SMTP/MIME library. This supports both STARTTLS (the traditional port 587 setup) and implicit TLS/SMTPS (typically port 465).
Not to be confused with mailkit.com, an unrelated email service provider — this is about the MailKit library, used here purely as the transport for your own SMTP server.
Configuration Example
{
"Endatix": {
"Integrations": {
"Email": {
"SmtpSettings": {
"Host": "smtp.example.com",
"Port": 587,
"EnableSsl": true,
"Username": "your_smtp_username",
"Password": "your_smtp_password",
"DefaultFromAddress": "noreply@yourdomain.com",
"DefaultFromName": "Endatix Notifications"
}
}
}
}
}
Properties
Host(Required): The SMTP server host name or IP address (e.g.,localhostorsmtp.mail.company.com).Port: The SMTP server port number. Defaults to587.EnableSsl: Whether to enable transport security. Combined withPortto pick aSecurityModeautomatically whenSecurityModeis left at its default — see below. Defaults totrue.SecurityMode: Explicitly controls how the connection is secured, overriding theEnableSsl/Portheuristic. One ofAuto(default),None,StartTls,StartTlsWhenAvailable, orSslOnConnect. UseSslOnConnectfor implicit TLS/SMTPS servers (typically port465) if auto-detection based on port doesn't fit your setup.CheckCertificateRevocation: Whether to check the server's TLS certificate for revocation (OCSP/CRL) during the handshake. Defaults tofalse, since some networks block the endpoints this check needs, which would otherwise cause connections to fail. Set totruefor stricter certificate validation if your network allows it.Username: The username for SMTP authentication. If left empty, the connection is made without authentication (a warning is logged).Password: The password for SMTP authentication.DefaultFromAddress(Required): The default sender email address. Defaults tonoreply@endatix.com.DefaultFromName: The default sender display name. Defaults toEndatix.
For implementation details, refer to SmtpSettings.cs.
:::warning Upgrading from the .NET SmtpClient-based sender
Earlier Endatix versions sent SMTP mail using .NET's built-in System.Net.Mail.SmtpClient, which Microsoft's own docs no longer recommend for new development. The MailKit-based sender is a drop-in replacement — no configuration changes are required for the common case of a Host/Port combination with username/password authentication over STARTTLS. Two behaviors changed:
- Blank
Usernameon Windows. Previously, leavingUsernameempty madeSmtpClientauthenticate using the Windows process identity (UseDefaultCredentials). MailKit has no equivalent, so a blankUsernamenow always means an unauthenticated connection. This only matters if you relied on integrated Windows authentication with no explicit username — outside of that, an emptyUsernamebehaves the same as before. - Certificate revocation checking. Not checked previously; still not checked by default now (
CheckCertificateRevocationdefaults tofalse), but it's newly available as an opt-in for stricter validation. :::
For an overview of email providers and how to activate them in Endatix API see the Email Providers Guide.