Skip to main content
Appwrite is an open-source development platform for building and scaling applications faster, offering Auth, Databases, Storage, Functions, Messaging, Realtime, and web hosting, all in one place. Appwrite Messaging includes a native Resend provider, so you can send emails to your app’s users through Resend without writing any delivery code.

Prerequisites

To get the most out of this guide, you’ll need to: You’ll also need an Appwrite project with at least one user.

1. Add Resend as an email provider

In the Appwrite Console, navigate to Messaging > Providers > Add provider > Email. Give your provider a name, choose Resend, and click Save and continue.
The provider will be saved to your project, but not enabled until you complete its configuration.
In the Configure step, you will need to provide details from your Resend dashboard to connect your Appwrite project: After adding these details, click Save and continue to enable the provider.

2. Add recipients

Appwrite Messaging delivers messages to targets, the different ways a user can be reached: their email addresses, phone numbers, and devices with your app installed. Targets can subscribe to topics, so when a message is published to a topic, all subscribed targets receive it. Users with verified emails who signed up with email password, magic URL, email OTP, or OAuth2 login already have an email target. You can also add targets to existing users by navigating to Authentication > Users > select a user > Targets. To message groups of users, navigate to Messaging > Topics > Create topic and subscribe their targets to the topic. Learn more about topics and targets in the Appwrite documentation.

3. Send your first email

To send a test email from the Appwrite Console, navigate to Messaging > Messages > Create message > Email. Add your message and in the targets step, select one of your test targets. Set the schedule to Now and click Send. Verify that you can receive the message in your inbox. If not, check for logs in the Appwrite Console or in your Resend dashboard. To send emails programmatically, use an Appwrite Server SDK:
Emails can be sent immediately or scheduled for a later time.