Authentication
evre supports two auth modes on the same HTTP API.
API token (recommended for apps)
Send a project-scoped Bearer token:
Authorization: Bearer evre_...
Create and revoke keys via the dashboard or POST /api-keys / DELETE /api-keys/{id}.
Console session
Dashboard and some owner-only actions (for example POST /projects) use:
X-Evre-Session: <session token>
X-Project-Id: proj_...
The TypeScript SDK accepts either apiToken or sessionToken + projectId.
Idempotency
POST /emails accepts an optional Idempotency-Key header (1–256 chars). Retries with the same key and body return the original id.
Errors
Failed requests return JSON:
{
"name": "validation_error",
"message": "…",
"statusCode": 422
}
See Errors.