Documentation Index Fetch the complete documentation index at: https://lava.so/docs/llms.txt
Use this file to discover all available pages before exploring further.
Transactional and marketing email API for sending, scheduling, and tracking messages from a verified domain. Best for product notifications, onboarding flows, password resets, and broadcasts to a contact list. Unlike SMTP relays, Resend ships a developer-first REST API with React-email rendering, idempotency keys, templates, automations, and per-message logs out of the box.
20 example endpoints available through Lava’s AI Gateway. See the Resend API docs for full documentation.
This provider requires your own credentials — connect your API key or OAuth account before use.
This is a
catch-all provider — any valid URL under
https://api.resend.com is supported. Any Resend API endpoint except credential-management routes such as api-keys. Construct URL as
https://api.resend.com/{path} . Common roots: emails, broadcasts, automations, events, templates, contacts, contact-properties, segments, topics, domains, logs, webhooks, audiences (deprecated). See
https://resend.com/docs/api-reference/introduction for the full reference. Default upstream rate limit: 5 requests/second per team. The endpoints below are curated examples.
Endpoints
Send a transactional email from a verified sender. Supports html, text, attachments, tags, and templates.
POST https://api.resend.com/emails — Free
const data = await lava . gateway ( 'https://api.resend.com/emails' , {
body: {
"from" : "Acme <onboarding@resend.dev>" ,
"to" : [
"delivered@resend.dev"
],
"subject" : "hello world" ,
"html" : "<p>it works!</p>"
},
});
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Femails" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"from":"Acme <onboarding@resend.dev>","to":["delivered@resend.dev"],"subject":"hello world","html":"<p>it works!</p>"}'
Send up to 100 emails in a single request.
POST https://api.resend.com/emails/batch — Free
const data = await lava . gateway ( 'https://api.resend.com/emails/batch' , {
body: [
{
"from" : "Acme <onboarding@resend.dev>" ,
"to" : [
"delivered@resend.dev"
],
"subject" : "first" ,
"html" : "<p>one</p>"
},
{
"from" : "Acme <onboarding@resend.dev>" ,
"to" : [
"delivered@resend.dev"
],
"subject" : "second" ,
"html" : "<p>two</p>"
}
],
});
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Femails%2Fbatch" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '[{"from":"Acme <onboarding@resend.dev>","to":["delivered@resend.dev"],"subject":"first","html":"<p>one</p>"},{"from":"Acme <onboarding@resend.dev>","to":["delivered@resend.dev"],"subject":"second","html":"<p>two</p>"}]'
List sent emails (cursor-paginated).
GET https://api.resend.com/emails — Free
const data = await lava . gateway ( 'https://api.resend.com/emails' , { method: 'GET' });
curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Femails" \
-H "Authorization: Bearer $LAVA_SECRET_KEY "
Retrieve a single sent email by id.
GET https://api.resend.com/emails/{email_id} — Free
const data = await lava . gateway ( 'https://api.resend.com/emails/{email_id}' , { method: 'GET' });
curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Femails%2F%7Bemail_id%7D" \
-H "Authorization: Bearer $LAVA_SECRET_KEY "
Update a scheduled email (e.g., reschedule the send time before it goes out).
PATCH https://api.resend.com/emails/{email_id} — Free
const data = await lava . gateway ( 'https://api.resend.com/emails/{email_id}' , { method: 'PATCH' , body: { "scheduled_at" : "2026-06-01T12:00:00Z" } });
curl -X PATCH "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Femails%2F%7Bemail_id%7D" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"scheduled_at":"2026-06-01T12:00:00Z"}'
Cancel a scheduled email before it is sent.
POST https://api.resend.com/emails/{email_id}/cancel — Free
const data = await lava . gateway ( 'https://api.resend.com/emails/{email_id}/cancel' , { method: 'POST' });
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Femails%2F%7Bemail_id%7D%2Fcancel" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json"
Create a broadcast (one-to-many email campaign) targeting a segment or audience.
POST https://api.resend.com/broadcasts — Free
const data = await lava . gateway ( 'https://api.resend.com/broadcasts' , {
body: {
"name" : "Launch announcement" ,
"from" : "Acme <onboarding@resend.dev>" ,
"subject" : "We just shipped" ,
"html" : "<p>Big news.</p>" ,
"audience_id" : "78261eea-8f8b-4381-83c6-79fa7120f1cf"
},
});
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fbroadcasts" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"name":"Launch announcement","from":"Acme <onboarding@resend.dev>","subject":"We just shipped","html":"<p>Big news.</p>","audience_id":"78261eea-8f8b-4381-83c6-79fa7120f1cf"}'
Send (or schedule) a previously created broadcast.
POST https://api.resend.com/broadcasts/{broadcast_id}/send — Free
const data = await lava . gateway ( 'https://api.resend.com/broadcasts/{broadcast_id}/send' , { body: { "scheduled_at" : "in 1 hour" } });
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fbroadcasts%2F%7Bbroadcast_id%7D%2Fsend" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"scheduled_at":"in 1 hour"}'
List broadcasts in the workspace.
GET https://api.resend.com/broadcasts — Free
const data = await lava . gateway ( 'https://api.resend.com/broadcasts' , { method: 'GET' });
curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fbroadcasts" \
-H "Authorization: Bearer $LAVA_SECRET_KEY "
POST https://api.resend.com/contacts — Free
const data = await lava . gateway ( 'https://api.resend.com/contacts' , {
body: {
"email" : "jane@example.com" ,
"first_name" : "Jane" ,
"last_name" : "Doe" ,
"unsubscribed" : false
},
});
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fcontacts" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"email":"jane@example.com","first_name":"Jane","last_name":"Doe","unsubscribed":false}'
GET https://api.resend.com/contacts — Free
const data = await lava . gateway ( 'https://api.resend.com/contacts' , { method: 'GET' });
curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fcontacts" \
-H "Authorization: Bearer $LAVA_SECRET_KEY "
POST https://api.resend.com/segments — Free
const data = await lava . gateway ( 'https://api.resend.com/segments' , { body: { "name" : "US customers" , "filters" : []} });
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fsegments" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"name":"US customers","filters":[]}'
Create a reusable email template with variables.
POST https://api.resend.com/templates — Free
const data = await lava . gateway ( 'https://api.resend.com/templates' , {
body: {
"name" : "Welcome" ,
"subject" : "Welcome to {{ company }}" ,
"html" : "<p>Hi {{ first_name }}</p>"
},
});
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Ftemplates" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"name":"Welcome","subject":"Welcome to {{ company }}","html":"<p>Hi {{ first_name }}</p>"}'
Replace an existing template by id.
PUT https://api.resend.com/templates/{template_id} — Free
const data = await lava . gateway ( 'https://api.resend.com/templates/{template_id}' , {
method: 'PUT' ,
body: {
"name" : "Welcome" ,
"subject" : "Updated subject" ,
"html" : "<p>Updated body</p>"
},
});
curl -X PUT "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Ftemplates%2F%7Btemplate_id%7D" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"name":"Welcome","subject":"Updated subject","html":"<p>Updated body</p>"}'
List templates in the workspace.
GET https://api.resend.com/templates — Free
const data = await lava . gateway ( 'https://api.resend.com/templates' , { method: 'GET' });
curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Ftemplates" \
-H "Authorization: Bearer $LAVA_SECRET_KEY "
Add a sending domain. DNS records must be verified separately.
POST https://api.resend.com/domains — Free
const data = await lava . gateway ( 'https://api.resend.com/domains' , { body: { "name" : "example.com" , "region" : "us-east-1" } });
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fdomains" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"name":"example.com","region":"us-east-1"}'
List sending domains.
GET https://api.resend.com/domains — Free
const data = await lava . gateway ( 'https://api.resend.com/domains' , { method: 'GET' });
curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fdomains" \
-H "Authorization: Bearer $LAVA_SECRET_KEY "
List per-request API logs (delivery, bounces, opens, clicks).
GET https://api.resend.com/logs — Free
const data = await lava . gateway ( 'https://api.resend.com/logs' , { method: 'GET' });
curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Flogs" \
-H "Authorization: Bearer $LAVA_SECRET_KEY "
Delete a sending domain by id.
DELETE https://api.resend.com/domains/{domain_id} — Free
const data = await lava . gateway ( 'https://api.resend.com/domains/{domain_id}' , { method: 'DELETE' });
curl -X DELETE "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fdomains%2F%7Bdomain_id%7D" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json"
Register a webhook endpoint to receive email delivery / bounce / open / click events.
POST https://api.resend.com/webhooks — Free
const data = await lava . gateway ( 'https://api.resend.com/webhooks' , {
body: {
"endpoint" : "https://example.com/resend-webhook" ,
"events" : [
"email.sent" ,
"email.delivered" ,
"email.bounced"
]
},
});
curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.resend.com%2Fwebhooks" \
-H "Authorization: Bearer $LAVA_SECRET_KEY " \
-H "Content-Type: application/json" \
-d '{"endpoint":"https://example.com/resend-webhook","events":["email.sent","email.delivered","email.bounced"]}'
Next Steps
All Providers Browse all supported AI providers
Forward Proxy Learn how to construct proxy URLs and authenticate requests