---
title: "Re-test a mailbox connection"
method: POST
path: "/mailboxes/{id}/test"
tags: ["Mailboxes"]
---

# Re-test a mailbox connection

`POST /mailboxes/{id}/test`

## Request

- Base URL: `https://warmysender.com/api/v1`
- URL: `https://warmysender.com/api/v1/mailboxes/{id}/test`
- Auth: HTTP bearer

Re-runs the connection test against the stored credentials and updates the mailbox status. Rate limited. The mailbox status reflects the SENDING side only — a problem reading the inbox is reported in test_result.read_channel and never stops the mailbox from sending.

Required scope: `mailboxes:write`.

Subject to a stricter per-endpoint connection-test rate limit (in addition to the workspace-wide per-minute limit for your plan — Pro 60 · Enterprise 240 · Ultimate 480).

read_channel.state is one of ok | auth_failed | blocked_by_provider | not_tested. not_tested means we could not run the read test (for example a mailbox connected by sign-in rather than by password, which stores no reading password) — it is NOT a failure and NOT a pass.

imap_ok is true only when the read test actually passed, so it is false for a not_tested result. Read read_channel.state when you need to tell those two apart.

## Path parameters

- `id` string, required

## Response `200`

Success

## Other responses

- `401`: `unauthorized` — Missing or invalid API key.
- `403`: `insufficient_scope` — The API key lacks the scope this endpoint requires.
- `404`: `not_found` — Mailbox not found.
- `422`: `ssrf_blocked` — A host resolved to a private/internal IP.
- `429`: `rate_limited` — Too many requests — slow down and retry after the Retry-After delay.

---

[API](https://skmtc.dev/warmysender/apis/warmysender-public-api.md) · [All operations](https://skmtc.dev/warmysender/apis/warmysender-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/warmysender/apis/warmysender-public-api/revisions/200f4d797d36?raw)
