Astro
Learn how to send emails in Astro using Mailtrap's Email API.
Overview
This guide explains how to integrate Mailtrap with your Astro project to send emails programmatically using the Mailtrap Email API.
Prerequisites
Before you start, make sure you have:
Send emails using Astro and Mailtrap
To integrate Mailtrap and send emails via Astro, copy and paste the following script into your configuration:
import { ActionError, defineAction } from "astro:actions";
import { MailtrapClient } from "mailtrap";
const mailtrap = new MailtrapClient({ token: 'YOUR-MAILTRAP-API-KEY-HERE' });
export const server = {
send: defineAction({
accept: "form",
handler: async () => {
try {
const response = await mailtrap.send({
from: { name: 'Mailtrap Test', email: 'YOUR-EMAIL-HERE' },
to: [{ email: 'RECIPIENT-EMAIL-HERE' }],
subject: 'Hello World',
html: '<strong>it works!</strong>',
});
console.log(response);
return response;
} catch (error) {
const message = error instanceof Error ? error.message : 'Unknown error';
console.log(message);
throw new ActionError({
code: "BAD_REQUEST",
message,
});
}
},
}),
};Configuration
Once you copy the script, update the following fields with your information:
Replace
YOUR-MAILTRAP-API-KEY-HEREwith your actual Mailtrap API token in thetoken:fieldReplace
YOUR-EMAIL-HEREwith your verified sender emailReplace
RECIPIENT-EMAIL-HEREwith the recipient's email address
Learn more
For additional details about the Email API, refer to the Mailtrap Email Sending API Integration guide.
Last updated
Was this helpful?

