GETAuthorize · Resend

Understand general concepts, response codes, and authentication strategies.

Base URL

The Resend API is built on REST principles. HTTPS is enforced in every request to improve data security, integrity, and privacy. The API does not support HTTP. All requests contain the following base URL:

Authentication

To authenticate you need to add an Authorization header with the contents of the header being Bearer re_xxxxxxxxx where re_xxxxxxxxx is your API Key.

User-Agent

All API requests must include a User-Agent header. Requests without this header will be rejected with a 403 status code. Most HTTP clients, all Resend SDKs, and the Resend CLI include this header automatically, but if you’re making direct HTTP requests, make sure to set it:

Response codes

Resend uses standard HTTP codes to indicate the success or failure of your requests. In general, 2xx HTTP codes correspond to success, 4xx codes are for user-related failures, and 5xx codes are for infrastructure issues.

StatusDescription
200Successful request.
400Check that the parameters were correct.
401The API key used was missing.
403The API key used was invalid.
404The resource was not found.
429The rate limit was exceeded.
5xxIndicates an error with Resend servers.

Rate limit

The default maximum rate limit is 10 requests per second per team. This limit applies across all API keys associated with your team. This number can be increased for trusted senders by request. You can view your team’s current rate limit on the Settings Usage page. After that, you’ll hit the rate limit and receive a 429 response error code. Learn more about our rate limits.

FAQ

Read the original on resend.com ↗