Corsair
PluginsResend

Resend API Endpoints

Complete reference for all Resend API endpoints

The Resend plugin provides full access to Resend's API through a typed interface. All endpoints are organized by resource type and automatically handle authentication, rate limiting, and error handling.

New to Corsair? Learn about core concepts like API access, authentication, and error handling before diving into specific endpoints.

Full Implementation: For the complete, up-to-date list of all endpoints and their implementations, see the Resend plugin source code on GitHub.

Emails

Send and manage email messages.

send

emails.send

Send an email.

const email = await corsair.resend.api.emails.send({
    from: "onboarding@resend.com",
    to: "delivered@resend.dev",
    subject: "Hello World",
    html: "<p>It works!</p>",
});

Parameters:

NameTypeRequiredDescription
fromstringYesSender email address
tostring | string[]YesRecipient email address(es)
subjectstringYesEmail subject
htmlstringNoHTML content
textstringNoPlain text content
ccstring | string[]NoCC recipients
bccstring | string[]NoBCC recipients
reply_tostring | string[]NoReply-to address(es)
attachmentsArray<object>NoEmail attachments
tagsArray<{name: string, value: string}>NoEmail tags
headersRecord<string, string>NoCustom headers

get

emails.get

Get a specific email.

const email = await corsair.resend.api.emails.get({
    id: "email-id",
});

Parameters:

NameTypeRequiredDescription
idstringYesEmail ID

list

emails.list

List emails.

const emails = await corsair.resend.api.emails.list({
    limit: 10,
    cursor: "cursor-token",
});

Parameters:

NameTypeRequiredDescription
limitnumberNoNumber of results to return
cursorstringNoPagination cursor

Domains

Manage email domains.

create

domains.create

Create a new domain.

const domain = await corsair.resend.api.domains.create({
    name: "example.com",
    region: "us-east-1",
});

Parameters:

NameTypeRequiredDescription
namestringYesDomain name
region'us-east-1' | 'eu-west-1' | 'sa-east-1'NoAWS region

get

domains.get

Get a specific domain.

const domain = await corsair.resend.api.domains.get({
    id: "domain-id",
});

Parameters:

NameTypeRequiredDescription
idstringYesDomain ID

list

domains.list

List domains.

const domains = await corsair.resend.api.domains.list({
    limit: 10,
});

Parameters:

NameTypeRequiredDescription
limitnumberNoNumber of results to return
cursorstringNoPagination cursor

delete

domains.delete

Delete a domain.

await corsair.resend.api.domains.delete({
    id: "domain-id",
});

Parameters:

NameTypeRequiredDescription
idstringYesDomain ID to delete

verify

domains.verify

Verify a domain.

await corsair.resend.api.domains.verify({
    id: "domain-id",
});

Parameters:

NameTypeRequiredDescription
idstringYesDomain ID to verify