Skip to main content
Resend logo

Overview

Add Resend to any ModuleX agent or workflow. Send transactional and marketing emails, retrieve email status, manage contacts, and view domains via the Resend REST API (api.resend.com).
Categories: Communication · Email · Email Marketing · Auth: API Key · Actions: 8

Authentication

API Key Authentication

Authenticate using your Resend API key
1

Step 1

Go to https://resend.com and sign up or log in
2

Step 2

Navigate to the ‘API Keys’ section in the dashboard
3

Step 3

Create a new API key (it starts with ‘re_’)
4

Step 4

Paste the API key below

Required Credentials

FieldDescriptionRequiredFormat
Resend API KeyYour Resend API key from resend.com/api-keysYesre_xxxxxxxxxxxxxxxxxxxxxxxxx

Available Actions

Parameters

from_address
string
required
Email address to send from (e.g. “sender@example.com” or “Sender Name <sender@example.com>”)
to
string
required
Recipient email address (e.g. “recipient@example.com” or “Recipient Name <recipient@example.com>”)
subject
string
required
Email subject line
body
string
required
Email body content (plain text or HTML based on content_type)
content_type
string
Content type for the body: “text” for plain text or “html” (Default: text)
cc
string
Carbon copy recipient email address
bcc
string
Blind carbon copy recipient email address
reply_to
string
Reply-to email address
scheduled_at
string
Schedule email to be sent later in ISO 8601 format
tags
string
Comma-separated key:value pairs for email tags (e.g. “category:welcome,type:onboarding”)

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Id"
    },
    "to": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "To"
    },
    "subject": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Subject"
    },
    "body": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Body"
    }
  },
  "required": [
    "success"
  ],
  "title": "SendOutput",
  "type": "object"
}

Parameters

email_id
string
required
The ID of the email to retrieve

Response

{
  "$defs": {
    "EmailTag": {
      "additionalProperties": false,
      "description": "A single tag name/value pair attached to an email.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Name"
        },
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Value"
        }
      },
      "title": "EmailTag",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Id"
    },
    "sender": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Sender"
    },
    "to": {
      "items": {
        "type": "string"
      },
      "title": "To",
      "type": "array"
    },
    "subject": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Subject"
    },
    "html": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Html"
    },
    "text": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Text"
    },
    "cc": {
      "items": {
        "type": "string"
      },
      "title": "Cc",
      "type": "array"
    },
    "bcc": {
      "items": {
        "type": "string"
      },
      "title": "Bcc",
      "type": "array"
    },
    "reply_to": {
      "items": {
        "type": "string"
      },
      "title": "Reply To",
      "type": "array"
    },
    "last_event": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Last Event"
    },
    "created_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Created At"
    },
    "scheduled_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Scheduled At"
    },
    "tags": {
      "items": {
        "$ref": "#/$defs/EmailTag"
      },
      "title": "Tags",
      "type": "array"
    }
  },
  "required": [
    "success"
  ],
  "title": "GetEmailOutput",
  "type": "object"
}

Parameters

email
string
required
Email address of the contact
first_name
string
First name of the contact
last_name
string
Last name of the contact
unsubscribed
boolean
Whether the contact is unsubscribed from all broadcasts

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Id"
    }
  },
  "required": [
    "success"
  ],
  "title": "CreateContactOutput",
  "type": "object"
}

Response

{
  "$defs": {
    "ContactItem": {
      "additionalProperties": false,
      "description": "A single contact row in ``list_contacts``.",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "email": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Email"
        },
        "first_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "First Name"
        },
        "last_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Last Name"
        },
        "created_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Created At"
        },
        "unsubscribed": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Unsubscribed"
        }
      },
      "title": "ContactItem",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "contacts": {
      "items": {
        "$ref": "#/$defs/ContactItem"
      },
      "title": "Contacts",
      "type": "array"
    },
    "has_more": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Has More"
    }
  },
  "required": [
    "success"
  ],
  "title": "ListContactsOutput",
  "type": "object"
}

Parameters

contact_id
string
required
The contact ID or email address to retrieve

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Id"
    },
    "email": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Email"
    },
    "first_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "First Name"
    },
    "last_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Last Name"
    },
    "created_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Created At"
    },
    "unsubscribed": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Unsubscribed"
    }
  },
  "required": [
    "success"
  ],
  "title": "GetContactOutput",
  "type": "object"
}

Parameters

contact_id
string
required
The contact ID or email address to update
first_name
string
Updated first name
last_name
string
Updated last name
unsubscribed
boolean
Whether the contact should be unsubscribed from all broadcasts

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Id"
    }
  },
  "required": [
    "success"
  ],
  "title": "UpdateContactOutput",
  "type": "object"
}

Parameters

contact_id
string
required
The contact ID or email address to delete

Response

{
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Id"
    },
    "deleted": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Deleted"
    }
  },
  "required": [
    "success"
  ],
  "title": "DeleteContactOutput",
  "type": "object"
}

Response

{
  "$defs": {
    "DomainItem": {
      "additionalProperties": false,
      "description": "A single domain row in ``list_domains``.",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Name"
        },
        "status": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Status"
        },
        "region": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Region"
        },
        "created_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Created At"
        }
      },
      "title": "DomainItem",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "success": {
      "title": "Success",
      "type": "boolean"
    },
    "error": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Error"
    },
    "domains": {
      "items": {
        "$ref": "#/$defs/DomainItem"
      },
      "title": "Domains",
      "type": "array"
    },
    "has_more": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Has More"
    }
  },
  "required": [
    "success"
  ],
  "title": "ListDomainsOutput",
  "type": "object"
}

Limits & Quotas

  • Rate limit: 2 requests/second by default (Resend account level).
  • Scheduling: emails can be scheduled up to 30 days ahead via scheduled_at (ISO 8601 timestamp).
  • Error model: non-2xx responses and timeouts are caught and returned as success=False + error rather than raising. Plan for retries on the agent side based on the error string.

AgentMail

Gmail

Mailgun