# Email Configuration

One of the most powerful features of **Sol.site** is the ability to configure **MX (Mail Exchange) records**. This allows you to use your domain for email communication, bridging the gap between Web3 identity and traditional communication tools.

By configuring MX records, you can receive emails at addresses like owner`@yourname.sol.site` or `user@yourname.sol.site`.

### Prerequisites <a href="#user-content-prerequisites" id="user-content-prerequisites"></a>

Before configuring your records, you must have an email hosting service. SNS provides the **DNS records**, but does not host the inbox itself. You will need either:

* **Email Hosting Provider:** A service that stores your emails in a dedicated inbox (e.g., ProtonMail, Zoho, Google workspace).
* **Email Forwarding Service:** A service that redirects emails to your existing personal inbox (e.g., ImprovMX, ForwardEmail). This is often a simpler, free alternative for users who do not need a separate mailbox.

{% hint style="info" %}
**What You'll Need** To complete the setup, you will need the MX record values provided by your host or forwarder.
{% endhint %}

***

### Step 1: Configure MX Records

MX records tell the internet where to deliver emails sent to your domain.

1. Navigate to the **domain details page**.&#x20;
2. Click the **Configure Sol.site** button.
3. Scroll to the **MX Records** section and add a new MX record by clicking the "**+**" button.&#x20;
4. Enter the values provided by your email host:<br>

   | Field        | Description                                      | Example Value        |
   | ------------ | ------------------------------------------------ | -------------------- |
   | **Priority** | The preference number (lower is higher priority) | `10`                 |
   | **Value**    | The mail server address                          | `mail.protonmail.ch` |

{% hint style="info" %}
**Multiple Records:** Most providers give you multiple MX records for redundancy. Repeat the steps above to add all provided servers (e.g., `10 mail.server1.com` and `20 mail.server2.com`).
{% endhint %}

#### Step 2: Authenticate Your Domain (SPF, DKIM, DMARC) <a href="#user-content-option-b-email-forwarding-services-improvmx-etc" id="user-content-option-b-email-forwarding-services-improvmx-etc"></a>

Simply adding MX records allows you to *receive* emails, but to ensure your emails don't land in the recipient's **Spam folder**, you must verify your domain. This is done via special **TXT records**.

The specific records required depend on whether you are using a **Hosting Provider** or a **Forwarding Service**.

<details>

<summary>Email Hosting Provider</summary>

Full email hosts such as [Proton Mail](https://go.getproton.me/SH2UK) or Google Workspace typically require three types of verification records.

**1. SPF (Sender Policy Framework)**

This authorizes the host's servers to send email on your behalf.

* **Type:** `TXT`
* **Name:** (Leave blank)
* **Value:** Provided by host (e.g., `v=spf1 include:_spf.google.com ~all`)

**2. DKIM (DomainKeys Identified Mail)**

This adds a digital signature to your emails. Your host will provide a specific **Name** (Selector) and **Value** (Public Key).

* **Type:** `TXT`
* **Name:** `selector._domainkey` (e.g., `protonmail._domainkey`)
* **Value:** A long string of characters provided by your host.

**3. DMARC (Domain-based Message Authentication)**

This tells receivers what to do if an email fails SPF or DKIM checks.

* **Type:** `TXT`
* **Name:** `_dmarc`
* **Value:** `v=DMARC1; p=none;` (Start with `p=none` to monitor, then switch to `p=quarantine` or `p=reject` later).

</details>

<details>

<summary>Email Forwarding Service</summary>

Forwarding services such as ImprovMX are simpler. They primarily need SPF records to ensure forwarded emails are not marked as spam.

**SPF Configuration**

Add a TXT record that authorizes the forwarding service's servers.

* **Type:** `TXT`
* **Name:** (Leave blank)
* **Value:** Provided by the service (e.g., `v=spf1 include:spf.improvmx.com ~all`)

{% hint style="warning" %}
**Merging SPF Records** If you already have an SPF record (e.g., for another service), do not create a second TXT record with the same name. You must merge them into one single record.
{% endhint %}

</details>

***

### Verifying Your Setup <a href="#user-content-verifying-your-setup" id="user-content-verifying-your-setup"></a>

DNS changes can take anywhere from a few minutes to 48 hours to propagate globally. You can verify your configuration using third-party tools.

* **Tool:** [MXToolbox](https://mxtoolbox.com/) or [DNSChecker](https://dnschecker.org/)
* **Check:** Enter `yourname.sol.site` and select "MX Lookup" or "TXT Lookup".

If configured correctly, the tool will display the records you entered in the SNS dashboard.
