Skip to main content
The Simple Email API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

Base URL

https://api.simpleemailapi.dev/v1

Authentication

The Simple Email API uses bearer tokens for authentication. Include your API key in the Authorization header:
Authorization: Bearer sea_live_xxxxx
Keep your API keys secure. Do not share them in publicly accessible areas such as GitHub, client-side code, etc.

Rate Limits

API requests are rate limited to ensure fair usage:
Limit TypeLimit
Requests100 per minute
Concurrent Streams5
Standard rate limit headers are included in every response:
RateLimit-Limit: 100
RateLimit-Remaining: 99
RateLimit-Reset: 1640995200

Errors

The API uses Connect RPC error codes which map to standard HTTP status codes:
CodeHTTPDescription
invalid_argument400Client specified an invalid argument.
unauthenticated401Request not authenticated (missing/invalid token).
permission_denied403Client does not have sufficient permission.
not_found404A specified resource was not found.
already_exists409The resource that a client tried to create already exists.
resource_exhausted429Rate limit exceeded or resource quota reached.
internal500Internal server error.
Error responses follow the Connect RPC JSON format:
{
  "code": "invalid_argument",
  "message": "The 'to' field must contain at least one recipient",
  "details": [
    {
      "type": "google.rpc.BadRequest",
      "value": "base64-encoded-proto-message"
    }
  ]
}