---
layout: integration
title: Email with Resend
description: Send customized emails to your users through Resend
date: 2026-11-06
featured: false
isPartner: true
isNew: true
cover: /images/integrations/email-resend/cover.avif
category: messaging
product:
    vendor: Resend
    description: "Resend is an email API for developers that sends transactional and marketing email from your verified domains."
platform:
    - 'Self-hosted'
    - 'Cloud'
---

[Resend](https://resend.com) is an email API built for developers. You verify a sending domain, create an API key, and send email through its REST API, SDKs, or SMTP relay.

# How does the integration work?

You can use the Resend provider in Appwrite Messaging to send customized emails to your users, such as reminders, promotions, announcements, and custom authentication flows. Emails can be sent immediately or scheduled, to [topics](/docs/products/messaging/topics), users, or individual [targets](/docs/products/messaging/targets).

The provider talks to the Resend API, so it needs a Resend API key rather than SMTP settings. On Appwrite Cloud, one-click setup connects your Resend account and creates that key for you, with sending-only permission and restricted to the domain you pick.

**One-click setup is available on Appwrite Cloud**

One-click setup relies on Resend being configured as an OAuth2 provider for the Appwrite Cloud Console, so it only appears on Appwrite Cloud. On self-hosted Appwrite, create the API key in Resend and enter it by hand.

# How to implement

To implement the Resend provider in Appwrite Messaging, there are several steps you must complete:

## Step 1: Verify a domain in Resend

First, [sign up for a Resend account](https://resend.com/signup) and [add your domain](https://resend.com/docs/dashboard/domains/introduction) on the [Domains](https://resend.com/domains) page. Add the DNS records Resend shows you and wait until the domain is verified, because Resend only sends from verified domains.

## Step 2: Add the Resend provider to your Appwrite project

For this step, you must [create an account on Appwrite Cloud](/sign-up) or [self-host Appwrite](/docs/advanced/self-hosting) if you haven't already. In your Appwrite project, head to **Messaging** > **Providers**, click **Add provider**, and choose **Email**. Give your provider a name, choose **Resend**, and click **Save and continue**.

In the **Configure** step, use one-click setup or fill in the fields by hand.

**One-click setup**

On Appwrite Cloud, the **Configure** step opens with a **One-click setup** card above the form.

1. Click **Connect with Resend** and authorize Appwrite in Resend.
2. Select a verified **Domain**. If none of your domains are verified yet, verify one in Resend and click **Check again**.
3. Click **Generate API key**.
4. Review the filled-in fields and click **Create provider**.

Appwrite creates an API key named `Appwrite SMTP: <project name>` in your Resend account, with sending-only permission and restricted to the selected domain. It also fills any empty fields: the sender email becomes `noreply@<domain>` unless you already typed an address on that domain, the sender name defaults to your project name, and the provider name defaults to `One-click Resend sender`. If you leave the wizard without creating the provider, Appwrite revokes the key it generated.

**Configure manually**

In the Resend dashboard, go to **API Keys** and click **Create API Key**. Then fill in the following fields in Appwrite:

| Field name | |
| --- | --- |
| API key | The API key you created in Resend. |
| Sender email | The provider sends emails from this address. It must be an email under a verified domain in Resend. |
| Sender name | The sender name that appears in the emails sent from this provider. |
| Reply-to email | The reply-to email that appears in the emails sent from this provider. |
| Reply-to name | The reply-to name that appears in the emails sent from this provider. |

Click **Save and continue** to enable the provider.

## Step 3: Test the Resend provider

Before you proceed, you must already have at least one [topic](/docs/products/messaging/topics) or [target](/docs/products/messaging/targets) set up.

Go to **Messaging** > **Messages**, click **Create message**, and choose **Email**. Write a test message, select one of your test targets, set the schedule to **Now**, and click **Send**. Check that the email arrives in your inbox. If it doesn't, check the logs in the Appwrite Console and in your Resend dashboard.

To send emails from your backend instead, follow the [Send email messages](/docs/products/messaging/send-email-messages) guide with an [Appwrite Server SDK](/docs/sdks#server).

# Read more about Resend and Appwrite Messaging

If you would like to learn more about Resend and Appwrite Messaging, we have some resources that you should visit:

- [Resend documentation](https://resend.com/docs/introduction)
- [Set up the Resend provider in Appwrite Messaging](/docs/products/messaging/resend)
- [Announcing one-click Resend setup in the Appwrite Console](/blog/post/announcing-resend-one-click-setup)
- [Send email messages through Appwrite Messaging](/docs/products/messaging/send-email-messages)
- [Appwrite Messaging API reference](/docs/references/cloud/server-nodejs/messaging)
