Resend
Communication API keySend transactional email and manage domains, audiences and contacts from any Windmill script, flow or app.
Set up in 3 steps
Create an API key
In the Resend dashboard, open API Keys and create one. Copy it — it is shown only once.
Add the resource in Windmill
Open Resources, add a resource of type resend, and paste the key.
Run your first script
Fork the send email script below. Until a domain is verified, Resend only accepts its own test sender address.
Scripts
Building blocks, if none of the projects above fit. Fork one, run it, or call it as a step inside your own flow.
Retrieve a list of contacts
Remove an existing audience
Retrieve a single contact
Create a new contact
Retrieve a list of audiences
Remove an existing contact by email
Create a list of contacts
Update an existing domain
Remove an existing contact by id
Retrieve a single audience
Update a single contact
Send an email
Retrieve a single domain
Create a new API key
Retrieve a list of API keys
Remove an existing domain
Verify an existing domain
Retrieve a list of domains
Retrieve a single email
Remove an existing API key
Trigger up to 100 batch emails at once.
Create a new domain
Resource type
resend — the shape of the credential every script on this page expects.
| Field | Type | Required | What it is |
|---|---|---|---|
| token | string | Yes |
Questions
My send is rejected
Almost always the sender domain. Resend requires it verified before it will send from it — until then, only its test address works.
Can I restrict the key?
Yes. Resend keys can be created with sending access only, rather than full access, which is what most scripts need.
Is my key stored on the hub?
Never. It lives only in your own Windmill workspace, encrypted at rest.