Buy and register domains
Purchase domains: charges the account's Stripe payment method, then registers each domain and queues DNS/email setup (including any users passed per domain). Prices are always resolved server-side from the registrar — client-supplied prices are ignored. Domains the account has already paid for are skipped (idempotent; safe to retry).
Synchronous mode (default): the charge happens during the request and the response reports the invoice and per-domain job IDs. Because the gateway closes the connection after ~30 seconds, large orders can time out client-side (HTTP 503) after the charge succeeds server-side. For more than 2-3 domains, use async mode instead.
Async mode ("async": true): the request validates the order, returns 202 with a job_id immediately, and the purchase (pricing, charge, registration queueing) runs in the background. Poll GET /v1/jobs/{job_id}: when status is completed, result contains exactly the synchronous response payload; when failed, error carries the failure (e.g. code: payment_failed with the card decline details). Recommended for all multi-domain orders.
Request
- Base URL: https://api.winnr.app
- URL: https://api.winnr.app/v1/domains/purchase
- Auth: HTTP bearer
Request body
Response
Payment succeeded and domains queued (synchronous mode)
Changes
No recorded changes to this operation across all 1 revision of this API.