Documentation

SendFleet API reference

One sending endpoint. Two sending modes. Deliver transactional email through your own AWS SES account (BYOC) or through SendFleet's managed infrastructure. Both modes use the same API key and request fields, with the limits and response fields documented below.

Reference

How it works

SendFleet sits between your application and AWS SES. You make a single HTTP request; we accept it, queue it, and deliver it asynchronously. Which SES account delivers the mail depends on the sending mode of the domain in your from_email.

Your app
POST /v1/send
SendFleet
Validate & accept
BYOC
Your AWS SES
Shared SES
Managed SES
The routing decision is automatic, based on the sending mode set on the domain used in from_email. The mode is fixed when the domain is added and cannot be changed afterwards.

Base URL

Base URL
https://api.sendfleet.net/v1

Use this base URL for authenticated API requests. The supported endpoints are listed below; their links describe the request and response contracts.

Supported API endpoints
MethodURLReference
POSThttps://api.sendfleet.net/v1/sendSend Email
GEThttps://api.sendfleet.net/v1/meCurrent Account

Request format

Authenticate both endpoints with the X-API-Key header. For sending, use Content-Type: application/json and a JSON request body. GET /v1/me does not require a request body. API responses are JSON.

Choosing a mode

RequirementBYOCShared SES
Email content stored by SendFleetBodies never; metadata only with email logs on14 days
AWS account requiredYes (yours)No
Sender reputationYours aloneShared pool
Email logs in dashboardOptional, metadata onlyYes
Delivery webhooksBYOC plan, from your own SES eventsYes
Bounce & complaint handlingTracked in your AWS account, with protection you chooseManaged for you
SetupVerify email, connect your AWS account in one click, verify a domainVerify email, pick a Managed plan, verify a domain

Not sure? BYOC gives you an isolated sender reputation, and SendFleet never stores BYOC message bodies in its database; recipients and subjects only while email logs are on. Shared SES needs no AWS account at all and includes dashboard logs, webhooks, and managed bounce handling on every Managed plan. See BYOC Setup or Shared SES.

Successful response

A 200 OK means the email was accepted and queued. Delivery happens asynchronously, so this is not yet a delivery confirmation.

200 OK: Shared SES
{
  "success":         true,
  "message":         "Email queued for delivery.",
  "message_id":      "1a2b3c4d-5e6f-7890-abcd-ef1234567890",
  "idempotency_key": "8f14e45fceea167a5a36dedd4bea2543",
  "mode":            "shared"
}

idempotency_key is the value to store: it appears on every webhook fired for this send, so it is how you tie a response to its delivery events. It is returned on Shared SES, and on BYOC while delivery tracking is on. Full field reference on the Send Email page.

Next steps

Where to go next
TopicDescription
Send Email referenceEvery request parameter, HTML bodies, attachments, and reply-to.
DNS recordsDKIM, MAIL FROM, and DMARC for the best inbox placement.
Error codesUnderstand and handle every error response.
Plans & limitsRate limits, monthly quotas, and upgrade paths.