---
title: "Org-wide SES health rollup"
method: GET
path: "/v1/account/health"
tags: ["account"]
---

# Org-wide SES health rollup

`GET /v1/account/health`

## Request

- Base URL: `https://api.wraps.dev`
- URL: `https://api.wraps.dev/v1/account/health`
- Auth: HTTP bearer

Returns the SES health verdict the hourly account-health sweep last persisted for every AWS account connected to this organization, plus the org-wide rollup (worst status wins; `unknown` outranks `healthy`). Zero AWS calls — this is Postgres-only, bounded by the freshness of the last hourly sweep (`checkedAt`).

## Response `200`

- object
  - `status` union, required
    - string
    - string
    - string
    - string
  - `checkedAt` string, required
  - `accounts` object[], required
    - `id` string, required
    - `accountNumber` string, required
    - `region` string, required
    - `status` union, required
      - string
      - string
      - string
      - string
    - `checkedAt` string, required
    - `sandbox` boolean, required
    - `productionAccessEnabled` boolean, required
    - `sendingEnabled` boolean, required
    - `enforcementStatus` string, required
    - `quota` object, required
      - `max24Hour` number, required
      - `sentLast24Hours` number, required
      - `usedRatio` number, required
      - `maxSendRate` number, required
    - `reputation` object, required
      - `bounceRate` number, required
      - `complaintRate` number, required
    - `thresholds` object, required
      - `bounceReview` number, required
      - `bouncePause` number, required
      - `complaintReview` number, required
      - `complaintPause` number, required
      - `quotaWarn` number, required
    - `reasons` string[], required

## Other responses

- `400`: Malformed request — unparseable body or an invalid parameter.
- `401`: Missing, malformed, or revoked credentials. Send `Authorization: Bearer <api key>`.
- `403`: Authenticated, but the resource belongs to another organization.
- `404`: No such route, or no such resource in this organization.
- `422`: The request parsed but failed schema validation.
- `429`: Rate limit exceeded. Wait for the window named by the RateLimit headers.
- `500`: Unexpected server failure. Safe to retry with backoff; quote `requestId` if it persists.

---

[API](https://skmtc.dev/wraps/apis/wraps-platform-api.md) · [All operations](https://skmtc.dev/wraps/apis/wraps-platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/wraps/apis/wraps-platform-api/revisions/12116fb21af7?raw)
