/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The RegisterDomain request includes the following elements.See
* Also:
AWS
* API Reference
The domain name that you want to register. The top-level domain (TLD), such * as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see * Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
The domain name can contain only the following * characters:
Letters a through z. Domain names are not case * sensitive.
Numbers 0 through 9.
Hyphen (-). * You can't specify a hyphen at the beginning or end of a label.
Period (.) to separate the labels in the name, such as the . in
* example.com.
Internationalized domain names are * not supported for some top-level domains. To determine whether the TLD that you * want to use supports internationalized domain names, see Domains * that You Can Register with Amazon Route 53. For more information, see Formatting * Internationalized Domain Names.
*/ inline const Aws::String& GetDomainName() const{ return m_domainName; } /** *The domain name that you want to register. The top-level domain (TLD), such * as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see * Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
The domain name can contain only the following * characters:
Letters a through z. Domain names are not case * sensitive.
Numbers 0 through 9.
Hyphen (-). * You can't specify a hyphen at the beginning or end of a label.
Period (.) to separate the labels in the name, such as the . in
* example.com.
Internationalized domain names are * not supported for some top-level domains. To determine whether the TLD that you * want to use supports internationalized domain names, see Domains * that You Can Register with Amazon Route 53. For more information, see Formatting * Internationalized Domain Names.
*/ inline bool DomainNameHasBeenSet() const { return m_domainNameHasBeenSet; } /** *The domain name that you want to register. The top-level domain (TLD), such * as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see * Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
The domain name can contain only the following * characters:
Letters a through z. Domain names are not case * sensitive.
Numbers 0 through 9.
Hyphen (-). * You can't specify a hyphen at the beginning or end of a label.
Period (.) to separate the labels in the name, such as the . in
* example.com.
Internationalized domain names are * not supported for some top-level domains. To determine whether the TLD that you * want to use supports internationalized domain names, see Domains * that You Can Register with Amazon Route 53. For more information, see Formatting * Internationalized Domain Names.
*/ inline void SetDomainName(const Aws::String& value) { m_domainNameHasBeenSet = true; m_domainName = value; } /** *The domain name that you want to register. The top-level domain (TLD), such * as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see * Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
The domain name can contain only the following * characters:
Letters a through z. Domain names are not case * sensitive.
Numbers 0 through 9.
Hyphen (-). * You can't specify a hyphen at the beginning or end of a label.
Period (.) to separate the labels in the name, such as the . in
* example.com.
Internationalized domain names are * not supported for some top-level domains. To determine whether the TLD that you * want to use supports internationalized domain names, see Domains * that You Can Register with Amazon Route 53. For more information, see Formatting * Internationalized Domain Names.
*/ inline void SetDomainName(Aws::String&& value) { m_domainNameHasBeenSet = true; m_domainName = std::move(value); } /** *The domain name that you want to register. The top-level domain (TLD), such * as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see * Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
The domain name can contain only the following * characters:
Letters a through z. Domain names are not case * sensitive.
Numbers 0 through 9.
Hyphen (-). * You can't specify a hyphen at the beginning or end of a label.
Period (.) to separate the labels in the name, such as the . in
* example.com.
Internationalized domain names are * not supported for some top-level domains. To determine whether the TLD that you * want to use supports internationalized domain names, see Domains * that You Can Register with Amazon Route 53. For more information, see Formatting * Internationalized Domain Names.
*/ inline void SetDomainName(const char* value) { m_domainNameHasBeenSet = true; m_domainName.assign(value); } /** *The domain name that you want to register. The top-level domain (TLD), such * as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see * Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
The domain name can contain only the following * characters:
Letters a through z. Domain names are not case * sensitive.
Numbers 0 through 9.
Hyphen (-). * You can't specify a hyphen at the beginning or end of a label.
Period (.) to separate the labels in the name, such as the . in
* example.com.
Internationalized domain names are * not supported for some top-level domains. To determine whether the TLD that you * want to use supports internationalized domain names, see Domains * that You Can Register with Amazon Route 53. For more information, see Formatting * Internationalized Domain Names.
*/ inline RegisterDomainRequest& WithDomainName(const Aws::String& value) { SetDomainName(value); return *this;} /** *The domain name that you want to register. The top-level domain (TLD), such * as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see * Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
The domain name can contain only the following * characters:
Letters a through z. Domain names are not case * sensitive.
Numbers 0 through 9.
Hyphen (-). * You can't specify a hyphen at the beginning or end of a label.
Period (.) to separate the labels in the name, such as the . in
* example.com.
Internationalized domain names are * not supported for some top-level domains. To determine whether the TLD that you * want to use supports internationalized domain names, see Domains * that You Can Register with Amazon Route 53. For more information, see Formatting * Internationalized Domain Names.
*/ inline RegisterDomainRequest& WithDomainName(Aws::String&& value) { SetDomainName(std::move(value)); return *this;} /** *The domain name that you want to register. The top-level domain (TLD), such * as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see * Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
The domain name can contain only the following * characters:
Letters a through z. Domain names are not case * sensitive.
Numbers 0 through 9.
Hyphen (-). * You can't specify a hyphen at the beginning or end of a label.
Period (.) to separate the labels in the name, such as the . in
* example.com.
Internationalized domain names are * not supported for some top-level domains. To determine whether the TLD that you * want to use supports internationalized domain names, see Domains * that You Can Register with Amazon Route 53. For more information, see Formatting * Internationalized Domain Names.
*/ inline RegisterDomainRequest& WithDomainName(const char* value) { SetDomainName(value); return *this;} /** *Reserved for future use.
*/ inline const Aws::String& GetIdnLangCode() const{ return m_idnLangCode; } /** *Reserved for future use.
*/ inline bool IdnLangCodeHasBeenSet() const { return m_idnLangCodeHasBeenSet; } /** *Reserved for future use.
*/ inline void SetIdnLangCode(const Aws::String& value) { m_idnLangCodeHasBeenSet = true; m_idnLangCode = value; } /** *Reserved for future use.
*/ inline void SetIdnLangCode(Aws::String&& value) { m_idnLangCodeHasBeenSet = true; m_idnLangCode = std::move(value); } /** *Reserved for future use.
*/ inline void SetIdnLangCode(const char* value) { m_idnLangCodeHasBeenSet = true; m_idnLangCode.assign(value); } /** *Reserved for future use.
*/ inline RegisterDomainRequest& WithIdnLangCode(const Aws::String& value) { SetIdnLangCode(value); return *this;} /** *Reserved for future use.
*/ inline RegisterDomainRequest& WithIdnLangCode(Aws::String&& value) { SetIdnLangCode(std::move(value)); return *this;} /** *Reserved for future use.
*/ inline RegisterDomainRequest& WithIdnLangCode(const char* value) { SetIdnLangCode(value); return *this;} /** *The number of years that you want to register the domain for. Domains are * registered for a minimum of one year. The maximum period depends on the * top-level domain. For the range of valid values for your domain, see Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
Default: 1
*/ inline int GetDurationInYears() const{ return m_durationInYears; } /** *The number of years that you want to register the domain for. Domains are * registered for a minimum of one year. The maximum period depends on the * top-level domain. For the range of valid values for your domain, see Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
Default: 1
*/ inline bool DurationInYearsHasBeenSet() const { return m_durationInYearsHasBeenSet; } /** *The number of years that you want to register the domain for. Domains are * registered for a minimum of one year. The maximum period depends on the * top-level domain. For the range of valid values for your domain, see Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
Default: 1
*/ inline void SetDurationInYears(int value) { m_durationInYearsHasBeenSet = true; m_durationInYears = value; } /** *The number of years that you want to register the domain for. Domains are * registered for a minimum of one year. The maximum period depends on the * top-level domain. For the range of valid values for your domain, see Domains * that You Can Register with Amazon Route 53 in the Amazon Route 53 * Developer Guide.
Default: 1
*/ inline RegisterDomainRequest& WithDurationInYears(int value) { SetDurationInYears(value); return *this;} /** *Indicates whether the domain will be automatically renewed
* (true) or not (false). Autorenewal only takes effect
* after the account is charged.
Default: true
Indicates whether the domain will be automatically renewed
* (true) or not (false). Autorenewal only takes effect
* after the account is charged.
Default: true
Indicates whether the domain will be automatically renewed
* (true) or not (false). Autorenewal only takes effect
* after the account is charged.
Default: true
Indicates whether the domain will be automatically renewed
* (true) or not (false). Autorenewal only takes effect
* after the account is charged.
Default: true
Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline const ContactDetail& GetAdminContact() const{ return m_adminContact; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline bool AdminContactHasBeenSet() const { return m_adminContactHasBeenSet; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline void SetAdminContact(const ContactDetail& value) { m_adminContactHasBeenSet = true; m_adminContact = value; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline void SetAdminContact(ContactDetail&& value) { m_adminContactHasBeenSet = true; m_adminContact = std::move(value); } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline RegisterDomainRequest& WithAdminContact(const ContactDetail& value) { SetAdminContact(value); return *this;} /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline RegisterDomainRequest& WithAdminContact(ContactDetail&& value) { SetAdminContact(std::move(value)); return *this;} /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline const ContactDetail& GetRegistrantContact() const{ return m_registrantContact; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline bool RegistrantContactHasBeenSet() const { return m_registrantContactHasBeenSet; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline void SetRegistrantContact(const ContactDetail& value) { m_registrantContactHasBeenSet = true; m_registrantContact = value; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline void SetRegistrantContact(ContactDetail&& value) { m_registrantContactHasBeenSet = true; m_registrantContact = std::move(value); } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline RegisterDomainRequest& WithRegistrantContact(const ContactDetail& value) { SetRegistrantContact(value); return *this;} /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline RegisterDomainRequest& WithRegistrantContact(ContactDetail&& value) { SetRegistrantContact(std::move(value)); return *this;} /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline const ContactDetail& GetTechContact() const{ return m_techContact; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline bool TechContactHasBeenSet() const { return m_techContactHasBeenSet; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline void SetTechContact(const ContactDetail& value) { m_techContactHasBeenSet = true; m_techContact = value; } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline void SetTechContact(ContactDetail&& value) { m_techContactHasBeenSet = true; m_techContact = std::move(value); } /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline RegisterDomainRequest& WithTechContact(const ContactDetail& value) { SetTechContact(value); return *this;} /** *Provides detailed contact information. For information about the values that * you specify for each element, see ContactDetail.
*/ inline RegisterDomainRequest& WithTechContact(ContactDetail&& value) { SetTechContact(std::move(value)); return *this;} /** *Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the admin contact.
Default: true
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the admin contact.
Default: true
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the admin contact.
Default: true
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the admin contact.
Default: true
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the registrant contact (the domain owner).
Default: true
*
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the registrant contact (the domain owner).
Default: true
*
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the registrant contact (the domain owner).
Default: true
*
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the registrant contact (the domain owner).
Default: true
*
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the technical contact.
Default: true
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the technical contact.
Default: true
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the technical contact.
Default: true
Whether you want to conceal contact information from WHOIS queries. If you
* specify true, WHOIS ("who is") queries return contact information
* either for Amazon Registrar (for .com, .net, and .org domains) or for our
* registrar associate, Gandi (for all other TLDs). If you specify
* false, WHOIS queries return the information that you entered for
* the technical contact.
Default: true