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

The Amazon Chime SDK Identity APIs in this section allow software developers * to create and manage unique instances of their messaging applications. These * APIs provide the overarching framework for creating and sending messages. For * more information about the identity APIs, refer to Amazon * Chime SDK identity.

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

Creates an Amazon Chime SDK messaging AppInstance under an AWS * account. Only SDK messaging customers use this API. * CreateAppInstance supports idempotency behavior as described in the * AWS API Standard.

identity

See Also:

AWS * API Reference

*/ virtual Model::CreateAppInstanceOutcome CreateAppInstance(const Model::CreateAppInstanceRequest& request) const; /** * A Callable wrapper for CreateAppInstance that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAppInstanceOutcomeCallable CreateAppInstanceCallable(const CreateAppInstanceRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::CreateAppInstance, request); } /** * An Async wrapper for CreateAppInstance that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAppInstanceAsync(const CreateAppInstanceRequestT& request, const CreateAppInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::CreateAppInstance, request, handler, context); } /** *

Promotes an AppInstanceUser or AppInstanceBot to an * AppInstanceAdmin. The promoted entity can perform the following * actions.

  • ChannelModerator actions across all * channels in the AppInstance.

  • * DeleteChannelMessage actions.

Only an * AppInstanceUser and AppInstanceBot can be promoted to * an AppInstanceAdmin role.

See Also:

AWS * API Reference

*/ virtual Model::CreateAppInstanceAdminOutcome CreateAppInstanceAdmin(const Model::CreateAppInstanceAdminRequest& request) const; /** * A Callable wrapper for CreateAppInstanceAdmin that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAppInstanceAdminOutcomeCallable CreateAppInstanceAdminCallable(const CreateAppInstanceAdminRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::CreateAppInstanceAdmin, request); } /** * An Async wrapper for CreateAppInstanceAdmin that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAppInstanceAdminAsync(const CreateAppInstanceAdminRequestT& request, const CreateAppInstanceAdminResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::CreateAppInstanceAdmin, request, handler, context); } /** *

Creates a bot under an Amazon Chime AppInstance. The request * consists of a unique Configuration and Name for that * bot.

See Also:

AWS * API Reference

*/ virtual Model::CreateAppInstanceBotOutcome CreateAppInstanceBot(const Model::CreateAppInstanceBotRequest& request) const; /** * A Callable wrapper for CreateAppInstanceBot that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAppInstanceBotOutcomeCallable CreateAppInstanceBotCallable(const CreateAppInstanceBotRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::CreateAppInstanceBot, request); } /** * An Async wrapper for CreateAppInstanceBot that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAppInstanceBotAsync(const CreateAppInstanceBotRequestT& request, const CreateAppInstanceBotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::CreateAppInstanceBot, request, handler, context); } /** *

Creates a user under an Amazon Chime AppInstance. The request * consists of a unique appInstanceUserId and Name for * that user.

See Also:

AWS * API Reference

*/ virtual Model::CreateAppInstanceUserOutcome CreateAppInstanceUser(const Model::CreateAppInstanceUserRequest& request) const; /** * A Callable wrapper for CreateAppInstanceUser that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAppInstanceUserOutcomeCallable CreateAppInstanceUserCallable(const CreateAppInstanceUserRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::CreateAppInstanceUser, request); } /** * An Async wrapper for CreateAppInstanceUser that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAppInstanceUserAsync(const CreateAppInstanceUserRequestT& request, const CreateAppInstanceUserResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::CreateAppInstanceUser, request, handler, context); } /** *

Deletes an AppInstance and all associated data * asynchronously.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAppInstanceOutcome DeleteAppInstance(const Model::DeleteAppInstanceRequest& request) const; /** * A Callable wrapper for DeleteAppInstance that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAppInstanceOutcomeCallable DeleteAppInstanceCallable(const DeleteAppInstanceRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DeleteAppInstance, request); } /** * An Async wrapper for DeleteAppInstance that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAppInstanceAsync(const DeleteAppInstanceRequestT& request, const DeleteAppInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DeleteAppInstance, request, handler, context); } /** *

Demotes an AppInstanceAdmin to an AppInstanceUser * or AppInstanceBot. This action does not delete the * user.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAppInstanceAdminOutcome DeleteAppInstanceAdmin(const Model::DeleteAppInstanceAdminRequest& request) const; /** * A Callable wrapper for DeleteAppInstanceAdmin that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAppInstanceAdminOutcomeCallable DeleteAppInstanceAdminCallable(const DeleteAppInstanceAdminRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DeleteAppInstanceAdmin, request); } /** * An Async wrapper for DeleteAppInstanceAdmin that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAppInstanceAdminAsync(const DeleteAppInstanceAdminRequestT& request, const DeleteAppInstanceAdminResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DeleteAppInstanceAdmin, request, handler, context); } /** *

Deletes an AppInstanceBot.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAppInstanceBotOutcome DeleteAppInstanceBot(const Model::DeleteAppInstanceBotRequest& request) const; /** * A Callable wrapper for DeleteAppInstanceBot that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAppInstanceBotOutcomeCallable DeleteAppInstanceBotCallable(const DeleteAppInstanceBotRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DeleteAppInstanceBot, request); } /** * An Async wrapper for DeleteAppInstanceBot that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAppInstanceBotAsync(const DeleteAppInstanceBotRequestT& request, const DeleteAppInstanceBotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DeleteAppInstanceBot, request, handler, context); } /** *

Deletes an AppInstanceUser.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAppInstanceUserOutcome DeleteAppInstanceUser(const Model::DeleteAppInstanceUserRequest& request) const; /** * A Callable wrapper for DeleteAppInstanceUser that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAppInstanceUserOutcomeCallable DeleteAppInstanceUserCallable(const DeleteAppInstanceUserRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DeleteAppInstanceUser, request); } /** * An Async wrapper for DeleteAppInstanceUser that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAppInstanceUserAsync(const DeleteAppInstanceUserRequestT& request, const DeleteAppInstanceUserResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DeleteAppInstanceUser, request, handler, context); } /** *

Deregisters an AppInstanceUserEndpoint.

See Also:

* AWS * API Reference

*/ virtual Model::DeregisterAppInstanceUserEndpointOutcome DeregisterAppInstanceUserEndpoint(const Model::DeregisterAppInstanceUserEndpointRequest& request) const; /** * A Callable wrapper for DeregisterAppInstanceUserEndpoint that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeregisterAppInstanceUserEndpointOutcomeCallable DeregisterAppInstanceUserEndpointCallable(const DeregisterAppInstanceUserEndpointRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DeregisterAppInstanceUserEndpoint, request); } /** * An Async wrapper for DeregisterAppInstanceUserEndpoint that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeregisterAppInstanceUserEndpointAsync(const DeregisterAppInstanceUserEndpointRequestT& request, const DeregisterAppInstanceUserEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DeregisterAppInstanceUserEndpoint, request, handler, context); } /** *

Returns the full details of an AppInstance.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeAppInstanceOutcome DescribeAppInstance(const Model::DescribeAppInstanceRequest& request) const; /** * A Callable wrapper for DescribeAppInstance that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAppInstanceOutcomeCallable DescribeAppInstanceCallable(const DescribeAppInstanceRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DescribeAppInstance, request); } /** * An Async wrapper for DescribeAppInstance that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAppInstanceAsync(const DescribeAppInstanceRequestT& request, const DescribeAppInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DescribeAppInstance, request, handler, context); } /** *

Returns the full details of an AppInstanceAdmin.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeAppInstanceAdminOutcome DescribeAppInstanceAdmin(const Model::DescribeAppInstanceAdminRequest& request) const; /** * A Callable wrapper for DescribeAppInstanceAdmin that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAppInstanceAdminOutcomeCallable DescribeAppInstanceAdminCallable(const DescribeAppInstanceAdminRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DescribeAppInstanceAdmin, request); } /** * An Async wrapper for DescribeAppInstanceAdmin that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAppInstanceAdminAsync(const DescribeAppInstanceAdminRequestT& request, const DescribeAppInstanceAdminResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DescribeAppInstanceAdmin, request, handler, context); } /** *

The AppInstanceBot's information.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAppInstanceBotOutcome DescribeAppInstanceBot(const Model::DescribeAppInstanceBotRequest& request) const; /** * A Callable wrapper for DescribeAppInstanceBot that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAppInstanceBotOutcomeCallable DescribeAppInstanceBotCallable(const DescribeAppInstanceBotRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DescribeAppInstanceBot, request); } /** * An Async wrapper for DescribeAppInstanceBot that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAppInstanceBotAsync(const DescribeAppInstanceBotRequestT& request, const DescribeAppInstanceBotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DescribeAppInstanceBot, request, handler, context); } /** *

Returns the full details of an AppInstanceUser.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeAppInstanceUserOutcome DescribeAppInstanceUser(const Model::DescribeAppInstanceUserRequest& request) const; /** * A Callable wrapper for DescribeAppInstanceUser that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAppInstanceUserOutcomeCallable DescribeAppInstanceUserCallable(const DescribeAppInstanceUserRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DescribeAppInstanceUser, request); } /** * An Async wrapper for DescribeAppInstanceUser that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAppInstanceUserAsync(const DescribeAppInstanceUserRequestT& request, const DescribeAppInstanceUserResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DescribeAppInstanceUser, request, handler, context); } /** *

Returns the full details of an * AppInstanceUserEndpoint.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAppInstanceUserEndpointOutcome DescribeAppInstanceUserEndpoint(const Model::DescribeAppInstanceUserEndpointRequest& request) const; /** * A Callable wrapper for DescribeAppInstanceUserEndpoint that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAppInstanceUserEndpointOutcomeCallable DescribeAppInstanceUserEndpointCallable(const DescribeAppInstanceUserEndpointRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::DescribeAppInstanceUserEndpoint, request); } /** * An Async wrapper for DescribeAppInstanceUserEndpoint that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAppInstanceUserEndpointAsync(const DescribeAppInstanceUserEndpointRequestT& request, const DescribeAppInstanceUserEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::DescribeAppInstanceUserEndpoint, request, handler, context); } /** *

Gets the retention settings for an AppInstance.

See * Also:

AWS * API Reference

*/ virtual Model::GetAppInstanceRetentionSettingsOutcome GetAppInstanceRetentionSettings(const Model::GetAppInstanceRetentionSettingsRequest& request) const; /** * A Callable wrapper for GetAppInstanceRetentionSettings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetAppInstanceRetentionSettingsOutcomeCallable GetAppInstanceRetentionSettingsCallable(const GetAppInstanceRetentionSettingsRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::GetAppInstanceRetentionSettings, request); } /** * An Async wrapper for GetAppInstanceRetentionSettings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetAppInstanceRetentionSettingsAsync(const GetAppInstanceRetentionSettingsRequestT& request, const GetAppInstanceRetentionSettingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::GetAppInstanceRetentionSettings, request, handler, context); } /** *

Returns a list of the administrators in the * AppInstance.

See Also:

AWS * API Reference

*/ virtual Model::ListAppInstanceAdminsOutcome ListAppInstanceAdmins(const Model::ListAppInstanceAdminsRequest& request) const; /** * A Callable wrapper for ListAppInstanceAdmins that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAppInstanceAdminsOutcomeCallable ListAppInstanceAdminsCallable(const ListAppInstanceAdminsRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::ListAppInstanceAdmins, request); } /** * An Async wrapper for ListAppInstanceAdmins that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAppInstanceAdminsAsync(const ListAppInstanceAdminsRequestT& request, const ListAppInstanceAdminsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::ListAppInstanceAdmins, request, handler, context); } /** *

Lists all AppInstanceBots created under a single * AppInstance.

See Also:

AWS * API Reference

*/ virtual Model::ListAppInstanceBotsOutcome ListAppInstanceBots(const Model::ListAppInstanceBotsRequest& request) const; /** * A Callable wrapper for ListAppInstanceBots that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAppInstanceBotsOutcomeCallable ListAppInstanceBotsCallable(const ListAppInstanceBotsRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::ListAppInstanceBots, request); } /** * An Async wrapper for ListAppInstanceBots that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAppInstanceBotsAsync(const ListAppInstanceBotsRequestT& request, const ListAppInstanceBotsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::ListAppInstanceBots, request, handler, context); } /** *

Lists all the AppInstanceUserEndpoints created under a single * AppInstanceUser.

See Also:

AWS * API Reference

*/ virtual Model::ListAppInstanceUserEndpointsOutcome ListAppInstanceUserEndpoints(const Model::ListAppInstanceUserEndpointsRequest& request) const; /** * A Callable wrapper for ListAppInstanceUserEndpoints that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAppInstanceUserEndpointsOutcomeCallable ListAppInstanceUserEndpointsCallable(const ListAppInstanceUserEndpointsRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::ListAppInstanceUserEndpoints, request); } /** * An Async wrapper for ListAppInstanceUserEndpoints that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAppInstanceUserEndpointsAsync(const ListAppInstanceUserEndpointsRequestT& request, const ListAppInstanceUserEndpointsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::ListAppInstanceUserEndpoints, request, handler, context); } /** *

List all AppInstanceUsers created under a single * AppInstance.

See Also:

AWS * API Reference

*/ virtual Model::ListAppInstanceUsersOutcome ListAppInstanceUsers(const Model::ListAppInstanceUsersRequest& request) const; /** * A Callable wrapper for ListAppInstanceUsers that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAppInstanceUsersOutcomeCallable ListAppInstanceUsersCallable(const ListAppInstanceUsersRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::ListAppInstanceUsers, request); } /** * An Async wrapper for ListAppInstanceUsers that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAppInstanceUsersAsync(const ListAppInstanceUsersRequestT& request, const ListAppInstanceUsersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::ListAppInstanceUsers, request, handler, context); } /** *

Lists all Amazon Chime AppInstances created under a single AWS * account.

See Also:

AWS * API Reference

*/ virtual Model::ListAppInstancesOutcome ListAppInstances(const Model::ListAppInstancesRequest& request) const; /** * A Callable wrapper for ListAppInstances that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAppInstancesOutcomeCallable ListAppInstancesCallable(const ListAppInstancesRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::ListAppInstances, request); } /** * An Async wrapper for ListAppInstances that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAppInstancesAsync(const ListAppInstancesRequestT& request, const ListAppInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::ListAppInstances, request, handler, context); } /** *

Lists the tags applied to an Amazon Chime SDK identity * 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(&ChimeSDKIdentityClient::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(&ChimeSDKIdentityClient::ListTagsForResource, request, handler, context); } /** *

Sets the amount of time in days that a given AppInstance retains * data.

See Also:

AWS * API Reference

*/ virtual Model::PutAppInstanceRetentionSettingsOutcome PutAppInstanceRetentionSettings(const Model::PutAppInstanceRetentionSettingsRequest& request) const; /** * A Callable wrapper for PutAppInstanceRetentionSettings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutAppInstanceRetentionSettingsOutcomeCallable PutAppInstanceRetentionSettingsCallable(const PutAppInstanceRetentionSettingsRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::PutAppInstanceRetentionSettings, request); } /** * An Async wrapper for PutAppInstanceRetentionSettings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutAppInstanceRetentionSettingsAsync(const PutAppInstanceRetentionSettingsRequestT& request, const PutAppInstanceRetentionSettingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::PutAppInstanceRetentionSettings, request, handler, context); } /** *

Sets the number of days before the AppInstanceUser is * automatically deleted.

A background process deletes expired * AppInstanceUsers within 6 hours of expiration. Actual deletion * times may vary.

Expired AppInstanceUsers that have not yet * been deleted appear as active, and you can update their expiration settings. The * system honors the new settings.

See Also:

AWS * API Reference

*/ virtual Model::PutAppInstanceUserExpirationSettingsOutcome PutAppInstanceUserExpirationSettings(const Model::PutAppInstanceUserExpirationSettingsRequest& request) const; /** * A Callable wrapper for PutAppInstanceUserExpirationSettings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutAppInstanceUserExpirationSettingsOutcomeCallable PutAppInstanceUserExpirationSettingsCallable(const PutAppInstanceUserExpirationSettingsRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::PutAppInstanceUserExpirationSettings, request); } /** * An Async wrapper for PutAppInstanceUserExpirationSettings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutAppInstanceUserExpirationSettingsAsync(const PutAppInstanceUserExpirationSettingsRequestT& request, const PutAppInstanceUserExpirationSettingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::PutAppInstanceUserExpirationSettings, request, handler, context); } /** *

Registers an endpoint under an Amazon Chime AppInstanceUser. The * endpoint receives messages for a user. For push notifications, the endpoint is a * mobile device used to receive mobile push notifications for a * user.

See Also:

AWS * API Reference

*/ virtual Model::RegisterAppInstanceUserEndpointOutcome RegisterAppInstanceUserEndpoint(const Model::RegisterAppInstanceUserEndpointRequest& request) const; /** * A Callable wrapper for RegisterAppInstanceUserEndpoint that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RegisterAppInstanceUserEndpointOutcomeCallable RegisterAppInstanceUserEndpointCallable(const RegisterAppInstanceUserEndpointRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::RegisterAppInstanceUserEndpoint, request); } /** * An Async wrapper for RegisterAppInstanceUserEndpoint that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RegisterAppInstanceUserEndpointAsync(const RegisterAppInstanceUserEndpointRequestT& request, const RegisterAppInstanceUserEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::RegisterAppInstanceUserEndpoint, request, handler, context); } /** *

Applies the specified tags to the specified Amazon Chime SDK identity * 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(&ChimeSDKIdentityClient::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(&ChimeSDKIdentityClient::TagResource, request, handler, context); } /** *

Removes the specified tags from the specified Amazon Chime SDK identity * 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(&ChimeSDKIdentityClient::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(&ChimeSDKIdentityClient::UntagResource, request, handler, context); } /** *

Updates AppInstance metadata.

See Also:

AWS * API Reference

*/ virtual Model::UpdateAppInstanceOutcome UpdateAppInstance(const Model::UpdateAppInstanceRequest& request) const; /** * A Callable wrapper for UpdateAppInstance that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateAppInstanceOutcomeCallable UpdateAppInstanceCallable(const UpdateAppInstanceRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::UpdateAppInstance, request); } /** * An Async wrapper for UpdateAppInstance that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateAppInstanceAsync(const UpdateAppInstanceRequestT& request, const UpdateAppInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::UpdateAppInstance, request, handler, context); } /** *

Updates the name and metadata of an * AppInstanceBot.

See Also:

AWS * API Reference

*/ virtual Model::UpdateAppInstanceBotOutcome UpdateAppInstanceBot(const Model::UpdateAppInstanceBotRequest& request) const; /** * A Callable wrapper for UpdateAppInstanceBot that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateAppInstanceBotOutcomeCallable UpdateAppInstanceBotCallable(const UpdateAppInstanceBotRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::UpdateAppInstanceBot, request); } /** * An Async wrapper for UpdateAppInstanceBot that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateAppInstanceBotAsync(const UpdateAppInstanceBotRequestT& request, const UpdateAppInstanceBotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::UpdateAppInstanceBot, request, handler, context); } /** *

Updates the details of an AppInstanceUser. You can update names * and metadata.

See Also:

AWS * API Reference

*/ virtual Model::UpdateAppInstanceUserOutcome UpdateAppInstanceUser(const Model::UpdateAppInstanceUserRequest& request) const; /** * A Callable wrapper for UpdateAppInstanceUser that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateAppInstanceUserOutcomeCallable UpdateAppInstanceUserCallable(const UpdateAppInstanceUserRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::UpdateAppInstanceUser, request); } /** * An Async wrapper for UpdateAppInstanceUser that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateAppInstanceUserAsync(const UpdateAppInstanceUserRequestT& request, const UpdateAppInstanceUserResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::UpdateAppInstanceUser, request, handler, context); } /** *

Updates the details of an AppInstanceUserEndpoint. You can * update the name and AllowMessage values.

See Also:

* AWS * API Reference

*/ virtual Model::UpdateAppInstanceUserEndpointOutcome UpdateAppInstanceUserEndpoint(const Model::UpdateAppInstanceUserEndpointRequest& request) const; /** * A Callable wrapper for UpdateAppInstanceUserEndpoint that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateAppInstanceUserEndpointOutcomeCallable UpdateAppInstanceUserEndpointCallable(const UpdateAppInstanceUserEndpointRequestT& request) const { return SubmitCallable(&ChimeSDKIdentityClient::UpdateAppInstanceUserEndpoint, request); } /** * An Async wrapper for UpdateAppInstanceUserEndpoint that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateAppInstanceUserEndpointAsync(const UpdateAppInstanceUserEndpointRequestT& request, const UpdateAppInstanceUserEndpointResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&ChimeSDKIdentityClient::UpdateAppInstanceUserEndpoint, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const ChimeSDKIdentityClientConfiguration& clientConfiguration); ChimeSDKIdentityClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace ChimeSDKIdentity } // namespace Aws