Skip to main content
POST
/
v1
/
email
curl -X POST https://app.nautilus.co/api/v1/email \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "customer@example.com",
    "subject": "Your monthly wash summary",
    "html": "<h1>Hi!</h1><p>You washed 12 times this month.</p>"
  }'
{
  "success": true,
  "results": [
    {
      "to": "customer@example.com",
      "success": true,
      "id": "abc123"
    }
  ]
}
curl -X POST https://app.nautilus.co/api/v1/email \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "customer@example.com",
    "subject": "Your monthly wash summary",
    "html": "<h1>Hi!</h1><p>You washed 12 times this month.</p>"
  }'

Sender address

The from field is optional. If omitted, emails are sent from Nautilus <contact@mail.nautilus.co>. When provided, the address must use the @mail.nautilus.co domain. You can include a display name:
Squeaky Clean <squeaky@mail.nautilus.co>

Attachments

Add files to an email with the attachments array. Each attachment requires a filename and either:
  • path — a publicly accessible URL to the file
  • content — the file as a base64-encoded string
FieldTypeRequiredDescription
filenamestringYesFilename with extension (e.g. report.pdf)
pathstringNoPublic URL to the file
contentstringNoBase64-encoded file content
Each attachment must include either path or content, but not both.

Multi-send behavior

When sending to multiple recipients, each email is dispatched in parallel. The response includes per-recipient results:
  • 200 — All recipients succeeded
  • 207 — At least one recipient failed (check results for details)
Individual failures do not block other recipients. Successful results include an id field for tracking.

Authorizations

Authorization
string
header
required

API key provided by Nautilus. Pass as Authorization: Bearer <token>.

Body

application/json
to
required

Recipient email address(es). Accepts a single address or an array.

Example:

"customer@example.com"

subject
string
required

The email subject line.

Minimum string length: 1
html
string
required

The email body as HTML.

Minimum string length: 1
from
string

Sender address. Must use the @mail.nautilus.co domain. Supports display name format: Name <email@mail.nautilus.co>. Defaults to Nautilus <contact@mail.nautilus.co>.

replyTo
string<email>

Optional reply-to email address.

attachments
object[]

Optional file attachments. Each must include a filename and either a path (public URL) or content (base64-encoded string).

Response

All emails sent successfully

success
boolean
required

true when every recipient was sent successfully, false otherwise.

results
object[]
required

Per-recipient delivery results.