Introduction
The Averium API allows you to send emails programmatically from your apps. It uses simple HTTP requests with JSON bodies and returns JSON responses.
Base URL
https://api.averium.ai/v1Or via Supabase Edge Functions:
https://<project>.supabase.co/functions/v1/send-emailAuthentication
All API requests require a Bearer token:
Authorization: Bearer av_live_your_api_key_hereGenerate API keys in your Averium dashboard under Account → API Keys.
Send an email
POST /v1/send
Request body
| Parameter | Type | Required | Description |
|---|---|---|---|
| from | string | ✓ | Sender address. Must be a verified domain. |
| to | string | array | ✓ | Recipient(s). Max 50. |
| subject | string | ✓ | Email subject line. |
| html | string | * | HTML body. Required if text not provided. |
| text | string | * | Plain text body. Required if html not provided. |
| reply_to | string | — | Reply-to address. |
| cc | string | array | — | CC recipients. |
| bcc | string | array | — | BCC recipients. |
Example request
curl -X POST https://api.averium.ai/v1/send \
-H "Authorization: Bearer av_live_••••••••" \
-H "Content-Type: application/json" \
-d '{
"from": "hello@yourbrand.com",
"to": ["customer@example.com"],
"subject": "Your order is on the way!",
"html": "<p>Thanks for your order...</p>"
}'Rate Limits
| Limit | Value |
|---|---|
| Per API key | 100 requests/minute |
| Per organization | 500 requests/minute |
| Per IP (unauthenticated) | 10 requests/minute |
When exceeded, the API returns HTTP 429:
{ "error": "Rate limit exceeded", "retry_after": 60 }With headers: Retry-After: 60, X-RateLimit-Limit: 100, X-RateLimit-Resource: key
Error codes
| Code | Meaning |
|---|---|
| 400 | Bad request — missing or invalid parameters |
| 401 | Invalid or missing API key |
| 403 | API key lacks send permission |
| 422 | From domain not verified |
| 429 | Rate limit exceeded |
| 500 | Internal server error |