Skip to content

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

scopestringrequired
Which sender to look at. hosting takes domain and needs the scope read:hosting. vps takes vpsId and needs read:vm. One of hosting, vps.
domainstring
A domain on one of your web hosting accounts (main, addon, parked or subdomain). Required when scope is hosting.
vpsIdstring
The VPS ID (vps_…). Required when scope is vps.

Example

GET /api/v2/me/mail-relay/blocks
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.

Response 200
{
"blocks": [
{
"id": "mrb_01hxa3b4c5d6e7f8g9h0j1k2m3",
"scope": "email",
"value": "[email protected]",
"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 object
idstring
The pause ID (mrb_…).
scopestring
What 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.
valuestring
The paused address, domain or IP address. Send it unchanged as blockValue to lift the pause.
categorystring or null
Why the relay paused the sender, for example spam, phishing, scam or malware.
reasonstring or null
The relay’s own reason line in English. It can be technical.
blockedUntilstring
When the pause ends on its own.
createdAtstring
When the relay first recorded the pause.
unblockPendingboolean
A lift was requested. The pause ends within a minute.
selfUnblocksLeftinteger
How many more times you can lift a pause on this sender yourself. You get 3 lifts per sender in 7 days. 0 to 3.
passwordChangeAcknowledgementRequiredboolean
True 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.

400Invalid request. The response body is an RFC 7807 Problem Details document.
401Unauthorized. Authentication is required.
403Forbidden. The caller lacks a required scope or does not own the resource.
404domain_not_found: the domain is not on any of your web hosting accounts. vps_not_found: the VPS is not on your account.
429Rate limited. Retry after the limit resets. 429 responses include Retry-After seconds plus X-RateLimit-* headers.
500Internal error. Retry later or contact support if the issue persists.