Register a new domain (PAID)
register_domainPurchase a new domain via Namecheap. Provide registrant contact and set confirm=true to complete the paid registration, preventing accidental charges.
Instructions
Register (buy) a new domain. THIS SPENDS MONEY from the Namecheap account balance and is not reversible. You MUST pass confirm=true to proceed; without it the tool returns a dry-run describing the charge. Requires a full registrant contact (used for all contact roles unless overridden). ccTLDs frequently need extended attributes (e.g. .us needs RegistrantNexus + RegistrantPurpose; .eu, .ca, .co.uk, .de, .asia have their own) — pass them via extendedAttributes as raw Namecheap field names. Check availability/pricing first with check_domain_availability and confirm funds with get_account_balance.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| years | No | Registration length in years (1-10). | |
| domain | Yes | The domain to register, e.g. example.com | |
| confirm | No | Must be true to actually place the paid order. | |
| contact | Yes | Registrant contact, applied to all roles unless overridden. | |
| contacts | No | Optional per-role contact overrides. | |
| nameservers | No | Custom nameservers; omit for Namecheap BasicDNS. | |
| enablePrivacy | No | Add free WhoisGuard/domain privacy where supported. | |
| promotionCode | No | ||
| extendedAttributes | No | ccTLD-specific extended attributes as raw Namecheap field names -> values. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| domain | No | ||
| account | Yes | ||
| orderId | No | ||
| provider | Yes | ||
| registered | Yes | ||
| environment | No | ||
| chargedAmount | No | ||
| transactionId | No |