{"files":{"SKILL.md":"---\nname: domains-api\ndescription: \"Domains API skill. Use when working with Domains for domains, customers. Covers 65 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Domains API\n\n## Auth\nNo authentication required.\n\n## Base URL\nhttps://api.ote-godaddy.com\n\n## Setup\n1. No auth setup needed\n2. GET /v1/domains -- verify access\n3. POST /v1/domains/available -- create first available\n\n## Endpoints\n\n65 endpoints across 2 groups. See references/api-spec.lap for full details.\n\n### domains\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /v1/domains | Retrieve a list of Domains for the specified Shopper |\n| GET | /v1/domains/agreements | Retrieve the legal agreement(s) required to purchase the specified TLD and add-ons |\n| GET | /v1/domains/available | Determine whether or not the specified domain is available for purchase |\n| POST | /v1/domains/available | Determine whether or not the specified domains are available for purchase |\n| POST | /v1/domains/contacts/validate | Validate the request body using the Domain Contact Validation Schema for specified domains. |\n| POST | /v1/domains/purchase | Purchase and register the specified Domain |\n| GET | /v1/domains/purchase/schema/{tld} | Retrieve the schema to be submitted when registering a Domain for the specified TLD |\n| POST | /v1/domains/purchase/validate | Validate the request body using the Domain Purchase Schema for the specified TLD |\n| GET | /v1/domains/suggest | Suggest alternate Domain names based on a seed Domain, a set of keywords, or the shopper's purchase history |\n| GET | /v1/domains/tlds | Retrieves a list of TLDs supported and enabled for sale |\n| DELETE | /v1/domains/{domain} | Cancel a purchased domain |\n| GET | /v1/domains/{domain} | Retrieve details for the specified Domain |\n| PATCH | /v1/domains/{domain} | Update details for the specified Domain |\n| PATCH | /v1/domains/{domain}/contacts | Update domain |\n| DELETE | /v1/domains/{domain}/privacy | Submit a privacy cancellation request for the given domain |\n| POST | /v1/domains/{domain}/privacy/purchase | Purchase privacy for a specified domain |\n| PATCH | /v1/domains/{domain}/records | Add the specified DNS Records to the specified Domain |\n| PUT | /v1/domains/{domain}/records | Replace all DNS Records for the specified Domain |\n| GET | /v1/domains/{domain}/records/{type}/{name} | Retrieve DNS Records for the specified Domain, optionally with the specified Type and/or Name |\n| PUT | /v1/domains/{domain}/records/{type}/{name} | Replace all DNS Records for the specified Domain with the specified Type and Name |\n| DELETE | /v1/domains/{domain}/records/{type}/{name} | Delete all DNS Records for the specified Domain with the specified Type and Name |\n| PUT | /v1/domains/{domain}/records/{type} | Replace all DNS Records for the specified Domain with the specified Type |\n| POST | /v1/domains/{domain}/renew | Renew the specified Domain |\n| POST | /v1/domains/{domain}/transfer | Purchase and start or restart transfer process |\n| POST | /v1/domains/{domain}/verifyRegistrantEmail | Re-send Contact E-mail Verification for specified Domain |\n| GET | /v2/domains/maintenances | Retrieve a list of upcoming system Maintenances |\n| GET | /v2/domains/maintenances/{maintenanceId} | Retrieve the details for an upcoming system Maintenances |\n| GET | /v2/domains/usage/{yyyymm} | Retrieve api usage request counts for a specific year/month.  The data is retained for a period of three months. |\n\n### customers\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /v2/customers/{customerId}/domains/{domain} | Retrieve details for the specified Domain |\n| DELETE | /v2/customers/{customerId}/domains/{domain}/changeOfRegistrant | Cancels a pending change of registrant request for a given domain |\n| GET | /v2/customers/{customerId}/domains/{domain}/changeOfRegistrant | Retrieve change of registrant information |\n| PATCH | /v2/customers/{customerId}/domains/{domain}/dnssecRecords | Add the specifed DNSSEC records to the domain |\n| DELETE | /v2/customers/{customerId}/domains/{domain}/dnssecRecords | Remove the specifed DNSSEC record from the domain |\n| PUT | /v2/customers/{customerId}/domains/{domain}/nameServers | Replaces the existing name servers on the domain. |\n| GET | /v2/customers/{customerId}/domains/{domain}/privacy/forwarding | Retrieve privacy email forwarding settings showing where emails are delivered |\n| PATCH | /v2/customers/{customerId}/domains/{domain}/privacy/forwarding | Update privacy email forwarding settings to determine how emails are delivered |\n| POST | /v2/customers/{customerId}/domains/{domain}/redeem | Purchase a restore for the given domain to bring it out of redemption |\n| POST | /v2/customers/{customerId}/domains/{domain}/renew | Renew the specified Domain |\n| POST | /v2/customers/{customerId}/domains/{domain}/transfer | Purchase and start or restart transfer process |\n| GET | /v2/customers/{customerId}/domains/{domain}/transfer | Query the current transfer status |\n| POST | /v2/customers/{customerId}/domains/{domain}/transfer/validate | Validate the request body using the Domain Transfer Schema for the specified TLD |\n| POST | /v2/customers/{customerId}/domains/{domain}/transferInAccept | Accepts the transfer in |\n| POST | /v2/customers/{customerId}/domains/{domain}/transferInCancel | Cancels the transfer in |\n| POST | /v2/customers/{customerId}/domains/{domain}/transferInRestart | Restarts transfer in request from the beginning |\n| POST | /v2/customers/{customerId}/domains/{domain}/transferInRetry | Retries the current transfer in request with supplied Authorization code |\n| POST | /v2/customers/{customerId}/domains/{domain}/transferOut | Initiate transfer out to another registrar for a .uk domain. |\n| POST | /v2/customers/{customerId}/domains/{domain}/transferOutAccept | Accept transfer out |\n| POST | /v2/customers/{customerId}/domains/{domain}/transferOutReject | Reject transfer out |\n| DELETE | /v2/customers/{customerId}/domains/forwards/{fqdn} | Submit a forwarding cancellation request for the given fqdn |\n| GET | /v2/customers/{customerId}/domains/forwards/{fqdn} | Retrieve the forwarding information for the given fqdn |\n| PUT | /v2/customers/{customerId}/domains/forwards/{fqdn} | Modify the forwarding information for the given fqdn |\n| POST | /v2/customers/{customerId}/domains/forwards/{fqdn} | Create a new forwarding configuration for the given FQDN |\n| GET | /v2/customers/{customerId}/domains/{domain}/actions | Retrieves a list of the most recent actions for the specified domain |\n| DELETE | /v2/customers/{customerId}/domains/{domain}/actions/{type} | Cancel the most recent user action for the specified domain |\n| GET | /v2/customers/{customerId}/domains/{domain}/actions/{type} | Retrieves the most recent action for the specified domain |\n| GET | /v2/customers/{customerId}/domains/notifications | Retrieve the next domain notification |\n| GET | /v2/customers/{customerId}/domains/notifications/optIn | Retrieve a list of notification types that are opted in |\n| PUT | /v2/customers/{customerId}/domains/notifications/optIn | Opt in to recieve notifications for the submitted notification types |\n| GET | /v2/customers/{customerId}/domains/notifications/schemas/{type} | Retrieve the schema for the notification data for the specified notification type |\n| POST | /v2/customers/{customerId}/domains/notifications/{notificationId}/acknowledge | Acknowledge a domain notification |\n| POST | /v2/customers/{customerId}/domains/register | Purchase and register the specified Domain |\n| GET | /v2/customers/{customerId}/domains/register/schema/{tld} | Retrieve the schema to be submitted when registering a Domain for the specified TLD |\n| POST | /v2/customers/{customerId}/domains/register/validate | Validate the request body using the Domain Registration Schema for the specified TLD |\n| PATCH | /v2/customers/{customerId}/domains/{domain}/contacts | Update domain contacts |\n| POST | /v2/customers/{customerId}/domains/{domain}/regenerateAuthCode | Regenerate the auth code for the given domain |\n\n## Common Questions\n\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all domains?\" -> GET /v1/domains\n- \"List all agreements?\" -> GET /v1/domains/agreements\n- \"List all available?\" -> GET /v1/domains/available\n- \"Create a available?\" -> POST /v1/domains/available\n- \"Create a validate?\" -> POST /v1/domains/contacts/validate\n- \"Create a purchase?\" -> POST /v1/domains/purchase\n- \"Get schema details?\" -> GET /v1/domains/purchase/schema/{tld}\n- \"Create a validate?\" -> POST /v1/domains/purchase/validate\n- \"Search suggest?\" -> GET /v1/domains/suggest\n- \"List all tlds?\" -> GET /v1/domains/tlds\n- \"Delete a domain?\" -> DELETE /v1/domains/{domain}\n- \"Get domain details?\" -> GET /v1/domains/{domain}\n- \"Partially update a domain?\" -> PATCH /v1/domains/{domain}\n- \"Create a purchase?\" -> POST /v1/domains/{domain}/privacy/purchase\n- \"Get record details?\" -> GET /v1/domains/{domain}/records/{type}/{name}\n- \"Update a record?\" -> PUT /v1/domains/{domain}/records/{type}/{name}\n- \"Delete a record?\" -> DELETE /v1/domains/{domain}/records/{type}/{name}\n- \"Update a record?\" -> PUT /v1/domains/{domain}/records/{type}\n- \"Create a renew?\" -> POST /v1/domains/{domain}/renew\n- \"Create a transfer?\" -> POST /v1/domains/{domain}/transfer\n- \"Create a verifyRegistrantEmail?\" -> POST /v1/domains/{domain}/verifyRegistrantEmail\n- \"Get domain details?\" -> GET /v2/customers/{customerId}/domains/{domain}\n- \"List all changeOfRegistrant?\" -> GET /v2/customers/{customerId}/domains/{domain}/changeOfRegistrant\n- \"List all forwarding?\" -> GET /v2/customers/{customerId}/domains/{domain}/privacy/forwarding\n- \"Create a redeem?\" -> POST /v2/customers/{customerId}/domains/{domain}/redeem\n- \"Create a renew?\" -> POST /v2/customers/{customerId}/domains/{domain}/renew\n- \"Create a transfer?\" -> POST /v2/customers/{customerId}/domains/{domain}/transfer\n- \"List all transfer?\" -> GET /v2/customers/{customerId}/domains/{domain}/transfer\n- \"Create a validate?\" -> POST /v2/customers/{customerId}/domains/{domain}/transfer/validate\n- \"Create a transferInAccept?\" -> POST /v2/customers/{customerId}/domains/{domain}/transferInAccept\n- \"Create a transferInCancel?\" -> POST /v2/customers/{customerId}/domains/{domain}/transferInCancel\n- \"Create a transferInRestart?\" -> POST /v2/customers/{customerId}/domains/{domain}/transferInRestart\n- \"Create a transferInRetry?\" -> POST /v2/customers/{customerId}/domains/{domain}/transferInRetry\n- \"Create a transferOut?\" -> POST /v2/customers/{customerId}/domains/{domain}/transferOut\n- \"Create a transferOutAccept?\" -> POST /v2/customers/{customerId}/domains/{domain}/transferOutAccept\n- \"Create a transferOutReject?\" -> POST /v2/customers/{customerId}/domains/{domain}/transferOutReject\n- \"Delete a forward?\" -> DELETE /v2/customers/{customerId}/domains/forwards/{fqdn}\n- \"Get forward details?\" -> GET /v2/customers/{customerId}/domains/forwards/{fqdn}\n- \"Update a forward?\" -> PUT /v2/customers/{customerId}/domains/forwards/{fqdn}\n- \"List all actions?\" -> GET /v2/customers/{customerId}/domains/{domain}/actions\n- \"Delete a action?\" -> DELETE /v2/customers/{customerId}/domains/{domain}/actions/{type}\n- \"Get action details?\" -> GET /v2/customers/{customerId}/domains/{domain}/actions/{type}\n- \"List all notifications?\" -> GET /v2/customers/{customerId}/domains/notifications\n- \"List all optIn?\" -> GET /v2/customers/{customerId}/domains/notifications/optIn\n- \"Get schema details?\" -> GET /v2/customers/{customerId}/domains/notifications/schemas/{type}\n- \"Create a acknowledge?\" -> POST /v2/customers/{customerId}/domains/notifications/{notificationId}/acknowledge\n- \"Create a register?\" -> POST /v2/customers/{customerId}/domains/register\n- \"Get schema details?\" -> GET /v2/customers/{customerId}/domains/register/schema/{tld}\n- \"Create a validate?\" -> POST /v2/customers/{customerId}/domains/register/validate\n- \"List all maintenances?\" -> GET /v2/domains/maintenances\n- \"Get maintenance details?\" -> GET /v2/domains/maintenances/{maintenanceId}\n- \"Get usage details?\" -> GET /v2/domains/usage/{yyyymm}\n- \"Create a regenerateAuthCode?\" -> POST /v2/customers/{customerId}/domains/{domain}/regenerateAuthCode\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- List endpoints may support pagination; check for limit, offset, or cursor params\n- Create/update endpoints typically return the created/updated object\n\n## CLI\n\n```bash\n# Update this spec to the latest version\nnpx @lap-platform/lapsh get domains-api -o references/api-spec.lap\n\n# Search for related APIs\nnpx @lap-platform/lapsh search domains-api\n```\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Domains API\n@base https://api.ote-godaddy.com\n@endpoints 65\n@hint download_for_search\n@toc domains(28), customers(37)\n\n@group domains\n@endpoint GET /v1/domains\n@desc Retrieve a list of Domains for the specified Shopper\n@optional {X-Shopper-Id: any # Shopper ID whose domains are to be retrieved, statuses: any # Only include results with `status` value in the specified set, statusGroups: any # Only include results with `status` value in any of the specified groups, limit: any # Maximum number of domains to return, marker: any # Marker Domain to use as the offset in results, includes: any # Optional details to be included in the response, modifiedDate: any # Only include results that have been modified since the specified date}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 422: Limit must have a value no greater than 1000, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v1/domains/agreements\n@desc Retrieve the legal agreement(s) required to purchase the specified TLD and add-ons\n@required {tlds: any # list of TLDs whose legal agreements are to be retrieved, privacy: any # Whether or not privacy has been requested}\n@optional {X-Market-Id: any # Unique identifier of the Market used to retrieve/translate Legal Agreements, forTransfer: any # Whether or not domain tranfer has been requested}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v1/domains/available\n@desc Determine whether or not the specified domain is available for purchase\n@required {domain: any # Domain name whose availability is to be checked}\n@optional {checkType: any # Optimize for time ('FAST') or accuracy ('FULL'), forTransfer: any # Whether or not to include domains available for transfer. If set to True, checkType is ignored}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 422: Cannot convert domain label error<br>Domain is missing IDN script<br>Domain segment ends with dash<br>Domain starts with dashbr>Domain uses unsupported IDN script<br>FQDN fails generic validity regex<br>Invalid character(s) error<br>Invalid tld error<br>Non-IDN domain name must not have dashes at the third and fourth position<br>Reserved name error<br>domain must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v1/domains/available\n@desc Determine whether or not the specified domains are available for purchase\n@required {domains: [str] # Domain names for which to check availability}\n@optional {checkType: any # Optimize for time ('FAST') or accuracy ('FULL')}\n@returns(200) Request was successful\n@returns(203) Request was partially successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 422: Cannot convert domain label error<br>Domain is missing IDN script<br>Domain segment ends with dash<br>Domain starts with dash<br>Domain uses unsupported IDN script<br>FQDN fails generic validity regex<br>Invalid character(s) error<br>Invalid tld error<br>Non-IDN domain name must not have dashes at the third and fourth position<br>Reserved name error<br>Reserved name error<br>domain must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v1/domains/contacts/validate\n@desc Validate the request body using the Domain Contact Validation Schema for specified domains.\n@required {body: any # An instance document expected for domains contacts validation}\n@optional {X-Private-Label-Id: any # PrivateLabelId to operate as, if different from JWT, marketId: any # MarketId in which the request is being made, and for which responses should be localized}\n@returns(200) No response was specified\n@returns(204) Request was successful\n@errors {400: Request was malformed, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v1/domains/purchase\n@desc Purchase and register the specified Domain\n@required {body: any # An instance document expected to match the JSON schema returned by `./schema/{tld}`}\n@optional {X-Shopper-Id: any # The Shopper for whom the domain should be purchased}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: domain must be specified<br>Based on restrictions declared in JSON schema returned by `./schema/{tld}`<br>Cannot convert domain label error<br>Domain is missing IDN script<br>Domain segment ends with dash<br>Domain starts with dash<br>Domain uses unsupported IDN script<br>FQDN fails generic validity regex<br>Invalid character(s) error<br>Invalid tld error<br>Non-IDN domain name must not have dashes at the third and fourth position<br>Reserved name error<br>`body` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v1/domains/purchase/schema/{tld}\n@desc Retrieve the schema to be submitted when registering a Domain for the specified TLD\n@required {tld: any # The Top-Level Domain whose schema should be retrieved}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `tld` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v1/domains/purchase/validate\n@desc Validate the request body using the Domain Purchase Schema for the specified TLD\n@required {body: any # An instance document expected to match the JSON schema returned by `./schema/{tld}`}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: Based on restrictions declared in JSON schema returned by `./schema/{tld}`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v1/domains/suggest\n@desc Suggest alternate Domain names based on a seed Domain, a set of keywords, or the shopper's purchase history\n@optional {X-Shopper-Id: any # Shopper ID for which the suggestions are being generated, query: any # Domain name or set of keywords for which alternative domain names will be suggested, country: any # Two-letter ISO country code to be used as a hint for target region<br/><br/> NOTE: These are sample values, there are many <a href=\"http://www.iso.org/iso/country_codes.htm\">more</a>, city: any # Name of city to be used as a hint for target region, sources: any # Sources to be queried<br/><br/><ul> <li><strong>CC_TLD</strong> - Varies the TLD using Country Codes</li> <li><strong>EXTENSION</strong> - Varies the TLD</li> <li><strong>KEYWORD_SPIN</strong> - Identifies keywords and then rotates each one</li> <li><strong>PREMIUM</strong> - Includes variations with premium prices</li></ul>, tlds: any # Top-level domains to be included in suggestions<br/><br/> NOTE: These are sample values, there are many <a href=\"http://www.godaddy.com/tlds/gtld.aspx#domain_search_form\">more</a>, lengthMax: any # Maximum length of second-level domain, lengthMin: any # Minimum length of second-level domain, limit: any # Maximum number of suggestions to return, waitMs: any # Maximum amount of time, in milliseconds, to wait for responses If elapses, return the results compiled up to that point}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `query` must be specified, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endpoint GET /v1/domains/tlds\n@desc Retrieves a list of TLDs supported and enabled for sale\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint DELETE /v1/domains/{domain}\n@desc Cancel a purchased domain\n@required {domain: any # Domain to cancel}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 422: Unknown domain error<br>At least two apex (aka @) `nameServers` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v1/domains/{domain}\n@desc Retrieve details for the specified Domain\n@required {domain: any # Domain name whose details are to be retrieved}\n@optional {X-Shopper-Id: any # Shopper ID expected to own the specified domain}\n@returns(200) Request was successful\n@returns(203) Request was partially successful, see verifications.status for further detail\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `domain` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint PATCH /v1/domains/{domain}\n@desc Update details for the specified Domain\n@required {domain: any # Domain whose details are to be updated, body: any # Changes to apply to existing Domain}\n@optional {X-Shopper-Id: any # Shopper for whom Domain is to be updated. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Specified Subaccount not owned by authenticated Shopper, 404: Resource not found, 409: The given domain is not eligible to have its nameservers changed, 422: At least two apex (aka @) `nameServers` must be specified<br>Failed to update nameservers, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint PATCH /v1/domains/{domain}/contacts\n@desc Update domain\n@required {domain: any # Domain whose Contacts are to be updated., contacts: any # Changes to apply to existing Contacts}\n@optional {X-Shopper-Id: any # Shopper for whom domain contacts are to be updated. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com}\n@returns(200) No response was specified\n@returns(204) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Domain not found<br>Identity document not found, 422: `domain` is not a valid Domain name, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endpoint DELETE /v1/domains/{domain}/privacy\n@desc Submit a privacy cancellation request for the given domain\n@required {domain: any # Domain whose privacy is to be cancelled}\n@optional {X-Shopper-Id: any # Shopper ID of the owner of the domain}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 422: Customer has purchased Domain Ownership Protection and the domain has expired<br>The domain status does not allow performing the operation<br>Unknown domain error, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v1/domains/{domain}/privacy/purchase\n@desc Purchase privacy for a specified domain\n@required {domain: any # Domain for which to purchase privacy, body: any # Options for purchasing privacy}\n@optional {X-Shopper-Id: any # Shopper ID of the owner of the domain}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 409: The domain status does not allow performing the operation, 422: End-user must read and consent to all of the following legal agreements<br>`domain` must match `sld.tld`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint PATCH /v1/domains/{domain}/records\n@desc Add the specified DNS Records to the specified Domain\n@required {domain: any # Domain whose DNS Records are to be augmented, records: [any] # DNS Records to add to whatever currently exists}\n@optional {X-Shopper-Id: any # Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `domain` is not a valid Domain name, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endpoint PUT /v1/domains/{domain}/records\n@desc Replace all DNS Records for the specified Domain\n@required {domain: any # Domain whose DNS Records are to be replaced, records: [any] # DNS Records to replace whatever currently exists}\n@optional {X-Shopper-Id: any # Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `domain` is not a valid Domain name<br>`record` does not fulfill the schema, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endpoint GET /v1/domains/{domain}/records/{type}/{name}\n@desc Retrieve DNS Records for the specified Domain, optionally with the specified Type and/or Name\n@required {domain: any # Domain whose DNS Records are to be retrieved, type: any # DNS Record Type for which DNS Records are to be retrieved, name: any # DNS Record Name for which DNS Records are to be retrieved}\n@optional {X-Shopper-Id: any # Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com, offset: any # Number of results to skip for pagination, limit: any # Maximum number of items to return}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `record` does not fulfill the schema<br>`domain` is not a valid Domain name, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endpoint PUT /v1/domains/{domain}/records/{type}/{name}\n@desc Replace all DNS Records for the specified Domain with the specified Type and Name\n@required {domain: any # Domain whose DNS Records are to be replaced, type: any # DNS Record Type for which DNS Records are to be replaced, name: any # DNS Record Name for which DNS Records are to be replaced, records: [any] # DNS Records to replace whatever currently exists}\n@optional {X-Shopper-Id: any # Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `record` does not fulfill the schema, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endpoint DELETE /v1/domains/{domain}/records/{type}/{name}\n@desc Delete all DNS Records for the specified Domain with the specified Type and Name\n@required {domain: any # Domain whose DNS Records are to be deleted, type: any # DNS Record Type for which DNS Records are to be deleted, name: any # DNS Record Name for which DNS Records are to be deleted}\n@optional {X-Shopper-Id: any # Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com}\n@returns(204) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Domain not found, 409: The given domain is not eligible to have its records changed, 422: `domain` is not a valid Domain name, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endpoint PUT /v1/domains/{domain}/records/{type}\n@desc Replace all DNS Records for the specified Domain with the specified Type\n@required {domain: any # Domain whose DNS Records are to be replaced, type: any # DNS Record Type for which DNS Records are to be replaced, records: [any] # DNS Records to replace whatever currently exists}\n@optional {X-Shopper-Id: any # Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `record` does not fulfill the schema, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endpoint POST /v1/domains/{domain}/renew\n@desc Renew the specified Domain\n@required {domain: any # Domain to renew}\n@optional {X-Shopper-Id: any # Shopper for whom Domain is to be renewed. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com, body: any # Options for renewing existing Domain}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 409: The domain status does not allow performing the operation, 422: End-user must read and consent to all of the following legal agreements<br>`domain` must match `sld.tld`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v1/domains/{domain}/transfer\n@desc Purchase and start or restart transfer process\n@required {domain: any # Domain to transfer in, body: any # Details for domain transfer purchase}\n@optional {X-Shopper-Id: any # The Shopper to whom the domain should be transfered}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 409: `domain` (domain) isn't available for transfer, 422: Based on restrictions declared in JSON schema returned by `./schema/{tld}`<br>Cannot convert domain label error<br>Domain is missing IDN script<br>Domain segment ends with dash<br>Domain starts with dash<br>Domain uses unsupported IDN script<br>End-user must read and consent to all of the following legal agreements<br>FQDN fails generic validity regex<br>Invalid character(s) error<br>Invalid period range<br>Invalid tld error<br>Non-IDN domain name must not have dashes at the third and fourth position<br>Reserved name error<br>`authCode` cannot be empty<br>`domain` must match `sld.tld`<br>domain must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v1/domains/{domain}/verifyRegistrantEmail\n@desc Re-send Contact E-mail Verification for specified Domain\n@required {domain: any # Domain whose Contact E-mail should be verified.}\n@optional {X-Shopper-Id: any # Shopper for whom domain contact e-mail should be verified. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account. For instance, if you're a Reseller, but purchased a Domain via http://www.godaddy.com}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: `domain` is not a valid Domain name, 429: Too many requests received within interval, 500: Internal server error, 504: Gateway timeout}\n\n@endgroup\n\n@group customers\n@endpoint GET /v2/customers/{customerId}/domains/{domain}\n@desc Retrieve details for the specified Domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain name whose details are to be retrieved}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request., includes: any # Optional details to be included in the response}\n@returns(200) Request was successful\n@returns(203) Request was partially successful, but actions, contacts, and/or verifications may not be included.\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The contact does not exist, 422: `domain` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint DELETE /v2/customers/{customerId}/domains/{domain}/changeOfRegistrant\n@desc Cancels a pending change of registrant request for a given domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain whose change of registrant is to be cancelled}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/CHANGE_OF_REGISTRANT_DELETE to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The contact does not exist, 409: There is already a similar action processing, 422: `domain` must be specified, 429: Too many requests received within interval, 500: Internal server error, 502: Dependent service unavailable}\n\n@endpoint GET /v2/customers/{customerId}/domains/{domain}/changeOfRegistrant\n@desc Retrieve change of registrant information\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain whose change of registrant information is to be retrieved}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The contact does not exist, 409: There is already a similar action processing, 422: `domain` must be specified, 429: Too many requests received within interval, 500: Internal server error, 502: Dependent service unavailable}\n\n@endpoint PATCH /v2/customers/{customerId}/domains/{domain}/dnssecRecords\n@desc Add the specifed DNSSEC records to the domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to add the DNSSEC record for, body: [any] # DNSSEC records to add}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/DNSSEC_CREATE to poll status\n@errors {400: Authentication info not sent or invalid, 401: Request was malformed, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint DELETE /v2/customers/{customerId}/domains/{domain}/dnssecRecords\n@desc Remove the specifed DNSSEC record from the domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to delete the DNSSEC record for, body: [any] # DNSSEC records to remove}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/DNSSEC_DELETE to poll status\n@errors {400: Authentication info not sent or invalid, 401: Request was malformed, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint PUT /v2/customers/{customerId}/domains/{domain}/nameServers\n@desc Replaces the existing name servers on the domain.\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain whose name servers are to be replaced, body: any # Name server records to replace on the domain}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/DOMAIN_UPDATE_NAME_SERVERS to poll status\n@errors {400: Authentication info not sent or invalid, 401: Request was malformed, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/{domain}/privacy/forwarding\n@desc Retrieve privacy email forwarding settings showing where emails are delivered\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain name whose details are to be retrieved}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 422: `domain` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint PATCH /v2/customers/{customerId}/domains/{domain}/privacy/forwarding\n@desc Update privacy email forwarding settings to determine how emails are delivered\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain name whose details are to be retrieved, body: any # Update privacy email forwarding settings}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/PRIVACY_FORWARDING_UPDATE to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/redeem\n@desc Purchase a restore for the given domain to bring it out of redemption\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to request redeem for}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request., body: any # Options for redeeming existing Domain}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/REDEEM to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Domain invalid, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/renew\n@desc Renew the specified Domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to be renewed, body: any # Options for renewing existing Domain}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/RENEW to poll status\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transfer\n@desc Purchase and start or restart transfer process\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to transfer in, body: any # Details for domain transfer purchase}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/TRANSFER to poll status\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Based on restrictions declared in JSON schema returned by `./schema/{tld}`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/{domain}/transfer\n@desc Query the current transfer status\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain Name}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transfer/validate\n@desc Validate the request body using the Domain Transfer Schema for the specified TLD\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to transfer in, body: any # Details for domain transfer purchase}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(204) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Based on restrictions declared in JSON schema returned by `./schema/{tld}`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transferInAccept\n@desc Accepts the transfer in\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to accept the transfer in for, body: map # An Authorization code for transferring the Domain}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/TRANSFER_IN_ACCEPT to poll status\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: The domain status does not allow performing the operation, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transferInCancel\n@desc Cancels the transfer in\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to cancel the transfer in for}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/TRANSFER_IN_CANCEL to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transferInRestart\n@desc Restarts transfer in request from the beginning\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to restart the transfer in}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/TRANSFER_IN_RESTART to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 409: The domain status does not allow performing the operation, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transferInRetry\n@desc Retries the current transfer in request with supplied Authorization code\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to retry the transfer in, body: map # An Authorization code for transferring the Domain}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/TRANSFER_IN_RETRY to poll status\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 409: The domain status does not allow performing the operation, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transferOut\n@desc Initiate transfer out to another registrar for a .uk domain.\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to initiate the transfer out for, registrar: any # Registrar tag to push transfer to}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/TRANSFER_OUT_REQUESTED to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Domain invalid. TLD must be .uk, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transferOutAccept\n@desc Accept transfer out\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to accept the transfer out for}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/TRANSFER_OUT_ACCEPT to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/transferOutReject\n@desc Reject transfer out\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to reject the transfer out for}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request., reason: any # Transfer out reject reason}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/TRANSFER_OUT_REJECT to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint DELETE /v2/customers/{customerId}/domains/forwards/{fqdn}\n@desc Submit a forwarding cancellation request for the given fqdn\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., fqdn: any # The fully qualified domain name whose forwarding details are to be deleted.}\n@returns(204) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 409: The domain status does not allow performing the operation, 422: A valid `fqdn` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/forwards/{fqdn}\n@desc Retrieve the forwarding information for the given fqdn\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., fqdn: any # The fully qualified domain name whose forwarding details are to be retrieved.}\n@optional {includeSubs: any # Optionally include all sub domains if the fqdn specified is a domain and not a sub domain.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 422: A valid `fqdn` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint PUT /v2/customers/{customerId}/domains/forwards/{fqdn}\n@desc Modify the forwarding information for the given fqdn\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., fqdn: any # The fully qualified domain name whose forwarding details are to be modified., body: any # Domain forwarding rule to create or replace on the fqdn}\n@returns(204) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 409: The domain status does not allow performing the operation, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/forwards/{fqdn}\n@desc Create a new forwarding configuration for the given FQDN\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your own customer id., fqdn: any # The fully qualified domain name whose forwarding details are to be modified., body: any # Domain forwarding rule to create for the specified fqdn}\n@returns(204) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: Resource not found, 409: Provided `fqdn` already has forwarding setup, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/{domain}/actions\n@desc Retrieves a list of the most recent actions for the specified domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain whose actions are to be retrieved}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint DELETE /v2/customers/{customerId}/domains/{domain}/actions/{type}\n@desc Cancel the most recent user action for the specified domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain whose action is to be cancelled, type: any # The type of action to cancel}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(204) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: The action status does not allow performing the operation, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/{domain}/actions/{type}\n@desc Retrieves the most recent action for the specified domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain whose action is to be retrieved, type: any # The type of action to retrieve}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: The domain status does not allow performing the operation, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/notifications\n@desc Retrieve the next domain notification\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id.}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The customer does not exist, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/notifications/optIn\n@desc Retrieve a list of notification types that are opted in\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id.}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The customer does not exist, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint PUT /v2/customers/{customerId}/domains/notifications/optIn\n@desc Opt in to recieve notifications for the submitted notification types\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., types: any # The notification types that should be opted in}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(204) Command successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The customer does not exist, 422: `type` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/notifications/schemas/{type}\n@desc Retrieve the schema for the notification data for the specified notification type\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., type: any # The notification type whose schema should be retrieved}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The schema type does not exist, 422: `type` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/notifications/{notificationId}/acknowledge\n@desc Acknowledge a domain notification\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., notificationId: any # The notification ID to acknowledge}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(204) Message acknowledged\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/register\n@desc Purchase and register the specified Domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., body: any # An instance document expected to match the JSON schema returned by `./schema/{tld}`}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/REGISTER to poll status\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 409: There is already a similar action processing, 422: Based on restrictions declared in JSON schema returned by `./schema/{tld}`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/customers/{customerId}/domains/register/schema/{tld}\n@desc Retrieve the schema to be submitted when registering a Domain for the specified TLD\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., tld: any # The Top-Level Domain whose schema should be retrieved}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The tld does not exist, 422: `tld` must be specified, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/register/validate\n@desc Validate the request body using the Domain Registration Schema for the specified TLD\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., body: any # An instance document expected to match the JSON schema returned by `./schema/{tld}`}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(204) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The customer does not exist, 422: Based on restrictions declared in JSON schema returned by `./schema/{tld}`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endgroup\n\n@group domains\n@endpoint GET /v2/domains/maintenances\n@desc Retrieve a list of upcoming system Maintenances\n@optional {X-Request-Id: any # A client provided identifier for tracking this request., status: any # Only include results with the selected `status` value.  Returns all results if omitted<br/><ul><li><strong style='margin-left: 12px;'>ACTIVE</strong> - The upcoming maintenance is active.</li><li><strong style='margin-left: 12px;'>CANCELLED</strong> - The upcoming maintenance has been cancelled.</li></ul>, modifiedAtAfter: any # Only include results with `modifiedAt` after the supplied date, startsAtAfter: any # Only include results with `startsAt` after the supplied date, limit: any # Maximum number of results to return}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 422: Filter parameters don't match schema and/or restrictions, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/domains/maintenances/{maintenanceId}\n@desc Retrieve the details for an upcoming system Maintenances\n@required {maintenanceId: any # The identifier for the system maintenance}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(200) Request was successful\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The maintenance does not exist, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint GET /v2/domains/usage/{yyyymm}\n@desc Retrieve api usage request counts for a specific year/month.  The data is retained for a period of three months.\n@required {yyyymm: any # The year/month timeframe for the request counts (in the format yyyy-mm)}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request., includes: any # Determines if the detail records (grouped by request path) are included in the response}\n@returns(200) Request was successful\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 429: Too many requests received within interval, 500: Internal server error}\n\n@endgroup\n\n@group customers\n@endpoint PATCH /v2/customers/{customerId}/domains/{domain}/contacts\n@desc Update domain contacts\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain whose Contacts are to be updated., body: any # Changes to apply to existing Contacts}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/DOMAIN_UPDATE_CONTACTS to poll status\n@errors {400: Request was malformed, 401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 422: Request body doesn't fulfill schema, see details in `fields`, 429: Too many requests received within interval, 500: Internal server error}\n\n@endpoint POST /v2/customers/{customerId}/domains/{domain}/regenerateAuthCode\n@desc Regenerate the auth code for the given domain\n@required {customerId: any # The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you're operating on behalf of; otherwise use your shopper id., domain: any # Domain to update authcode for}\n@optional {X-Request-Id: any # A client provided identifier for tracking this request.}\n@returns(202) Request Accepted. You may use GET /v2/customers/{customerId}/domains/{domain}/actions/AUTH_CODE_REGENERATE to poll status\n@errors {401: Authentication info not sent or invalid, 403: Authenticated user is not allowed access, 404: The domain does not exist, 409: There is already a similar action processing, 429: Too many requests received within interval, 500: Internal server error}\n\n@endgroup\n\n@end\n"}}