Mail
Sending email
Send transactional email through the Vorynza Mail REST API. Request fields, response format, and message statuses.
Send email programmatically using the Vorynza Mail REST API. Requires an API key with the
mail:send scope and a verified sending domain.
Send endpoint
POST /api/mail/send
Authorization: Bearer <api-key>
Content-Type: application/jsonRequest body
| Field | Type | Required | Description |
|---|---|---|---|
from | string | yes | Sender email address (must be on a verified domain) |
to | string[] | yes | Recipients (max 50) |
cc | string[] | no | CC recipients (max 25) |
bcc | string[] | no | BCC recipients (max 25) |
replyTo | string | no | Reply-to address |
subject | string | yes | Email subject (max 180 characters) |
text | string | no | Plain text body |
html | string | no | HTML body |
metadata | object | no | Custom metadata (must be JSON-serialisable) |
Example
curl -X POST https://api.vorynza.cloud/v1/mail/send \
-H "Authorization: Bearer vnz_mail_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"from": "hello@mail.yourcompany.com",
"to": ["user@example.com"],
"subject": "Hello from Vorynza Mail",
"text": "This is a plain text email.",
"html": "<p>This is an HTML email.</p>"
}'Response
Returns 202 Accepted when the message is queued for delivery.
{
"ok": true,
"messageId": "msg_abc123",
"status": "queued"
}Message statuses
| Status | Description |
|---|---|
queued | Message accepted and waiting to send |
sending | Message being delivered |
sent | Message accepted by the provider |
delivered | Message delivered to recipient |
bounced | Message rejected by recipient's mail server |
complained | Recipient marked message as spam |
rejected | Message rejected before sending (policy, quota, etc.) |
failed | Message failed due to a temporary error |
Delivery, bounce, and complaint events are processed from the provider and reflected in the message status automatically.
Delivery logs
Every message appears in your delivery logs with sender, recipients, subject, status history, and provider message ID. Logs are paginated by cursor and filterable by status.
Need help? Contact support.
