/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
namespace Aws
{
namespace Route53Domains
{
/**
* Amazon Route 53 API actions let you register domain names and perform related
* operations.
*/
class AWS_ROUTE53DOMAINS_API Route53DomainsClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods
{
public:
typedef Aws::Client::AWSJsonClient BASECLASS;
static const char* SERVICE_NAME;
static const char* ALLOCATION_TAG;
typedef Route53DomainsClientConfiguration ClientConfigurationType;
typedef Route53DomainsEndpointProvider EndpointProviderType;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
Route53DomainsClient(const Aws::Route53Domains::Route53DomainsClientConfiguration& clientConfiguration = Aws::Route53Domains::Route53DomainsClientConfiguration(),
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG));
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
Route53DomainsClient(const Aws::Auth::AWSCredentials& credentials,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::Route53Domains::Route53DomainsClientConfiguration& clientConfiguration = Aws::Route53Domains::Route53DomainsClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
Route53DomainsClient(const std::shared_ptr& credentialsProvider,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::Route53Domains::Route53DomainsClientConfiguration& clientConfiguration = Aws::Route53Domains::Route53DomainsClientConfiguration());
/* Legacy constructors due deprecation */
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
Route53DomainsClient(const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
Route53DomainsClient(const Aws::Auth::AWSCredentials& credentials,
const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
Route53DomainsClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration);
/* End of legacy constructors due deprecation */
virtual ~Route53DomainsClient();
/**
* Accepts the transfer of a domain from another Amazon Web Services account to
* the currentAmazon Web Services account. You initiate a transfer between Amazon
* Web Services accounts using TransferDomainToAnotherAwsAccount.
* If you use the CLI command at accept-domain-transfer-from-another-aws-account,
* use JSON format as input instead of text because otherwise CLI will throw an
* error from domain transfer input that includes single quotes.
Use either
* ListOperations
* or GetOperationDetail
* to determine whether the operation succeeded. GetOperationDetail
* provides additional information, for example, Domain Transfer from Aws
* Account 111122223333 has been cancelled
.
See Also:
AWS
* API Reference
*/
virtual Model::AcceptDomainTransferFromAnotherAwsAccountOutcome AcceptDomainTransferFromAnotherAwsAccount(const Model::AcceptDomainTransferFromAnotherAwsAccountRequest& request) const;
/**
* A Callable wrapper for AcceptDomainTransferFromAnotherAwsAccount that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::AcceptDomainTransferFromAnotherAwsAccountOutcomeCallable AcceptDomainTransferFromAnotherAwsAccountCallable(const AcceptDomainTransferFromAnotherAwsAccountRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::AcceptDomainTransferFromAnotherAwsAccount, request);
}
/**
* An Async wrapper for AcceptDomainTransferFromAnotherAwsAccount that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void AcceptDomainTransferFromAnotherAwsAccountAsync(const AcceptDomainTransferFromAnotherAwsAccountRequestT& request, const AcceptDomainTransferFromAnotherAwsAccountResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::AcceptDomainTransferFromAnotherAwsAccount, request, handler, context);
}
/**
* Creates a delegation signer (DS) record in the registry zone for this domain
* name.
Note that creating DS record at the registry impacts DNSSEC
* validation of your DNS records. This action may render your domain name
* unavailable on the internet if the steps are completed in the wrong order, or
* with incorrect timing. For more information about DNSSEC signing, see Configuring
* DNSSEC signing in the Route 53 developer guide.
See
* Also:
AWS
* API Reference
*/
virtual Model::AssociateDelegationSignerToDomainOutcome AssociateDelegationSignerToDomain(const Model::AssociateDelegationSignerToDomainRequest& request) const;
/**
* A Callable wrapper for AssociateDelegationSignerToDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::AssociateDelegationSignerToDomainOutcomeCallable AssociateDelegationSignerToDomainCallable(const AssociateDelegationSignerToDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::AssociateDelegationSignerToDomain, request);
}
/**
* An Async wrapper for AssociateDelegationSignerToDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void AssociateDelegationSignerToDomainAsync(const AssociateDelegationSignerToDomainRequestT& request, const AssociateDelegationSignerToDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::AssociateDelegationSignerToDomain, request, handler, context);
}
/**
* Cancels the transfer of a domain from the current Amazon Web Services account
* to another Amazon Web Services account. You initiate a transfer betweenAmazon
* Web Services accounts using TransferDomainToAnotherAwsAccount.
*
You must cancel the transfer before the other Amazon Web
* Services account accepts the transfer using AcceptDomainTransferFromAnotherAwsAccount.
* Use either ListOperations
* or GetOperationDetail
* to determine whether the operation succeeded. GetOperationDetail
* provides additional information, for example, Domain Transfer from Aws
* Account 111122223333 has been cancelled
.
See Also:
AWS
* API Reference
*/
virtual Model::CancelDomainTransferToAnotherAwsAccountOutcome CancelDomainTransferToAnotherAwsAccount(const Model::CancelDomainTransferToAnotherAwsAccountRequest& request) const;
/**
* A Callable wrapper for CancelDomainTransferToAnotherAwsAccount that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CancelDomainTransferToAnotherAwsAccountOutcomeCallable CancelDomainTransferToAnotherAwsAccountCallable(const CancelDomainTransferToAnotherAwsAccountRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::CancelDomainTransferToAnotherAwsAccount, request);
}
/**
* An Async wrapper for CancelDomainTransferToAnotherAwsAccount that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CancelDomainTransferToAnotherAwsAccountAsync(const CancelDomainTransferToAnotherAwsAccountRequestT& request, const CancelDomainTransferToAnotherAwsAccountResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::CancelDomainTransferToAnotherAwsAccount, request, handler, context);
}
/**
* This operation checks the availability of one domain name. Note that if the
* availability status of a domain is pending, you must submit another request to
* determine the availability of the domain name.
See Also:
AWS
* API Reference
*/
virtual Model::CheckDomainAvailabilityOutcome CheckDomainAvailability(const Model::CheckDomainAvailabilityRequest& request) const;
/**
* A Callable wrapper for CheckDomainAvailability that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CheckDomainAvailabilityOutcomeCallable CheckDomainAvailabilityCallable(const CheckDomainAvailabilityRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::CheckDomainAvailability, request);
}
/**
* An Async wrapper for CheckDomainAvailability that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CheckDomainAvailabilityAsync(const CheckDomainAvailabilityRequestT& request, const CheckDomainAvailabilityResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::CheckDomainAvailability, request, handler, context);
}
/**
* Checks whether a domain name can be transferred to Amazon Route 53.
*
See Also:
AWS
* API Reference
*/
virtual Model::CheckDomainTransferabilityOutcome CheckDomainTransferability(const Model::CheckDomainTransferabilityRequest& request) const;
/**
* A Callable wrapper for CheckDomainTransferability that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CheckDomainTransferabilityOutcomeCallable CheckDomainTransferabilityCallable(const CheckDomainTransferabilityRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::CheckDomainTransferability, request);
}
/**
* An Async wrapper for CheckDomainTransferability that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CheckDomainTransferabilityAsync(const CheckDomainTransferabilityRequestT& request, const CheckDomainTransferabilityResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::CheckDomainTransferability, request, handler, context);
}
/**
* This operation deletes the specified domain. This action is permanent. For
* more information, see Deleting
* a domain name registration.
To transfer the domain registration to
* another registrar, use the transfer process that’s provided by the registrar to
* which you want to transfer the registration. Otherwise, the following apply:
* -
You can’t get a refund for the cost of a deleted domain
* registration.
-
The registry for the top-level domain might hold
* the domain name for a brief time before releasing it for other users to register
* (varies by registry).
-
When the registration has been deleted,
* we'll send you a confirmation to the registrant contact. The email will come
* from noreply@domainnameverification.net
or
* noreply@registrar.amazon.com
.
See Also:
* AWS
* API Reference
*/
virtual Model::DeleteDomainOutcome DeleteDomain(const Model::DeleteDomainRequest& request) const;
/**
* A Callable wrapper for DeleteDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteDomainOutcomeCallable DeleteDomainCallable(const DeleteDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::DeleteDomain, request);
}
/**
* An Async wrapper for DeleteDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteDomainAsync(const DeleteDomainRequestT& request, const DeleteDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::DeleteDomain, request, handler, context);
}
/**
* This operation deletes the specified tags for a domain.
All tag
* operations are eventually consistent; subsequent operations might not
* immediately represent all issued operations.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteTagsForDomainOutcome DeleteTagsForDomain(const Model::DeleteTagsForDomainRequest& request) const;
/**
* A Callable wrapper for DeleteTagsForDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteTagsForDomainOutcomeCallable DeleteTagsForDomainCallable(const DeleteTagsForDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::DeleteTagsForDomain, request);
}
/**
* An Async wrapper for DeleteTagsForDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteTagsForDomainAsync(const DeleteTagsForDomainRequestT& request, const DeleteTagsForDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::DeleteTagsForDomain, request, handler, context);
}
/**
* This operation disables automatic renewal of domain registration for the
* specified domain.
See Also:
AWS
* API Reference
*/
virtual Model::DisableDomainAutoRenewOutcome DisableDomainAutoRenew(const Model::DisableDomainAutoRenewRequest& request) const;
/**
* A Callable wrapper for DisableDomainAutoRenew that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DisableDomainAutoRenewOutcomeCallable DisableDomainAutoRenewCallable(const DisableDomainAutoRenewRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::DisableDomainAutoRenew, request);
}
/**
* An Async wrapper for DisableDomainAutoRenew that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DisableDomainAutoRenewAsync(const DisableDomainAutoRenewRequestT& request, const DisableDomainAutoRenewResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::DisableDomainAutoRenew, request, handler, context);
}
/**
* This operation removes the transfer lock on the domain (specifically the
* clientTransferProhibited
status) to allow domain transfers. We
* recommend you refrain from performing this action unless you intend to transfer
* the domain to a different registrar. Successful submission returns an operation
* ID that you can use to track the progress and completion of the action. If the
* request is not completed successfully, the domain registrant will be notified by
* email.
See Also:
AWS
* API Reference
*/
virtual Model::DisableDomainTransferLockOutcome DisableDomainTransferLock(const Model::DisableDomainTransferLockRequest& request) const;
/**
* A Callable wrapper for DisableDomainTransferLock that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DisableDomainTransferLockOutcomeCallable DisableDomainTransferLockCallable(const DisableDomainTransferLockRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::DisableDomainTransferLock, request);
}
/**
* An Async wrapper for DisableDomainTransferLock that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DisableDomainTransferLockAsync(const DisableDomainTransferLockRequestT& request, const DisableDomainTransferLockResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::DisableDomainTransferLock, request, handler, context);
}
/**
* Deletes a delegation signer (DS) record in the registry zone for this domain
* name.
See Also:
AWS
* API Reference
*/
virtual Model::DisassociateDelegationSignerFromDomainOutcome DisassociateDelegationSignerFromDomain(const Model::DisassociateDelegationSignerFromDomainRequest& request) const;
/**
* A Callable wrapper for DisassociateDelegationSignerFromDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DisassociateDelegationSignerFromDomainOutcomeCallable DisassociateDelegationSignerFromDomainCallable(const DisassociateDelegationSignerFromDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::DisassociateDelegationSignerFromDomain, request);
}
/**
* An Async wrapper for DisassociateDelegationSignerFromDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DisassociateDelegationSignerFromDomainAsync(const DisassociateDelegationSignerFromDomainRequestT& request, const DisassociateDelegationSignerFromDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::DisassociateDelegationSignerFromDomain, request, handler, context);
}
/**
* This operation configures Amazon Route 53 to automatically renew the
* specified domain before the domain registration expires. The cost of renewing
* your domain registration is billed to your Amazon Web Services account.
* The period during which you can renew a domain name varies by TLD. For a list
* of TLDs and their renewal policies, see Domains
* That You Can Register with Amazon Route 53 in the Amazon Route 53
* Developer Guide. Route 53 requires that you renew before the end of the
* renewal period so we can complete processing before the deadline.
See
* Also:
AWS
* API Reference
*/
virtual Model::EnableDomainAutoRenewOutcome EnableDomainAutoRenew(const Model::EnableDomainAutoRenewRequest& request) const;
/**
* A Callable wrapper for EnableDomainAutoRenew that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::EnableDomainAutoRenewOutcomeCallable EnableDomainAutoRenewCallable(const EnableDomainAutoRenewRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::EnableDomainAutoRenew, request);
}
/**
* An Async wrapper for EnableDomainAutoRenew that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void EnableDomainAutoRenewAsync(const EnableDomainAutoRenewRequestT& request, const EnableDomainAutoRenewResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::EnableDomainAutoRenew, request, handler, context);
}
/**
* This operation sets the transfer lock on the domain (specifically the
* clientTransferProhibited
status) to prevent domain transfers.
* Successful submission returns an operation ID that you can use to track the
* progress and completion of the action. If the request is not completed
* successfully, the domain registrant will be notified by email.
See
* Also:
AWS
* API Reference
*/
virtual Model::EnableDomainTransferLockOutcome EnableDomainTransferLock(const Model::EnableDomainTransferLockRequest& request) const;
/**
* A Callable wrapper for EnableDomainTransferLock that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::EnableDomainTransferLockOutcomeCallable EnableDomainTransferLockCallable(const EnableDomainTransferLockRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::EnableDomainTransferLock, request);
}
/**
* An Async wrapper for EnableDomainTransferLock that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void EnableDomainTransferLockAsync(const EnableDomainTransferLockRequestT& request, const EnableDomainTransferLockResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::EnableDomainTransferLock, request, handler, context);
}
/**
* For operations that require confirmation that the email address for the
* registrant contact is valid, such as registering a new domain, this operation
* returns information about whether the registrant contact has responded.
* If you want us to resend the email, use the
* ResendContactReachabilityEmail
operation.
See Also:
* AWS
* API Reference
*/
virtual Model::GetContactReachabilityStatusOutcome GetContactReachabilityStatus(const Model::GetContactReachabilityStatusRequest& request) const;
/**
* A Callable wrapper for GetContactReachabilityStatus that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetContactReachabilityStatusOutcomeCallable GetContactReachabilityStatusCallable(const GetContactReachabilityStatusRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::GetContactReachabilityStatus, request);
}
/**
* An Async wrapper for GetContactReachabilityStatus that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetContactReachabilityStatusAsync(const GetContactReachabilityStatusRequestT& request, const GetContactReachabilityStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::GetContactReachabilityStatus, request, handler, context);
}
/**
* This operation returns detailed information about a specified domain that is
* associated with the current Amazon Web Services account. Contact information for
* the domain is also returned as part of the output.
See Also:
AWS
* API Reference
*/
virtual Model::GetDomainDetailOutcome GetDomainDetail(const Model::GetDomainDetailRequest& request) const;
/**
* A Callable wrapper for GetDomainDetail that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetDomainDetailOutcomeCallable GetDomainDetailCallable(const GetDomainDetailRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::GetDomainDetail, request);
}
/**
* An Async wrapper for GetDomainDetail that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetDomainDetailAsync(const GetDomainDetailRequestT& request, const GetDomainDetailResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::GetDomainDetail, request, handler, context);
}
/**
* The GetDomainSuggestions operation returns a list of suggested domain
* names.
See Also:
AWS
* API Reference
*/
virtual Model::GetDomainSuggestionsOutcome GetDomainSuggestions(const Model::GetDomainSuggestionsRequest& request) const;
/**
* A Callable wrapper for GetDomainSuggestions that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetDomainSuggestionsOutcomeCallable GetDomainSuggestionsCallable(const GetDomainSuggestionsRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::GetDomainSuggestions, request);
}
/**
* An Async wrapper for GetDomainSuggestions that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetDomainSuggestionsAsync(const GetDomainSuggestionsRequestT& request, const GetDomainSuggestionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::GetDomainSuggestions, request, handler, context);
}
/**
* This operation returns the current status of an operation that is not
* completed.
See Also:
AWS
* API Reference
*/
virtual Model::GetOperationDetailOutcome GetOperationDetail(const Model::GetOperationDetailRequest& request) const;
/**
* A Callable wrapper for GetOperationDetail that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetOperationDetailOutcomeCallable GetOperationDetailCallable(const GetOperationDetailRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::GetOperationDetail, request);
}
/**
* An Async wrapper for GetOperationDetail that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetOperationDetailAsync(const GetOperationDetailRequestT& request, const GetOperationDetailResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::GetOperationDetail, request, handler, context);
}
/**
* This operation returns all the domain names registered with Amazon Route 53
* for the current Amazon Web Services account if no filtering conditions are
* used.
See Also:
AWS
* API Reference
*/
virtual Model::ListDomainsOutcome ListDomains(const Model::ListDomainsRequest& request) const;
/**
* A Callable wrapper for ListDomains that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListDomainsOutcomeCallable ListDomainsCallable(const ListDomainsRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::ListDomains, request);
}
/**
* An Async wrapper for ListDomains that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListDomainsAsync(const ListDomainsRequestT& request, const ListDomainsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::ListDomains, request, handler, context);
}
/**
* Returns information about all of the operations that return an operation ID
* and that have ever been performed on domains that were registered by the current
* account.
This command runs only in the us-east-1 Region.
See
* Also:
AWS
* API Reference
*/
virtual Model::ListOperationsOutcome ListOperations(const Model::ListOperationsRequest& request) const;
/**
* A Callable wrapper for ListOperations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListOperationsOutcomeCallable ListOperationsCallable(const ListOperationsRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::ListOperations, request);
}
/**
* An Async wrapper for ListOperations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListOperationsAsync(const ListOperationsRequestT& request, const ListOperationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::ListOperations, request, handler, context);
}
/**
* Lists the following prices for either all the TLDs supported by Route 53, or
* the specified TLD:
-
Registration
-
Transfer
* -
Owner change
-
Domain renewal
-
*
Domain restoration
See Also:
AWS
* API Reference
*/
virtual Model::ListPricesOutcome ListPrices(const Model::ListPricesRequest& request) const;
/**
* A Callable wrapper for ListPrices that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListPricesOutcomeCallable ListPricesCallable(const ListPricesRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::ListPrices, request);
}
/**
* An Async wrapper for ListPrices that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListPricesAsync(const ListPricesRequestT& request, const ListPricesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::ListPrices, request, handler, context);
}
/**
* This operation returns all of the tags that are associated with the specified
* domain.
All tag operations are eventually consistent; subsequent
* operations might not immediately represent all issued operations.
See
* Also:
AWS
* API Reference
*/
virtual Model::ListTagsForDomainOutcome ListTagsForDomain(const Model::ListTagsForDomainRequest& request) const;
/**
* A Callable wrapper for ListTagsForDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListTagsForDomainOutcomeCallable ListTagsForDomainCallable(const ListTagsForDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::ListTagsForDomain, request);
}
/**
* An Async wrapper for ListTagsForDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListTagsForDomainAsync(const ListTagsForDomainRequestT& request, const ListTagsForDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::ListTagsForDomain, request, handler, context);
}
/**
* Moves a domain from Amazon Web Services to another registrar.
* Supported actions:
See Also:
AWS
* API Reference
*/
virtual Model::PushDomainOutcome PushDomain(const Model::PushDomainRequest& request) const;
/**
* A Callable wrapper for PushDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::PushDomainOutcomeCallable PushDomainCallable(const PushDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::PushDomain, request);
}
/**
* An Async wrapper for PushDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void PushDomainAsync(const PushDomainRequestT& request, const PushDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::PushDomain, request, handler, context);
}
/**
* This operation registers a domain. For some top-level domains (TLDs), this
* operation requires extra parameters.
When you register a domain, Amazon
* Route 53 does the following:
-
Creates a Route 53 hosted zone
* that has the same name as the domain. Route 53 assigns four name servers to your
* hosted zone and automatically updates your domain registration with the names of
* these name servers.
-
Enables auto renew, so your domain
* registration will renew automatically each year. We'll notify you in advance of
* the renewal date so you can choose whether to renew the registration.
* -
Optionally enables privacy protection, so WHOIS queries return contact
* for the registrar or the phrase "REDACTED FOR PRIVACY", or "On behalf of
* <domain name> owner." If you don't enable privacy protection, WHOIS
* queries return the information that you entered for the administrative,
* registrant, and technical contacts.
While some domains may allow
* different privacy settings per contact, we recommend specifying the same privacy
* setting for all contacts.
-
If registration is
* successful, returns an operation ID that you can use to track the progress and
* completion of the action. If the request is not completed successfully, the
* domain registrant is notified by email.
-
Charges your Amazon
* Web Services account an amount based on the top-level domain. For more
* information, see Amazon Route
* 53 Pricing.
See Also:
AWS
* API Reference
*/
virtual Model::RegisterDomainOutcome RegisterDomain(const Model::RegisterDomainRequest& request) const;
/**
* A Callable wrapper for RegisterDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RegisterDomainOutcomeCallable RegisterDomainCallable(const RegisterDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::RegisterDomain, request);
}
/**
* An Async wrapper for RegisterDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RegisterDomainAsync(const RegisterDomainRequestT& request, const RegisterDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::RegisterDomain, request, handler, context);
}
/**
* Rejects the transfer of a domain from another Amazon Web Services account to
* the current Amazon Web Services account. You initiate a transfer betweenAmazon
* Web Services accounts using TransferDomainToAnotherAwsAccount.
*
Use either ListOperations
* or GetOperationDetail
* to determine whether the operation succeeded. GetOperationDetail
* provides additional information, for example, Domain Transfer from Aws
* Account 111122223333 has been cancelled
.
See Also:
AWS
* API Reference
*/
virtual Model::RejectDomainTransferFromAnotherAwsAccountOutcome RejectDomainTransferFromAnotherAwsAccount(const Model::RejectDomainTransferFromAnotherAwsAccountRequest& request) const;
/**
* A Callable wrapper for RejectDomainTransferFromAnotherAwsAccount that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RejectDomainTransferFromAnotherAwsAccountOutcomeCallable RejectDomainTransferFromAnotherAwsAccountCallable(const RejectDomainTransferFromAnotherAwsAccountRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::RejectDomainTransferFromAnotherAwsAccount, request);
}
/**
* An Async wrapper for RejectDomainTransferFromAnotherAwsAccount that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RejectDomainTransferFromAnotherAwsAccountAsync(const RejectDomainTransferFromAnotherAwsAccountRequestT& request, const RejectDomainTransferFromAnotherAwsAccountResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::RejectDomainTransferFromAnotherAwsAccount, request, handler, context);
}
/**
* This operation renews a domain for the specified number of years. The cost of
* renewing your domain is billed to your Amazon Web Services account.
We
* recommend that you renew your domain several weeks before the expiration date.
* Some TLD registries delete domains before the expiration date if you haven't
* renewed far enough in advance. For more information about renewing domain
* registration, see Renewing
* Registration for a Domain in the Amazon Route 53 Developer
* Guide.
See Also:
AWS
* API Reference
*/
virtual Model::RenewDomainOutcome RenewDomain(const Model::RenewDomainRequest& request) const;
/**
* A Callable wrapper for RenewDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RenewDomainOutcomeCallable RenewDomainCallable(const RenewDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::RenewDomain, request);
}
/**
* An Async wrapper for RenewDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RenewDomainAsync(const RenewDomainRequestT& request, const RenewDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::RenewDomain, request, handler, context);
}
/**
* For operations that require confirmation that the email address for the
* registrant contact is valid, such as registering a new domain, this operation
* resends the confirmation email to the current email address for the registrant
* contact.
See Also:
AWS
* API Reference
*/
virtual Model::ResendContactReachabilityEmailOutcome ResendContactReachabilityEmail(const Model::ResendContactReachabilityEmailRequest& request) const;
/**
* A Callable wrapper for ResendContactReachabilityEmail that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ResendContactReachabilityEmailOutcomeCallable ResendContactReachabilityEmailCallable(const ResendContactReachabilityEmailRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::ResendContactReachabilityEmail, request);
}
/**
* An Async wrapper for ResendContactReachabilityEmail that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ResendContactReachabilityEmailAsync(const ResendContactReachabilityEmailRequestT& request, const ResendContactReachabilityEmailResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::ResendContactReachabilityEmail, request, handler, context);
}
/**
* Resend the form of authorization email for this operation.
See
* Also:
AWS
* API Reference
*/
virtual Model::ResendOperationAuthorizationOutcome ResendOperationAuthorization(const Model::ResendOperationAuthorizationRequest& request) const;
/**
* A Callable wrapper for ResendOperationAuthorization that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ResendOperationAuthorizationOutcomeCallable ResendOperationAuthorizationCallable(const ResendOperationAuthorizationRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::ResendOperationAuthorization, request);
}
/**
* An Async wrapper for ResendOperationAuthorization that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ResendOperationAuthorizationAsync(const ResendOperationAuthorizationRequestT& request, const ResendOperationAuthorizationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::ResendOperationAuthorization, request, handler, context);
}
/**
* This operation returns the authorization code for the domain. To transfer a
* domain to another registrar, you provide this value to the new
* registrar.
See Also:
AWS
* API Reference
*/
virtual Model::RetrieveDomainAuthCodeOutcome RetrieveDomainAuthCode(const Model::RetrieveDomainAuthCodeRequest& request) const;
/**
* A Callable wrapper for RetrieveDomainAuthCode that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RetrieveDomainAuthCodeOutcomeCallable RetrieveDomainAuthCodeCallable(const RetrieveDomainAuthCodeRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::RetrieveDomainAuthCode, request);
}
/**
* An Async wrapper for RetrieveDomainAuthCode that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RetrieveDomainAuthCodeAsync(const RetrieveDomainAuthCodeRequestT& request, const RetrieveDomainAuthCodeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::RetrieveDomainAuthCode, request, handler, context);
}
/**
* Transfers a domain from another registrar to Amazon Route 53.
For
* more information about transferring domains, see the following topics:
If the registrar for your domain is also
* the DNS service provider for the domain, we highly recommend that you transfer
* your DNS service to Route 53 or to another DNS service provider before you
* transfer your registration. Some registrars provide free DNS service when you
* purchase a domain registration. When you transfer the registration, the previous
* registrar will not renew your domain registration and could end your DNS service
* at any time.
If the registrar for your domain is also the DNS
* service provider for the domain and you don't transfer DNS service to another
* provider, your website, email, and the web applications associated with the
* domain might become unavailable.
If the transfer is
* successful, this method returns an operation ID that you can use to track the
* progress and completion of the action. If the transfer doesn't complete
* successfully, the domain registrant will be notified by email.
See
* Also:
AWS
* API Reference
*/
virtual Model::TransferDomainOutcome TransferDomain(const Model::TransferDomainRequest& request) const;
/**
* A Callable wrapper for TransferDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::TransferDomainOutcomeCallable TransferDomainCallable(const TransferDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::TransferDomain, request);
}
/**
* An Async wrapper for TransferDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void TransferDomainAsync(const TransferDomainRequestT& request, const TransferDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::TransferDomain, request, handler, context);
}
/**
* Transfers a domain from the current Amazon Web Services account to another
* Amazon Web Services account. Note the following:
When you transfer a domain from one Amazon Web
* Services account to another, Route 53 doesn't transfer the hosted zone that is
* associated with the domain. DNS resolution isn't affected if the domain and the
* hosted zone are owned by separate accounts, so transferring the hosted zone is
* optional. For information about transferring the hosted zone to another Amazon
* Web Services account, see Migrating
* a Hosted Zone to a Different Amazon Web Services Account in the Amazon
* Route 53 Developer Guide.
Use either ListOperations
* or GetOperationDetail
* to determine whether the operation succeeded. GetOperationDetail
* provides additional information, for example, Domain Transfer from Aws
* Account 111122223333 has been cancelled
.
See Also:
AWS
* API Reference
*/
virtual Model::TransferDomainToAnotherAwsAccountOutcome TransferDomainToAnotherAwsAccount(const Model::TransferDomainToAnotherAwsAccountRequest& request) const;
/**
* A Callable wrapper for TransferDomainToAnotherAwsAccount that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::TransferDomainToAnotherAwsAccountOutcomeCallable TransferDomainToAnotherAwsAccountCallable(const TransferDomainToAnotherAwsAccountRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::TransferDomainToAnotherAwsAccount, request);
}
/**
* An Async wrapper for TransferDomainToAnotherAwsAccount that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void TransferDomainToAnotherAwsAccountAsync(const TransferDomainToAnotherAwsAccountRequestT& request, const TransferDomainToAnotherAwsAccountResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::TransferDomainToAnotherAwsAccount, request, handler, context);
}
/**
* This operation updates the contact information for a particular domain. You
* must specify information for at least one contact: registrant, administrator, or
* technical.
If the update is successful, this method returns an operation
* ID that you can use to track the progress and completion of the operation. If
* the request is not completed successfully, the domain registrant will be
* notified by email.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateDomainContactOutcome UpdateDomainContact(const Model::UpdateDomainContactRequest& request) const;
/**
* A Callable wrapper for UpdateDomainContact that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateDomainContactOutcomeCallable UpdateDomainContactCallable(const UpdateDomainContactRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::UpdateDomainContact, request);
}
/**
* An Async wrapper for UpdateDomainContact that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateDomainContactAsync(const UpdateDomainContactRequestT& request, const UpdateDomainContactResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::UpdateDomainContact, request, handler, context);
}
/**
* This operation updates the specified domain contact's privacy setting. When
* privacy protection is enabled, your contact information is replaced with contact
* information for the registrar or with the phrase "REDACTED FOR PRIVACY", or "On
* behalf of <domain name> owner."
While some domains may allow
* different privacy settings per contact, we recommend specifying the same privacy
* setting for all contacts.
This operation affects only the contact
* information for the specified contact type (administrative, registrant, or
* technical). If the request succeeds, Amazon Route 53 returns an operation ID
* that you can use with GetOperationDetail
* to track the progress and completion of the action. If the request doesn't
* complete successfully, the domain registrant will be notified by email.
* By disabling the privacy service via API, you consent to the
* publication of the contact information provided for this domain via the public
* WHOIS database. You certify that you are the registrant of this domain name and
* have the authority to make this decision. You may withdraw your consent at any
* time by enabling privacy protection using either
* UpdateDomainContactPrivacy
or the Route 53 console. Enabling
* privacy protection removes the contact information provided for this domain from
* the WHOIS database. For more information on our privacy practices, see https://aws.amazon.com/privacy/.
* See Also:
AWS
* API Reference
*/
virtual Model::UpdateDomainContactPrivacyOutcome UpdateDomainContactPrivacy(const Model::UpdateDomainContactPrivacyRequest& request) const;
/**
* A Callable wrapper for UpdateDomainContactPrivacy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateDomainContactPrivacyOutcomeCallable UpdateDomainContactPrivacyCallable(const UpdateDomainContactPrivacyRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::UpdateDomainContactPrivacy, request);
}
/**
* An Async wrapper for UpdateDomainContactPrivacy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateDomainContactPrivacyAsync(const UpdateDomainContactPrivacyRequestT& request, const UpdateDomainContactPrivacyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::UpdateDomainContactPrivacy, request, handler, context);
}
/**
* This operation replaces the current set of name servers for the domain with
* the specified set of name servers. If you use Amazon Route 53 as your DNS
* service, specify the four name servers in the delegation set for the hosted zone
* for the domain.
If successful, this operation returns an operation ID
* that you can use to track the progress and completion of the action. If the
* request is not completed successfully, the domain registrant will be notified by
* email.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateDomainNameserversOutcome UpdateDomainNameservers(const Model::UpdateDomainNameserversRequest& request) const;
/**
* A Callable wrapper for UpdateDomainNameservers that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateDomainNameserversOutcomeCallable UpdateDomainNameserversCallable(const UpdateDomainNameserversRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::UpdateDomainNameservers, request);
}
/**
* An Async wrapper for UpdateDomainNameservers that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateDomainNameserversAsync(const UpdateDomainNameserversRequestT& request, const UpdateDomainNameserversResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::UpdateDomainNameservers, request, handler, context);
}
/**
* This operation adds or updates tags for a specified domain.
All tag
* operations are eventually consistent; subsequent operations might not
* immediately represent all issued operations.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateTagsForDomainOutcome UpdateTagsForDomain(const Model::UpdateTagsForDomainRequest& request) const;
/**
* A Callable wrapper for UpdateTagsForDomain that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateTagsForDomainOutcomeCallable UpdateTagsForDomainCallable(const UpdateTagsForDomainRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::UpdateTagsForDomain, request);
}
/**
* An Async wrapper for UpdateTagsForDomain that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateTagsForDomainAsync(const UpdateTagsForDomainRequestT& request, const UpdateTagsForDomainResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::UpdateTagsForDomain, request, handler, context);
}
/**
* Returns all the domain-related billing records for the current Amazon Web
* Services account for a specified period
See Also:
AWS
* API Reference
*/
virtual Model::ViewBillingOutcome ViewBilling(const Model::ViewBillingRequest& request) const;
/**
* A Callable wrapper for ViewBilling that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ViewBillingOutcomeCallable ViewBillingCallable(const ViewBillingRequestT& request) const
{
return SubmitCallable(&Route53DomainsClient::ViewBilling, request);
}
/**
* An Async wrapper for ViewBilling that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ViewBillingAsync(const ViewBillingRequestT& request, const ViewBillingResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&Route53DomainsClient::ViewBilling, request, handler, context);
}
void OverrideEndpoint(const Aws::String& endpoint);
std::shared_ptr& accessEndpointProvider();
private:
friend class Aws::Client::ClientWithAsyncTemplateMethods;
void init(const Route53DomainsClientConfiguration& clientConfiguration);
Route53DomainsClientConfiguration m_clientConfiguration;
std::shared_ptr m_executor;
std::shared_ptr m_endpointProvider;
};
} // namespace Route53Domains
} // namespace Aws