/** * 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 ConnectCampaigns { /** *

Provide APIs to create and manage Amazon Connect Campaigns.

*/ class AWS_CONNECTCAMPAIGNS_API ConnectCampaignsClient : 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 ConnectCampaignsClientConfiguration ClientConfigurationType; typedef ConnectCampaignsEndpointProvider 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. */ ConnectCampaignsClient(const Aws::ConnectCampaigns::ConnectCampaignsClientConfiguration& clientConfiguration = Aws::ConnectCampaigns::ConnectCampaignsClientConfiguration(), 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. */ ConnectCampaignsClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::ConnectCampaigns::ConnectCampaignsClientConfiguration& clientConfiguration = Aws::ConnectCampaigns::ConnectCampaignsClientConfiguration()); /** * 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 */ ConnectCampaignsClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::ConnectCampaigns::ConnectCampaignsClientConfiguration& clientConfiguration = Aws::ConnectCampaigns::ConnectCampaignsClientConfiguration()); /* 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. */ ConnectCampaignsClient(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. */ ConnectCampaignsClient(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 */ ConnectCampaignsClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~ConnectCampaignsClient(); /** *

Creates a campaign for the specified Amazon Connect account. This API is * idempotent.

See Also:

AWS * API Reference

*/ virtual Model::CreateCampaignOutcome CreateCampaign(const Model::CreateCampaignRequest& request) const; /** * A Callable wrapper for CreateCampaign that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateCampaignOutcomeCallable CreateCampaignCallable(const CreateCampaignRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::CreateCampaign, request); } /** * An Async wrapper for CreateCampaign that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateCampaignAsync(const CreateCampaignRequestT& request, const CreateCampaignResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::CreateCampaign, request, handler, context); } /** *

Deletes a campaign from the specified Amazon Connect account.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteCampaignOutcome DeleteCampaign(const Model::DeleteCampaignRequest& request) const; /** * A Callable wrapper for DeleteCampaign that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteCampaignOutcomeCallable DeleteCampaignCallable(const DeleteCampaignRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::DeleteCampaign, request); } /** * An Async wrapper for DeleteCampaign that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteCampaignAsync(const DeleteCampaignRequestT& request, const DeleteCampaignResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::DeleteCampaign, request, handler, context); } /** *

Deletes a connect instance config from the specified AWS * account.

See Also:

AWS * API Reference

*/ virtual Model::DeleteConnectInstanceConfigOutcome DeleteConnectInstanceConfig(const Model::DeleteConnectInstanceConfigRequest& request) const; /** * A Callable wrapper for DeleteConnectInstanceConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteConnectInstanceConfigOutcomeCallable DeleteConnectInstanceConfigCallable(const DeleteConnectInstanceConfigRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::DeleteConnectInstanceConfig, request); } /** * An Async wrapper for DeleteConnectInstanceConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteConnectInstanceConfigAsync(const DeleteConnectInstanceConfigRequestT& request, const DeleteConnectInstanceConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::DeleteConnectInstanceConfig, request, handler, context); } /** *

Delete the Connect Campaigns onboarding job for the specified Amazon Connect * instance.

See Also:

AWS * API Reference

*/ virtual Model::DeleteInstanceOnboardingJobOutcome DeleteInstanceOnboardingJob(const Model::DeleteInstanceOnboardingJobRequest& request) const; /** * A Callable wrapper for DeleteInstanceOnboardingJob that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteInstanceOnboardingJobOutcomeCallable DeleteInstanceOnboardingJobCallable(const DeleteInstanceOnboardingJobRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::DeleteInstanceOnboardingJob, request); } /** * An Async wrapper for DeleteInstanceOnboardingJob that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteInstanceOnboardingJobAsync(const DeleteInstanceOnboardingJobRequestT& request, const DeleteInstanceOnboardingJobResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::DeleteInstanceOnboardingJob, request, handler, context); } /** *

Describes the specific campaign.

See Also:

AWS * API Reference

*/ virtual Model::DescribeCampaignOutcome DescribeCampaign(const Model::DescribeCampaignRequest& request) const; /** * A Callable wrapper for DescribeCampaign that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeCampaignOutcomeCallable DescribeCampaignCallable(const DescribeCampaignRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::DescribeCampaign, request); } /** * An Async wrapper for DescribeCampaign that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeCampaignAsync(const DescribeCampaignRequestT& request, const DescribeCampaignResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::DescribeCampaign, request, handler, context); } /** *

Get state of a campaign for the specified Amazon Connect * account.

See Also:

AWS * API Reference

*/ virtual Model::GetCampaignStateOutcome GetCampaignState(const Model::GetCampaignStateRequest& request) const; /** * A Callable wrapper for GetCampaignState that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetCampaignStateOutcomeCallable GetCampaignStateCallable(const GetCampaignStateRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::GetCampaignState, request); } /** * An Async wrapper for GetCampaignState that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetCampaignStateAsync(const GetCampaignStateRequestT& request, const GetCampaignStateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::GetCampaignState, request, handler, context); } /** *

Get state of campaigns for the specified Amazon Connect * account.

See Also:

AWS * API Reference

*/ virtual Model::GetCampaignStateBatchOutcome GetCampaignStateBatch(const Model::GetCampaignStateBatchRequest& request) const; /** * A Callable wrapper for GetCampaignStateBatch that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetCampaignStateBatchOutcomeCallable GetCampaignStateBatchCallable(const GetCampaignStateBatchRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::GetCampaignStateBatch, request); } /** * An Async wrapper for GetCampaignStateBatch that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetCampaignStateBatchAsync(const GetCampaignStateBatchRequestT& request, const GetCampaignStateBatchResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::GetCampaignStateBatch, request, handler, context); } /** *

Get the specific Connect instance config.

See Also:

AWS * API Reference

*/ virtual Model::GetConnectInstanceConfigOutcome GetConnectInstanceConfig(const Model::GetConnectInstanceConfigRequest& request) const; /** * A Callable wrapper for GetConnectInstanceConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetConnectInstanceConfigOutcomeCallable GetConnectInstanceConfigCallable(const GetConnectInstanceConfigRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::GetConnectInstanceConfig, request); } /** * An Async wrapper for GetConnectInstanceConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetConnectInstanceConfigAsync(const GetConnectInstanceConfigRequestT& request, const GetConnectInstanceConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::GetConnectInstanceConfig, request, handler, context); } /** *

Get the specific instance onboarding job status.

See Also:

* AWS * API Reference

*/ virtual Model::GetInstanceOnboardingJobStatusOutcome GetInstanceOnboardingJobStatus(const Model::GetInstanceOnboardingJobStatusRequest& request) const; /** * A Callable wrapper for GetInstanceOnboardingJobStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetInstanceOnboardingJobStatusOutcomeCallable GetInstanceOnboardingJobStatusCallable(const GetInstanceOnboardingJobStatusRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::GetInstanceOnboardingJobStatus, request); } /** * An Async wrapper for GetInstanceOnboardingJobStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetInstanceOnboardingJobStatusAsync(const GetInstanceOnboardingJobStatusRequestT& request, const GetInstanceOnboardingJobStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::GetInstanceOnboardingJobStatus, request, handler, context); } /** *

Provides summary information about the campaigns under the specified Amazon * Connect account.

See Also:

AWS * API Reference

*/ virtual Model::ListCampaignsOutcome ListCampaigns(const Model::ListCampaignsRequest& request) const; /** * A Callable wrapper for ListCampaigns that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListCampaignsOutcomeCallable ListCampaignsCallable(const ListCampaignsRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::ListCampaigns, request); } /** * An Async wrapper for ListCampaigns that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListCampaignsAsync(const ListCampaignsRequestT& request, const ListCampaignsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::ListCampaigns, request, handler, context); } /** *

List tags for a resource.

See Also:

AWS * API Reference

*/ virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; /** * A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::ListTagsForResource, request); } /** * An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::ListTagsForResource, request, handler, context); } /** *

Pauses a campaign for the specified Amazon Connect account.

See * Also:

AWS * API Reference

*/ virtual Model::PauseCampaignOutcome PauseCampaign(const Model::PauseCampaignRequest& request) const; /** * A Callable wrapper for PauseCampaign that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PauseCampaignOutcomeCallable PauseCampaignCallable(const PauseCampaignRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::PauseCampaign, request); } /** * An Async wrapper for PauseCampaign that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PauseCampaignAsync(const PauseCampaignRequestT& request, const PauseCampaignResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::PauseCampaign, request, handler, context); } /** *

Creates dials requests for the specified campaign Amazon Connect account. * This API is idempotent.

See Also:

AWS * API Reference

*/ virtual Model::PutDialRequestBatchOutcome PutDialRequestBatch(const Model::PutDialRequestBatchRequest& request) const; /** * A Callable wrapper for PutDialRequestBatch that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutDialRequestBatchOutcomeCallable PutDialRequestBatchCallable(const PutDialRequestBatchRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::PutDialRequestBatch, request); } /** * An Async wrapper for PutDialRequestBatch that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutDialRequestBatchAsync(const PutDialRequestBatchRequestT& request, const PutDialRequestBatchResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::PutDialRequestBatch, request, handler, context); } /** *

Stops a campaign for the specified Amazon Connect account.

See * Also:

AWS * API Reference

*/ virtual Model::ResumeCampaignOutcome ResumeCampaign(const Model::ResumeCampaignRequest& request) const; /** * A Callable wrapper for ResumeCampaign that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ResumeCampaignOutcomeCallable ResumeCampaignCallable(const ResumeCampaignRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::ResumeCampaign, request); } /** * An Async wrapper for ResumeCampaign that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ResumeCampaignAsync(const ResumeCampaignRequestT& request, const ResumeCampaignResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::ResumeCampaign, request, handler, context); } /** *

Starts a campaign for the specified Amazon Connect account.

See * Also:

AWS * API Reference

*/ virtual Model::StartCampaignOutcome StartCampaign(const Model::StartCampaignRequest& request) const; /** * A Callable wrapper for StartCampaign that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartCampaignOutcomeCallable StartCampaignCallable(const StartCampaignRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::StartCampaign, request); } /** * An Async wrapper for StartCampaign that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartCampaignAsync(const StartCampaignRequestT& request, const StartCampaignResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::StartCampaign, request, handler, context); } /** *

Onboard the specific Amazon Connect instance to Connect * Campaigns.

See Also:

AWS * API Reference

*/ virtual Model::StartInstanceOnboardingJobOutcome StartInstanceOnboardingJob(const Model::StartInstanceOnboardingJobRequest& request) const; /** * A Callable wrapper for StartInstanceOnboardingJob that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartInstanceOnboardingJobOutcomeCallable StartInstanceOnboardingJobCallable(const StartInstanceOnboardingJobRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::StartInstanceOnboardingJob, request); } /** * An Async wrapper for StartInstanceOnboardingJob that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartInstanceOnboardingJobAsync(const StartInstanceOnboardingJobRequestT& request, const StartInstanceOnboardingJobResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::StartInstanceOnboardingJob, request, handler, context); } /** *

Stops a campaign for the specified Amazon Connect account.

See * Also:

AWS * API Reference

*/ virtual Model::StopCampaignOutcome StopCampaign(const Model::StopCampaignRequest& request) const; /** * A Callable wrapper for StopCampaign that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StopCampaignOutcomeCallable StopCampaignCallable(const StopCampaignRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::StopCampaign, request); } /** * An Async wrapper for StopCampaign that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StopCampaignAsync(const StopCampaignRequestT& request, const StopCampaignResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::StopCampaign, request, handler, context); } /** *

Tag a resource.

See Also:

AWS * API Reference

*/ virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; /** * A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::TagResource, request); } /** * An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::TagResource, request, handler, context); } /** *

Untag a resource.

See Also:

AWS * API Reference

*/ virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; /** * A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::UntagResource, request); } /** * An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::UntagResource, request, handler, context); } /** *

Updates the dialer config of a campaign. This API is * idempotent.

See Also:

AWS * API Reference

*/ virtual Model::UpdateCampaignDialerConfigOutcome UpdateCampaignDialerConfig(const Model::UpdateCampaignDialerConfigRequest& request) const; /** * A Callable wrapper for UpdateCampaignDialerConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateCampaignDialerConfigOutcomeCallable UpdateCampaignDialerConfigCallable(const UpdateCampaignDialerConfigRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::UpdateCampaignDialerConfig, request); } /** * An Async wrapper for UpdateCampaignDialerConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateCampaignDialerConfigAsync(const UpdateCampaignDialerConfigRequestT& request, const UpdateCampaignDialerConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::UpdateCampaignDialerConfig, request, handler, context); } /** *

Updates the name of a campaign. This API is idempotent.

See * Also:

AWS * API Reference

*/ virtual Model::UpdateCampaignNameOutcome UpdateCampaignName(const Model::UpdateCampaignNameRequest& request) const; /** * A Callable wrapper for UpdateCampaignName that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateCampaignNameOutcomeCallable UpdateCampaignNameCallable(const UpdateCampaignNameRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::UpdateCampaignName, request); } /** * An Async wrapper for UpdateCampaignName that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateCampaignNameAsync(const UpdateCampaignNameRequestT& request, const UpdateCampaignNameResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::UpdateCampaignName, request, handler, context); } /** *

Updates the outbound call config of a campaign. This API is * idempotent.

See Also:

AWS * API Reference

*/ virtual Model::UpdateCampaignOutboundCallConfigOutcome UpdateCampaignOutboundCallConfig(const Model::UpdateCampaignOutboundCallConfigRequest& request) const; /** * A Callable wrapper for UpdateCampaignOutboundCallConfig that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateCampaignOutboundCallConfigOutcomeCallable UpdateCampaignOutboundCallConfigCallable(const UpdateCampaignOutboundCallConfigRequestT& request) const { return SubmitCallable(&ConnectCampaignsClient::UpdateCampaignOutboundCallConfig, request); } /** * An Async wrapper for UpdateCampaignOutboundCallConfig that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateCampaignOutboundCallConfigAsync(const UpdateCampaignOutboundCallConfigRequestT& request, const UpdateCampaignOutboundCallConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ConnectCampaignsClient::UpdateCampaignOutboundCallConfig, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const ConnectCampaignsClientConfiguration& clientConfiguration); ConnectCampaignsClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace ConnectCampaigns } // namespace Aws