Core resources include Account, Domains, Email Users, Warming, Inbox, Export, and Jobs (plus team users, templates, affiliate, and more). Standard REST verbs (GET/POST/PATCH/DELETE). Async operations (provision domain, create mailbox) queue as jobs — poll the Jobs endpoint for status. Full OpenAPI spec is at app.winnr.app/docs with an interactive explorer.
Core resources
Account — read your account state (plan, limits, usage, subscription line items). Update contact preferences, request limit increases.
Domains — list, create (purchase or connect), update (tags, redirects, forwards), get DNS health, delete. This is the biggest surface — ~20 endpoints.
Email Users — list, create, update (display name, password rotate), delete. Filter by domain, tag, warming status.
Warming — enable, tune (daily volume, ramp speed), pause, disable, and read warming metrics per mailbox.
Inbox — list messages per mailbox (IMAP-backed), get message body, search.
Export — generate credential exports in any supported format (Smartlead, Instantly, EmailBison, etc.). Returns a downloadable file.
Jobs — poll async operations. Every "create domain," "create mailbox," "enable warming" starts a job. Read status to know when it's done.
Common patterns
Create a domain and wait for it:
POST /domainswith the payload (purchase or connect) — returns a job ID.GET /jobs/{job_id}— poll every 5 seconds until status iscompleted.GET /domains/{domain_id}— fetch the fully-provisioned domain.
Bulk-provision mailboxes:
POST /email-usersfor each mailbox — each returns a job ID.GET /jobs?ids=job1,job2,...— batch-poll status.GET /email-users?domain={domain}— list once all jobs complete.
Rate limit awareness
Rate limits apply to all endpoints combined. If you're bulk-provisioning, respect the plan cap:
- Startup: 300 req/min → ~5 req/sec sustainable.
- Enterprise: 500 req/min → ~8 req/sec sustainable.
Above the limit, Winnr returns 429. See Rate limits.
What's next
Frequently asked questions
Where's the full spec?
[app.winnr.app/docs](https://app.winnr.app/docs). Interactive Scalar-powered explorer with request/response schemas for every endpoint.
Do async operations block?
No — they return immediately with a job ID. Poll Jobs endpoint for status or use webhooks (contact support to set up).
What response format?
JSON. Standard HTTP status codes. Errors include a machine-readable code and human-readable message.
Is there a Python or Node SDK?
Not an official one, but the OpenAPI spec generates clients for any language via openapi-generator or Speakeasy. MCP server is Python.