> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mailofly.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Learn what sending identities are, how they work, and how they provide a zero-DNS alternative to custom domains.

# Identities Introduction

An **Identity** in Mailofly represents an authorized, connected email mailbox—such as a personal Gmail account, Google Workspace mailbox, or custom SMTP server—that Mailofly uses to dispatch emails on your behalf.

While verified **Domains** route outbound traffic through Mailofly's enterprise Amazon SES relay with dedicated IP pools and custom DKIM keys, **Identities** dispatch emails directly through your existing mailbox provider using OAuth 2.0 or SMTP credentials.

***

## What is an Identity?

An identity connects your Mailofly workspace directly to an existing email provider:

* **Google (Gmail & Google Workspace)**: Connected via secure, 1-click Google OAuth 2.0. Mailofly obtains scoped sending permissions to dispatch emails through the official Gmail API / transport.
* **Custom SMTP**: Connected via standard SMTP credentials (host, port, username, password, and SSL/TLS encryption). Mailofly connects directly to your external mail server (such as SendGrid, Mailgun, Postmark, Amazon SES, or self-hosted servers like Postfix/cPanel) to transmit mail.

***

## Identities vs. Domains

Mailofly supports both sending models. Here is how they compare:

| Dimension                | Custom Domain                                                   | Sending Identity                                        |
| :----------------------- | :-------------------------------------------------------------- | :------------------------------------------------------ |
| **Setup Process**        | Add DNS records (SPF, DKIM, DMARC, MX)                          | 1-click Google OAuth or enter SMTP credentials          |
| **Time to Send**         | \~10–15 minutes (DNS propagation)                               | **Instant** (\< 1 minute)                               |
| **Sender Address**       | Any address at your domain (`*@yourdomain.com`)                 | Exact connected address (`you@gmail.com`)               |
| **Delivery Engine**      | Mailofly Amazon SES delivery relay                              | Connected provider (Google API / external SMTP)         |
| **DKIM Signature**       | Mailofly signs with your custom domain DKIM keys                | Signed by your connected provider (e.g. Google)         |
| **Event Tracking**       | Full lifecycle: Delivered, Bounced, Complained, Opened, Clicked | **Limited**: Sent, Opened, and Clicked only             |
| **Daily Sending Limits** | High throughput (scaled by your Mailofly plan)                  | Constrained by provider (e.g. 500 emails/day for Gmail) |
| **Inbound Email**        | Inbound MX routing & webhooks supported                         | Not received via Mailofly (goes to your normal inbox)   |

***

## How Users Can Use Identities

Identities can be used across all Mailofly interfaces:

1. **REST API & SDKs**:
   Specify the identity's email in the `from` field:
   ```json theme={null}
   {
     "from": "Alex <alex.developer@gmail.com>",
     "to": ["recipient@example.com"],
     "subject": "Hello world",
     "html": "<p>Sent using a connected Google identity!</p>"
   }
   ```
   Or explicitly pass the `account_key` (`acc_...`):
   ```json theme={null}
   {
     "from": "Alex <alex.developer@gmail.com>",
     "to": ["recipient@example.com"],
     "subject": "Hello world",
     "html": "<p>Sent using a connected Google identity!</p>",
     "account_key": "acc_3a8f9c12b0e4"
   }
   ```
2. **Visual Dashboard (Compose)**:
   Select your connected identity from the **From** dropdown when composing single emails.
3. **Marketing Campaigns & Broadcasts**:
   Assign one or more connected identities as the sending accounts for automated campaigns.

***

## Important Limitations

Before using identities for mission-critical production traffic, keep the following constraints in mind:

<Warning>
  ### Event Tracking Restrictions

  Because Mailofly dispatches messages directly through your provider's servers rather than its own MTA infrastructure, **downstream delivery feedback is not available**:

  * **Tracked by Mailofly**:
    * `sent` — when Mailofly successfully hands off the email to Google or your SMTP server.
    * `opened` — when the recipient opens the message and loads the transparent tracking pixel.
    * `clicked` — when the recipient clicks any tracked hyperlink.
  * **NOT Tracked by Mailofly**:
    * `delivered` — third-party mailbox providers do not send back remote server acceptance receipts (`250 OK`) to Mailofly.
    * `bounced` — hard bounces (e.g., non-existent email addresses) generate Non-Delivery Reports (NDRs) delivered directly to your personal mailbox, not to Mailofly. Mailofly cannot mark these as bounced in your logs or webhooks.
    * `complained` — spam reports lodged in external webmail clients do not trigger Feedback Loops (FBL) to Mailofly.
</Warning>

<Info>
  For full delivery verification, bounce suppression, unsubscribe compliance, and custom domain DKIM signing, we recommend adding a [Custom Sending Domain](/domains/introduction).
</Info>


## Related topics

- [Introduction](/introduction.md)
