Documentation Index
Fetch the complete documentation index at: https://resend.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
[
](#error-schema)
Error schema
We use standard HTTP response codes for success and failure notifications, and our errors are further classified by type.
[
](#invalid_idempotency_key)
invalid_idempotency_key
- Status: 400
- Message: The key must be between 1-256 chars.
- Suggested action: Retry with a valid idempotency key.
[
](#validation_error)
validation_error
- Status: 400
- Message: We found an error with one or more fields in the request.
- Suggested action: The message will contain more details about what field and error were found.
[
](#missing_api_key)
missing_api_key
- Status: 401
- Message: Missing API key in the authorization header.
- Suggested action: Include the following header in the request:
Authorization: Bearer YOUR_API_KEY.
[
](#restricted_api_key)
restricted_api_key
- Status: 401
- Message: This API key is restricted to only send emails.
- Suggested action: Make sure the API key has
Full accessto perform actions other than sending emails.
[
](#invalid_api_key)
invalid_api_key
- Status: 403
- Message: API key is invalid.
- Suggested action: Make sure the API key is correct or generate a new API key in the dashboard.
[
](#validation_error-2)
validation_error
- Status: 403
- Message: You can only send testing emails to your own email address (
youremail@domain.com). To send emails to other recipients, please verify a domain at resend.com/domains, and change thefromaddress to an email using this domain. - Suggested action: In Resend’s Domain page, add and verify a domain for which you have DNS access. This allows you to send emails to addresses beyond your own. Learn more about resolving this error.
[
](#validation_error-3)
validation_error
- Status: 403
- Message: The
domain.comdomain is not verified. Please, add and verify your domain. - Suggested action: Make sure the domain in your API request’s
fromfield matches a domain you’ve verified in Resend. Update your API request to use your verified domain, or add and verify the domain you’re trying to use. Learn more about resolving this error.
[
](#validation_error-4)
validation_error
- Status: 403
- Message: The
example.comdomain has been registered already. - Suggested action: Verify you are signed in to the correct Resend account and check whether a teammate already added the domain. If you still cannot access it, contact support. Learn more about resolving this error.
[
](#not_found)
not_found
- Status: 404
- Message: The requested endpoint does not exist.
- Suggested action: Change your request URL to match a valid API endpoint.
[
](#method_not_allowed)
method_not_allowed
- Status: 405
- Message: Method is not allowed for the requested path.
- Suggested action: Change your API endpoint to use a valid method.
[
](#invalid_idempotent_request)
invalid_idempotent_request
- Status: 409
- Message: Same idempotency key used with a different request payload.
- Suggested action: Change your idempotency key or payload.
[
](#concurrent_idempotent_requests)
concurrent_idempotent_requests
- Status: 409
- Message: Same idempotency key used while original request is still in progress.
- Suggested action: Try the request again later.
[
](#invalid_attachment)
invalid_attachment
- Status: 422
- Message: Attachment must have either a
contentorpath. - Suggested action: Attachments must either have a
content(strings, Buffer, or Stream contents) orpathto a remote resource (better for larger attachments).
[
](#invalid_from_address)
invalid_from_address
- Status: 422
- Message: Invalid
fromfield. - Suggested action: Make sure the
fromfield is valid. The email address needs to follow theemail@example.comorName <email@example.com>format.
[
](#invalid_access)
invalid_access
- Status: 422
- Message: Access must be “full_access” | “sending_access”.
- Suggested action: Make sure the API key has necessary permissions.
[
](#invalid_parameter)
invalid_parameter
- Status: 422
- Message: The
parametermust be a valid UUID. - Suggested action: Check the value and make sure it’s valid.
[
](#invalid_region)
invalid_region
- Status: 422
- Message: Region must be “us-east-1” | “eu-west-1” | “sa-east-1”.
- Suggested action: Make sure the correct region is selected.
[
](#missing_required_field)
missing_required_field
- Status: 422
- Message: The request body is missing one or more required fields.
- Suggested action: Check the error message to see the list of missing fields.
[
](#monthly_quota_exceeded)
monthly_quota_exceeded
- Status: 429
- Message: You have reached your monthly email quota.
- Suggested action: Upgrade your plan to increase the monthly email quota. Both sent and received emails count towards this quota.
[
](#daily_quota_exceeded)
daily_quota_exceeded
- Status: 429
- Message: You have reached your daily email quota.
- Suggested action: Upgrade your plan to remove the daily quota limit or wait until 24 hours have passed. Both sent and received emails count towards this quota.
[
](#rate_limit_exceeded)
rate_limit_exceeded
- Status: 429
- Message: Too many requests. Please limit the number of requests per second. Or contact support to increase rate limit.
- Suggested action: You should read the response headers and reduce the rate at which you request the API. This can be done by introducing a queue mechanism or reducing the number of concurrent requests per second. If you have specific requirements, contact support to request a rate increase.
[
](#security_error)
security_error
- Status: 451
- Message: We may have found a security issue with the request.
- Suggested action: The message will contain more details. Contact support for more information.
[
](#application_error)
application_error
- Status: 500
- Message: An unexpected error occurred.
- Suggested action: Try the request again later. If the error does not resolve, check our status page for service updates.
[
](#internal_server_error)
internal_server_error
- Status: 500
- Message: An unexpected error occurred.
- Suggested action: Try the request again later. If the error does not resolve, check our status page for service updates.