curl -X POST \
https://win.oneshotagent.com/v1/tools/email/domains/oneshotagents.com/pause \
-H "X-Agent-ID: 0x..." \
-H "x-agent-proof: <base64 signed proof, scope write>"
await sdk.email.pauseDomain('oneshotagents.com');
client.pause_domain("oneshotagents.com")
{ "domain": "oneshotagents.com", "pool_status": "paused", "warmup_state": "warmed", "pause_reason": "manual" }
Email
Pause Domain
Take a domain out of the rotation pool without removing it.
POST
/
v1
/
tools
/
email
/
domains
/
{domain}
/
pause
curl -X POST \
https://win.oneshotagent.com/v1/tools/email/domains/oneshotagents.com/pause \
-H "X-Agent-ID: 0x..." \
-H "x-agent-proof: <base64 signed proof, scope write>"
await sdk.email.pauseDomain('oneshotagents.com');
client.pause_domain("oneshotagents.com")
{ "domain": "oneshotagents.com", "pool_status": "paused", "warmup_state": "warmed", "pause_reason": "manual" }
Takes an active domain out of rotation. The domain stays yours and keeps warming. Explicit sends from it still work. It stays paused until you resume it.
Returns
Authentication
Requires anX-Agent-ID header with your wallet address and a signed
x-agent-proof (scope write), or an access token. The SDKs sign it for you.
An unsigned request is answered 401 proof_required. Free; no x402 payment.
Path Parameters
string
required
Bare domain to pause, e.g.
oneshotagents.com. Must be a domain you own.Behavior
Setspool_status to paused and pause_reason to manual. Rotation skips
paused domains. Only an active domain can be paused:
pool_status | Result |
|---|---|
active | → paused |
paused | 404 domain_not_found: already out of rotation |
removed | 404 domain_not_found |
404 domain_not_found if you don’t own the domain or it is not
active.
Response
string
The paused domain.
string
paused.string
Reputation health (
warming | warmed | degraded). A manual pause
doesn’t change it, because pausing rotation doesn’t stop warmup.string
manual. A manual pause lasts until you
resume the domain. Unlike a
low_reputation pause, it does not recover automatically.curl -X POST \
https://win.oneshotagent.com/v1/tools/email/domains/oneshotagents.com/pause \
-H "X-Agent-ID: 0x..." \
-H "x-agent-proof: <base64 signed proof, scope write>"
await sdk.email.pauseDomain('oneshotagents.com');
client.pause_domain("oneshotagents.com")
{ "domain": "oneshotagents.com", "pool_status": "paused", "warmup_state": "warmed", "pause_reason": "manual" }
Notes
- Pausing does not release the domain or stop renewals. It only takes the
domain out of rotation. Reverse with
/domains/:domain/resume. - Explicit sends (with
from_address) bypass the pool, so a paused domain can still be used directly. Pausing affects only server-side rotation. - A domain that is still warming up is already out of rotation
(
pool_status: paused,pause_reason: warming), so there is nothing to pause. It joins rotation automatically once its warmup score reaches 75.