StatusDashboard
Email

Email deliverability

Retrieve email sending health, bounce and complaint statistics, and active findings for your organization.

View Markdown

GET /app/notifications/email/deliverability

Returns email sending health for the authenticated organization — sending and reputation status, bounce and complaint statistics for a UTC lookback window, a daily series, and active reputation findings. Read-only; does not change sending policy or pause/resume sending.

Requires the admin or subscriber role and the Email notifications feature entitlement.


Request

See API Basics for required headers.

Query parameters

ParameterTypeRequiredDescription
daysintegerNoNumber of UTC calendar days ending today (inclusive). Today is a partial day through request time. Must be 7, 14, or 30. Defaults to 7.

Sample request

curl "https://api.statusdashboard.com/app/notifications/email/deliverability?days=7" \
  -H "Authorization: Bearer bcf847abf5c6:def456"

Sample response

Status: 200 OK

{
  "availability": "ok",
  "window": {
    "days": 7,
    "timezone": "UTC",
    "start": "2026-08-30T00:00:00.000Z",
    "end": "2026-09-05T16:45:00.000Z"
  },
  "sending": {
    "status": "enabled",
    "pausedBy": null
  },
  "reputation": {
    "status": "healthy"
  },
  "stats": {
    "sends": 1200,
    "bounces": 12,
    "complaints": 1,
    "bounceRate": 0.01,
    "complaintRate": 0.0008333333333333334
  },
  "days": [
    { "date": "2026-08-30", "sends": 80, "bounces": 1, "complaints": 0 },
    { "date": "2026-09-05", "sends": 2, "bounces": 0, "complaints": 0 }
  ],
  "findings": []
}

When email is entitled but sending setup is not complete yet, or sending health is not yet available, availability is "pending", sending and reputation statuses are null, stats are zero, days is still dense and zero-filled, and findings is [].


Response fields

FieldTypeDescription
availabilitystring"ok" when sending health data is available; "pending" when setup is still in progress or sending health is not yet available
window.daysintegerNumber of UTC calendar days in the window (7, 14, or 30)
window.timezonestringAlways "UTC"
window.startstringISO-8601 UTC midnight of the first day in the window
window.endstringISO-8601 UTC time of the request
sending.statusstring | null"enabled", "paused", or "reinstated"; null when pending
sending.pausedBystring | null"automatic" or "manual" when paused; otherwise null
reputation.statusstring | null"healthy", "warning", or "critical"; null when pending
stats.sendsnumberTotal sends in the window (sum of days[].sends)
stats.bouncesnumberTotal bounces in the window
stats.complaintsnumberTotal complaints in the window
stats.bounceRatenumberbounces / sends when sends > 0; otherwise 0
stats.complaintRatenumbercomplaints / sends when sends > 0; otherwise 0
daysarrayDense series of exactly window.days UTC calendar days, ascending, zero-filled where no activity. The last day is today and is partial through window.end.
days[].datestringUTC calendar day (YYYY-MM-DD)
days[].sendsnumberNon-negative send count
days[].bouncesnumberNon-negative bounce count
days[].complaintsnumberNon-negative complaint count
findingsarrayActive reputation findings for your organization
findings[].typestring"bounce", "complaint", "third_party", "blocklist", or "other"
findings[].severitystring"warning" or "critical"
findings[].statusstring"open" or "resolved"
findings[].descriptionstringScrubbed finding summary (max 512 characters)
findings[].createdAtstringISO-8601 creation time
findings[].updatedAtstringISO-8601 last update time

Error responses

StatusWhen
400days is present and not 7, 14, or 30
403Missing role or email feature entitlement
500Unexpected server error after sending setup is known to exist

On this page

We use cookies

We use essential cookies to keep the site working, and optional analytics cookies to understand how it's used. Read our Privacy Policy.