List paused mail relay senders
GET /api/v2/me/mail-relay/blocks
Lists your senders that the outbound mail relay has paused right now. The relay pauses a sender when too much of its recent mail looked like spam, phishing, a scam or malware. Choose the sender with scope. Use hosting with domain for a domain on your web hosting. Use vps with vpsId for a VPS that sends through relay.hostup.se. A pause ends on its own at blockedUntil. To end it sooner, call POST /api/v2/me/mail-relay/blocks/unblock.
Authentication: An API key with one of these scopes: read:hosting, read:vm. About keys and scopes
Request
Query parameters
scopestringrequiredWhich sender to look at.
hosting takes domain and needs the scope read:hosting. vps takes vpsId and needs read:vm. One of hosting, vps.domainstringA domain on one of your web hosting accounts (main, addon, parked or subdomain). Required when
scope is hosting.vpsIdstringThe VPS ID (
vps_…). Required when scope is vps.Example
curl "https://cloud.hostup.se/api/v2/me/mail-relay/blocks?scope=hosting" \ -H "Authorization: Bearer $HOSTUP_API_KEY"Responses
200 The paused senders, one entry per sender, latest end first. The list is empty when nothing is paused.
{ "blocks": [ { "id": "mrb_01hxa3b4c5d6e7f8g9h0j1k2m3", "scope": "email", "category": "spam", "reason": "email ratio: 9/9 (100%) in 1440m; Cold bulk product listing to many recipients", "blockedUntil": "2026-10-09T18:00:00.000Z", "createdAt": "2026-10-09T06:00:00.000Z", "unblockPending": false, "selfUnblocksLeft": 3, "passwordChangeAcknowledgementRequired": false } ]}Response fields
blocksarray of objectidstringThe pause ID (
mrb_…).scopestringWhat is paused: one address (
email), a whole domain (domain), an envelope sender (envelope) or one IP address of your VPS (ip). One of email, domain, envelope, ip.valuestringThe paused address, domain or IP address. Send it unchanged as
blockValue to lift the pause.categorystring or nullWhy the relay paused the sender, for example
spam, phishing, scam or malware.reasonstring or nullThe relay’s own reason line in English. It can be technical.
blockedUntilstringWhen the pause ends on its own.
createdAtstringWhen the relay first recorded the pause.
unblockPendingbooleanA lift was requested. The pause ends within a minute.
selfUnblocksLeftintegerHow many more times you can lift a pause on this sender yourself. You get 3 lifts per sender in 7 days. 0 to 3.
passwordChangeAcknowledgementRequiredbooleanTrue when the pause is for phishing, a scam, malware or a hijacked mailbox. Lifting it then needs
passwordChangeAcknowledged: true.Errors
Errors are Problem Details with a stable code. Branch on the code, not on the text.
| 400 | Invalid request. The response body is an RFC 7807 Problem Details document. |
| 401 | Unauthorized. Authentication is required. |
| 403 | Forbidden. The caller lacks a required scope or does not own the resource. |
| 404 | domain_not_found: the domain is not on any of your web hosting accounts. vps_not_found: the VPS is not on your account. |
| 429 | Rate limited. Retry after the limit resets. 429 responses include Retry-After seconds plus X-RateLimit-* headers. |
| 500 | Internal error. Retry later or contact support if the issue persists. |