# Per-account health and job history

> Two account-scoped endpoints give you the same data filtered to a single mailbox. Both take the account ID from the URL, not X-Project-Id.

Source: https://warmerly.com/docs/warmup/per-account-health-and-job-history

Two account-scoped endpoints give you the same data filtered to a single mailbox. Both take the account ID from the URL, not `X-Project-Id`.

## Get an account's health snapshots

```text
GET /accounts/{id}/health
```

| Query param | Type | Default | Description |
| --- | --- | --- | --- |
| `days` | integer, 1-365 | `90` | How far back to return daily snapshots. |

```bash
curl "https://app.warmerly.com/api/v1/accounts/1c2d3e4f-.../health?days=30" \
  -H "X-Api-Key: wmv_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
```

```json
{
  "health": [
    {
      "id": "b3e1c9a0-....",
      "accountId": "1c2d3e4f-....",
      "date": "2026-07-02",
      "sentCount": 22,
      "inboxCount": 20,
      "spamCount": 1,
      "bounceCount": 1,
      "replyCount": 3,
      "openCount": 17,
      "score": 89,
      "trend": "up",
      "spamScore": 0,
      "computedAt": "2026-07-02T00:15:00.000Z"
    }
  ]
}
```

`health` is ordered most recent first. `trend` is `up`, `flat`, or `down`. Each entry also carries `inboxRate`, `bounceRate` and `replyRate`, fractions between 0 and 1 of `sentCount`.

## Get an account's warmup job history

```text
GET /accounts/{id}/warmup-jobs
```

Returns the last 100 jobs (sent or received) for the account, plus a daily summary of the last 90 days. Returns `404` if the account doesn't exist.

```bash
curl "https://app.warmerly.com/api/v1/accounts/1c2d3e4f-.../warmup-jobs" \
  -H "X-Api-Key: wmv_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
```

```json
{
  "jobs": [
    {
      "id": "9b1deb4d-....",
      "scheduledAt": "2026-07-02T08:00:00.000Z",
      "sentAt": "2026-07-02T08:00:42.000Z",
      "status": "processed",
      "senderAccountId": "1c2d3e4f-....",
      "recipientAccountId": "2d3e4f5a-....",
      "subject": "Re: quick question about the roadmap",
      "deliveredFolder": "inbox",
      "wasOpened": true,
      "wasReplied": false,
      "emailType": "reply"
    }
  ],
  "dailySummary": [
    { "day": "2026-07-02", "sent": 22, "received": 19, "inbox": 20, "promotions": 0, "spam": 1, "bounce": 0 }
  ]
}
```

`dailySummary` covers the trailing 90 days, newest day first: `sent` counts jobs the account sent, `received` counts jobs delivered to it, `inbox`, `promotions` and `spam` count only processed jobs the account sent that landed in each folder, and `bounce` counts jobs it sent that failed with a permanent error.

## More from Warmup

- [List warmup jobs](https://warmerly.com/docs/warmup/list-warmup-jobs): Returns individual warmup emails (a "job" is one email sent from one warmed mailbox to another), most recent…
- [Pause and resume warmup on an account](https://warmerly.com/docs/warmup/pause-and-resume-warmup-on-an-account): Warmup only runs against accounts with status = active or aging. Pausing an account stops it from being…
- [Mailbox health alerts](https://warmerly.com/docs/warmup/mailbox-health-alerts): The last 50 mailbox-health alerts that are still open for your user, newest first. Alerts whose fault has…
