/*
* Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.chimesdkmessaging;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.chimesdkmessaging.model.*;
/**
* Interface for accessing Amazon Chime SDK Messaging.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.chimesdkmessaging.AbstractAmazonChimeSDKMessaging} instead.
*
*
*
* The Amazon Chime SDK messaging APIs in this section allow software developers to send and receive messages in custom
* messaging applications. These APIs depend on the frameworks provided by the Amazon Chime SDK identity APIs. For more
* information about the messaging APIs, see Amazon
* Chime SDK messaging.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AmazonChimeSDKMessaging {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "messaging-chime";
/**
*
* Associates a channel flow with a channel. Once associated, all messages to that channel go through channel flow
* processors. To stop processing, use the DisassociateChannelFlow
API.
*
*
*
* Only administrators or channel moderators can associate a channel flow. The x-amz-chime-bearer
* request header is mandatory. Use the ARN of the AppInstanceUser
or AppInstanceBot
that
* makes the API call as the value in the header.
*
*
*
* @param associateChannelFlowRequest
* @return Result of the AssociateChannelFlow operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.AssociateChannelFlow
* @see AWS API Documentation
*/
AssociateChannelFlowResult associateChannelFlow(AssociateChannelFlowRequest associateChannelFlowRequest);
/**
*
* Adds a specified number of users and bots to a channel.
*
*
* @param batchCreateChannelMembershipRequest
* @return Result of the BatchCreateChannelMembership operation returned by the service.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ResourceLimitExceededException
* The request exceeds the resource limit.
* @sample AmazonChimeSDKMessaging.BatchCreateChannelMembership
* @see AWS API Documentation
*/
BatchCreateChannelMembershipResult batchCreateChannelMembership(BatchCreateChannelMembershipRequest batchCreateChannelMembershipRequest);
/**
*
* Calls back Amazon Chime SDK messaging with a processing response message. This should be invoked from the
* processor Lambda. This is a developer API.
*
*
* You can return one of the following processing responses:
*
*
*
* @param channelFlowCallbackRequest
* @return Result of the ChannelFlowCallback operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ChannelFlowCallback
* @see AWS API Documentation
*/
ChannelFlowCallbackResult channelFlowCallback(ChannelFlowCallbackRequest channelFlowCallbackRequest);
/**
*
* Creates a channel to which you can add users and send messages.
*
*
* Restriction: You can't change a channel's privacy.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param createChannelRequest
* @return Result of the CreateChannel operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ResourceLimitExceededException
* The request exceeds the resource limit.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.CreateChannel
* @see AWS API Documentation
*/
CreateChannelResult createChannel(CreateChannelRequest createChannelRequest);
/**
*
* Permanently bans a member from a channel. Moderators can't add banned members to a channel. To undo a ban, you
* first have to DeleteChannelBan
, and then CreateChannelMembership
. Bans are cleaned up
* when you delete users or channels.
*
*
* If you ban a user who is already part of a channel, that user is automatically kicked from the channel.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param createChannelBanRequest
* @return Result of the CreateChannelBan operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ResourceLimitExceededException
* The request exceeds the resource limit.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.CreateChannelBan
* @see AWS API Documentation
*/
CreateChannelBanResult createChannelBan(CreateChannelBanRequest createChannelBanRequest);
/**
*
* Creates a channel flow, a container for processors. Processors are AWS Lambda functions that perform actions on
* chat messages, such as stripping out profanity. You can associate channel flows with channels, and the processors
* in the channel flow then take action on all messages sent to that channel. This is a developer API.
*
*
* Channel flows process the following items:
*
*
* -
*
* New and updated messages
*
*
* -
*
* Persistent and non-persistent messages
*
*
* -
*
* The Standard message type
*
*
*
*
*
* Channel flows don't process Control or System messages. For more information about the message types provided by
* Chime SDK messaging, refer to Message types in
* the Amazon Chime developer guide.
*
*
*
* @param createChannelFlowRequest
* @return Result of the CreateChannelFlow operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ResourceLimitExceededException
* The request exceeds the resource limit.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.CreateChannelFlow
* @see AWS API Documentation
*/
CreateChannelFlowResult createChannelFlow(CreateChannelFlowRequest createChannelFlowRequest);
/**
*
* Adds a member to a channel. The InvitedBy
field in ChannelMembership
is derived from
* the request header. A channel member can:
*
*
*
* Privacy settings impact this action as follows:
*
*
* -
*
* Public Channels: You do not need to be a member to list messages, but you must be a member to send messages.
*
*
* -
*
* Private Channels: You must be a member to list or send messages.
*
*
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the
* AppInstanceUserArn
or AppInstanceBot
that makes the API call as the value in the
* header.
*
*
*
* @param createChannelMembershipRequest
* @return Result of the CreateChannelMembership operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ResourceLimitExceededException
* The request exceeds the resource limit.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.CreateChannelMembership
* @see AWS API Documentation
*/
CreateChannelMembershipResult createChannelMembership(CreateChannelMembershipRequest createChannelMembershipRequest);
/**
*
* Creates a new ChannelModerator
. A channel moderator can:
*
*
* -
*
* Add and remove other members of the channel.
*
*
* -
*
* Add and remove other moderators of the channel.
*
*
* -
*
* Add and remove user bans for the channel.
*
*
* -
*
* Redact messages in the channel.
*
*
* -
*
* List messages in the channel.
*
*
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
of the user that makes the API call as the value in the header.
*
*
*
* @param createChannelModeratorRequest
* @return Result of the CreateChannelModerator operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ResourceLimitExceededException
* The request exceeds the resource limit.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.CreateChannelModerator
* @see AWS API Documentation
*/
CreateChannelModeratorResult createChannelModerator(CreateChannelModeratorRequest createChannelModeratorRequest);
/**
*
* Immediately makes a channel and its memberships inaccessible and marks them for deletion. This is an irreversible
* process.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the
* AppInstanceUserArn
or AppInstanceBot
that makes the API call as the value in the
* header.
*
*
*
* @param deleteChannelRequest
* @return Result of the DeleteChannel operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DeleteChannel
* @see AWS API Documentation
*/
DeleteChannelResult deleteChannel(DeleteChannelRequest deleteChannelRequest);
/**
*
* Removes a member from a channel's ban list.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param deleteChannelBanRequest
* @return Result of the DeleteChannelBan operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DeleteChannelBan
* @see AWS API Documentation
*/
DeleteChannelBanResult deleteChannelBan(DeleteChannelBanRequest deleteChannelBanRequest);
/**
*
* Deletes a channel flow, an irreversible process. This is a developer API.
*
*
*
* This API works only when the channel flow is not associated with any channel. To get a list of all channels that
* a channel flow is associated with, use the ListChannelsAssociatedWithChannelFlow
API. Use the
* DisassociateChannelFlow
API to disassociate a channel flow from all channels.
*
*
*
* @param deleteChannelFlowRequest
* @return Result of the DeleteChannelFlow operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DeleteChannelFlow
* @see AWS API Documentation
*/
DeleteChannelFlowResult deleteChannelFlow(DeleteChannelFlowRequest deleteChannelFlowRequest);
/**
*
* Removes a member from a channel.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the
* user that makes the API call as the value in the header.
*
*
*
* @param deleteChannelMembershipRequest
* @return Result of the DeleteChannelMembership operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DeleteChannelMembership
* @see AWS API Documentation
*/
DeleteChannelMembershipResult deleteChannelMembership(DeleteChannelMembershipRequest deleteChannelMembershipRequest);
/**
*
* Deletes a channel message. Only admins can perform this action. Deletion makes messages inaccessible immediately.
* A background process deletes any revisions created by UpdateChannelMessage
.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param deleteChannelMessageRequest
* @return Result of the DeleteChannelMessage operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DeleteChannelMessage
* @see AWS API Documentation
*/
DeleteChannelMessageResult deleteChannelMessage(DeleteChannelMessageRequest deleteChannelMessageRequest);
/**
*
* Deletes a channel moderator.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param deleteChannelModeratorRequest
* @return Result of the DeleteChannelModerator operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DeleteChannelModerator
* @see AWS API Documentation
*/
DeleteChannelModeratorResult deleteChannelModerator(DeleteChannelModeratorRequest deleteChannelModeratorRequest);
/**
*
* Deletes the streaming configurations for an AppInstance
. For more information, see Streaming messaging data in the
* Amazon Chime SDK Developer Guide.
*
*
* @param deleteMessagingStreamingConfigurationsRequest
* @return Result of the DeleteMessagingStreamingConfigurations operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DeleteMessagingStreamingConfigurations
* @see AWS API Documentation
*/
DeleteMessagingStreamingConfigurationsResult deleteMessagingStreamingConfigurations(
DeleteMessagingStreamingConfigurationsRequest deleteMessagingStreamingConfigurationsRequest);
/**
*
* Returns the full details of a channel in an Amazon Chime AppInstance
.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param describeChannelRequest
* @return Result of the DescribeChannel operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DescribeChannel
* @see AWS API Documentation
*/
DescribeChannelResult describeChannel(DescribeChannelRequest describeChannelRequest);
/**
*
* Returns the full details of a channel ban.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param describeChannelBanRequest
* @return Result of the DescribeChannelBan operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DescribeChannelBan
* @see AWS API Documentation
*/
DescribeChannelBanResult describeChannelBan(DescribeChannelBanRequest describeChannelBanRequest);
/**
*
* Returns the full details of a channel flow in an Amazon Chime AppInstance
. This is a developer API.
*
*
* @param describeChannelFlowRequest
* @return Result of the DescribeChannelFlow operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DescribeChannelFlow
* @see AWS API Documentation
*/
DescribeChannelFlowResult describeChannelFlow(DescribeChannelFlowRequest describeChannelFlowRequest);
/**
*
* Returns the full details of a user's channel membership.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param describeChannelMembershipRequest
* @return Result of the DescribeChannelMembership operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DescribeChannelMembership
* @see AWS API Documentation
*/
DescribeChannelMembershipResult describeChannelMembership(DescribeChannelMembershipRequest describeChannelMembershipRequest);
/**
*
* Returns the details of a channel based on the membership of the specified AppInstanceUser
or
* AppInstanceBot
.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param describeChannelMembershipForAppInstanceUserRequest
* @return Result of the DescribeChannelMembershipForAppInstanceUser operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DescribeChannelMembershipForAppInstanceUser
* @see AWS API Documentation
*/
DescribeChannelMembershipForAppInstanceUserResult describeChannelMembershipForAppInstanceUser(
DescribeChannelMembershipForAppInstanceUserRequest describeChannelMembershipForAppInstanceUserRequest);
/**
*
* Returns the full details of a channel moderated by the specified AppInstanceUser
or
* AppInstanceBot
.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param describeChannelModeratedByAppInstanceUserRequest
* @return Result of the DescribeChannelModeratedByAppInstanceUser operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DescribeChannelModeratedByAppInstanceUser
* @see AWS API Documentation
*/
DescribeChannelModeratedByAppInstanceUserResult describeChannelModeratedByAppInstanceUser(
DescribeChannelModeratedByAppInstanceUserRequest describeChannelModeratedByAppInstanceUserRequest);
/**
*
* Returns the full details of a single ChannelModerator.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the AppInstanceUserArn
of the
* user that makes the API call as the value in the header.
*
*
*
* @param describeChannelModeratorRequest
* @return Result of the DescribeChannelModerator operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DescribeChannelModerator
* @see AWS API Documentation
*/
DescribeChannelModeratorResult describeChannelModerator(DescribeChannelModeratorRequest describeChannelModeratorRequest);
/**
*
* Disassociates a channel flow from all its channels. Once disassociated, all messages to that channel stop going
* through the channel flow processor.
*
*
*
* Only administrators or channel moderators can disassociate a channel flow.
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param disassociateChannelFlowRequest
* @return Result of the DisassociateChannelFlow operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.DisassociateChannelFlow
* @see AWS API Documentation
*/
DisassociateChannelFlowResult disassociateChannelFlow(DisassociateChannelFlowRequest disassociateChannelFlowRequest);
/**
*
* Gets the membership preferences of an AppInstanceUser
or AppInstanceBot
for the
* specified channel. A user or a bot must be a member of the channel and own the membership in order to retrieve
* membership preferences. Users or bots in the AppInstanceAdmin
and channel moderator roles can't
* retrieve preferences for other users or bots. Banned users or bots can't retrieve membership preferences for the
* channel from which they are banned.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param getChannelMembershipPreferencesRequest
* @return Result of the GetChannelMembershipPreferences operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.GetChannelMembershipPreferences
* @see AWS API Documentation
*/
GetChannelMembershipPreferencesResult getChannelMembershipPreferences(GetChannelMembershipPreferencesRequest getChannelMembershipPreferencesRequest);
/**
*
* Gets the full details of a channel message.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param getChannelMessageRequest
* @return Result of the GetChannelMessage operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.GetChannelMessage
* @see AWS API Documentation
*/
GetChannelMessageResult getChannelMessage(GetChannelMessageRequest getChannelMessageRequest);
/**
*
* Gets message status for a specified messageId
. Use this API to determine the intermediate status of
* messages going through channel flow processing. The API provides an alternative to retrieving message status if
* the event was not received because a client wasn't connected to a websocket.
*
*
* Messages can have any one of these statuses.
*
*
* - SENT
* -
*
* Message processed successfully
*
*
* - PENDING
* -
*
* Ongoing processing
*
*
* - FAILED
* -
*
* Processing failed
*
*
* - DENIED
* -
*
* Message denied by the processor
*
*
*
*
*
* -
*
* This API does not return statuses for denied messages, because we don't store them once the processor denies
* them.
*
*
* -
*
* Only the message sender can invoke this API.
*
*
* -
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
*
*
* @param getChannelMessageStatusRequest
* @return Result of the GetChannelMessageStatus operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.GetChannelMessageStatus
* @see AWS API Documentation
*/
GetChannelMessageStatusResult getChannelMessageStatus(GetChannelMessageStatusRequest getChannelMessageStatusRequest);
/**
*
* The details of the endpoint for the messaging session.
*
*
* @param getMessagingSessionEndpointRequest
* @return Result of the GetMessagingSessionEndpoint operation returned by the service.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.GetMessagingSessionEndpoint
* @see AWS API Documentation
*/
GetMessagingSessionEndpointResult getMessagingSessionEndpoint(GetMessagingSessionEndpointRequest getMessagingSessionEndpointRequest);
/**
*
* Retrieves the data streaming configuration for an AppInstance
. For more information, see Streaming messaging data in the
* Amazon Chime SDK Developer Guide.
*
*
* @param getMessagingStreamingConfigurationsRequest
* @return Result of the GetMessagingStreamingConfigurations operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.GetMessagingStreamingConfigurations
* @see AWS API Documentation
*/
GetMessagingStreamingConfigurationsResult getMessagingStreamingConfigurations(
GetMessagingStreamingConfigurationsRequest getMessagingStreamingConfigurationsRequest);
/**
*
* Lists all the users and bots banned from a particular channel.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param listChannelBansRequest
* @return Result of the ListChannelBans operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannelBans
* @see AWS API Documentation
*/
ListChannelBansResult listChannelBans(ListChannelBansRequest listChannelBansRequest);
/**
*
* Returns a paginated lists of all the channel flows created under a single Chime. This is a developer API.
*
*
* @param listChannelFlowsRequest
* @return Result of the ListChannelFlows operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannelFlows
* @see AWS API Documentation
*/
ListChannelFlowsResult listChannelFlows(ListChannelFlowsRequest listChannelFlowsRequest);
/**
*
* Lists all channel memberships in a channel.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* If you want to list the channels to which a specific app instance user belongs, see the ListChannelMembershipsForAppInstanceUser API.
*
*
* @param listChannelMembershipsRequest
* @return Result of the ListChannelMemberships operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannelMemberships
* @see AWS API Documentation
*/
ListChannelMembershipsResult listChannelMemberships(ListChannelMembershipsRequest listChannelMembershipsRequest);
/**
*
* Lists all channels that an AppInstanceUser
or AppInstanceBot
is a part of. Only an
* AppInstanceAdmin
can call the API with a user ARN that is not their own.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param listChannelMembershipsForAppInstanceUserRequest
* @return Result of the ListChannelMembershipsForAppInstanceUser operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannelMembershipsForAppInstanceUser
* @see AWS API Documentation
*/
ListChannelMembershipsForAppInstanceUserResult listChannelMembershipsForAppInstanceUser(
ListChannelMembershipsForAppInstanceUserRequest listChannelMembershipsForAppInstanceUserRequest);
/**
*
* List all the messages in a channel. Returns a paginated list of ChannelMessages
. By default, sorted
* by creation timestamp in descending order.
*
*
*
* Redacted messages appear in the results as empty, since they are only redacted, not deleted. Deleted messages do
* not appear in the results. This action always returns the latest version of an edited message.
*
*
* Also, the x-amz-chime-bearer
request header is mandatory. Use the ARN of the
* AppInstanceUser
or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param listChannelMessagesRequest
* @return Result of the ListChannelMessages operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannelMessages
* @see AWS API Documentation
*/
ListChannelMessagesResult listChannelMessages(ListChannelMessagesRequest listChannelMessagesRequest);
/**
*
* Lists all the moderators for a channel.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param listChannelModeratorsRequest
* @return Result of the ListChannelModerators operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannelModerators
* @see AWS API Documentation
*/
ListChannelModeratorsResult listChannelModerators(ListChannelModeratorsRequest listChannelModeratorsRequest);
/**
*
* Lists all Channels created under a single Chime App as a paginated list. You can specify filters to narrow
* results.
*
*
* Functionality & restrictions
*
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param listChannelsRequest
* @return Result of the ListChannels operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannels
* @see AWS API Documentation
*/
ListChannelsResult listChannels(ListChannelsRequest listChannelsRequest);
/**
*
* Lists all channels associated with a specified channel flow. You can associate a channel flow with multiple
* channels, but you can only associate a channel with one channel flow. This is a developer API.
*
*
* @param listChannelsAssociatedWithChannelFlowRequest
* @return Result of the ListChannelsAssociatedWithChannelFlow operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannelsAssociatedWithChannelFlow
* @see AWS API Documentation
*/
ListChannelsAssociatedWithChannelFlowResult listChannelsAssociatedWithChannelFlow(
ListChannelsAssociatedWithChannelFlowRequest listChannelsAssociatedWithChannelFlowRequest);
/**
*
* A list of the channels moderated by an AppInstanceUser
.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param listChannelsModeratedByAppInstanceUserRequest
* @return Result of the ListChannelsModeratedByAppInstanceUser operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListChannelsModeratedByAppInstanceUser
* @see AWS API Documentation
*/
ListChannelsModeratedByAppInstanceUserResult listChannelsModeratedByAppInstanceUser(
ListChannelsModeratedByAppInstanceUserRequest listChannelsModeratedByAppInstanceUserRequest);
/**
*
* Lists all the SubChannels in an elastic channel when given a channel ID. Available only to the app instance
* admins and channel moderators of elastic channels.
*
*
* @param listSubChannelsRequest
* @return Result of the ListSubChannels operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListSubChannels
* @see AWS API Documentation
*/
ListSubChannelsResult listSubChannels(ListSubChannelsRequest listSubChannelsRequest);
/**
*
* Lists the tags applied to an Amazon Chime SDK messaging resource.
*
*
* @param listTagsForResourceRequest
* @return Result of the ListTagsForResource operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.ListTagsForResource
* @see AWS API Documentation
*/
ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* Sets the number of days before the channel is automatically deleted.
*
*
*
* -
*
* A background process deletes expired channels within 6 hours of expiration. Actual deletion times may vary.
*
*
* -
*
* Expired channels that have not yet been deleted appear as active, and you can update their expiration settings.
* The system honors the new settings.
*
*
* -
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
*
*
* @param putChannelExpirationSettingsRequest
* @return Result of the PutChannelExpirationSettings operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.PutChannelExpirationSettings
* @see AWS API Documentation
*/
PutChannelExpirationSettingsResult putChannelExpirationSettings(PutChannelExpirationSettingsRequest putChannelExpirationSettingsRequest);
/**
*
* Sets the membership preferences of an AppInstanceUser
or AppInstanceBot
for the
* specified channel. The user or bot must be a member of the channel. Only the user or bot who owns the membership
* can set preferences. Users or bots in the AppInstanceAdmin
and channel moderator roles can't set
* preferences for other users. Banned users or bots can't set membership preferences for the channel from which
* they are banned.
*
*
*
* The x-amz-chime-bearer request header is mandatory. Use the ARN of an AppInstanceUser
or
* AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param putChannelMembershipPreferencesRequest
* @return Result of the PutChannelMembershipPreferences operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.PutChannelMembershipPreferences
* @see AWS API Documentation
*/
PutChannelMembershipPreferencesResult putChannelMembershipPreferences(PutChannelMembershipPreferencesRequest putChannelMembershipPreferencesRequest);
/**
*
* Sets the data streaming configuration for an AppInstance
. For more information, see Streaming messaging data in the
* Amazon Chime SDK Developer Guide.
*
*
* @param putMessagingStreamingConfigurationsRequest
* @return Result of the PutMessagingStreamingConfigurations operation returned by the service.
* @throws NotFoundException
* One or more of the resources in the request does not exist in the system.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.PutMessagingStreamingConfigurations
* @see AWS API Documentation
*/
PutMessagingStreamingConfigurationsResult putMessagingStreamingConfigurations(
PutMessagingStreamingConfigurationsRequest putMessagingStreamingConfigurationsRequest);
/**
*
* Redacts message content, but not metadata. The message exists in the back end, but the action returns null
* content, and the state shows as redacted.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param redactChannelMessageRequest
* @return Result of the RedactChannelMessage operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.RedactChannelMessage
* @see AWS API Documentation
*/
RedactChannelMessageResult redactChannelMessage(RedactChannelMessageRequest redactChannelMessageRequest);
/**
*
* Allows the ChimeBearer
to search channels by channel members. Users or bots can search across the
* channels that they belong to. Users in the AppInstanceAdmin
role can search across all channels.
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
* @param searchChannelsRequest
* @return Result of the SearchChannels operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.SearchChannels
* @see AWS API Documentation
*/
SearchChannelsResult searchChannels(SearchChannelsRequest searchChannelsRequest);
/**
*
* Sends a message to a particular channel that the member is a part of.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
* Also, STANDARD
messages can be up to 4KB in size and contain metadata. Metadata is arbitrary, and
* you can use it in a variety of ways, such as containing a link to an attachment.
*
*
* CONTROL
messages are limited to 30 bytes and do not contain metadata.
*
*
*
* @param sendChannelMessageRequest
* @return Result of the SendChannelMessage operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.SendChannelMessage
* @see AWS API Documentation
*/
SendChannelMessageResult sendChannelMessage(SendChannelMessageRequest sendChannelMessageRequest);
/**
*
* Applies the specified tags to the specified Amazon Chime SDK messaging resource.
*
*
* @param tagResourceRequest
* @return Result of the TagResource operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ResourceLimitExceededException
* The request exceeds the resource limit.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.TagResource
* @see AWS API Documentation
*/
TagResourceResult tagResource(TagResourceRequest tagResourceRequest);
/**
*
* Removes the specified tags from the specified Amazon Chime SDK messaging resource.
*
*
* @param untagResourceRequest
* @return Result of the UntagResource operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.UntagResource
* @see AWS API Documentation
*/
UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest);
/**
*
* Update a channel's attributes.
*
*
* Restriction: You can't change a channel's privacy.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param updateChannelRequest
* @return Result of the UpdateChannel operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.UpdateChannel
* @see AWS API Documentation
*/
UpdateChannelResult updateChannel(UpdateChannelRequest updateChannelRequest);
/**
*
* Updates channel flow attributes. This is a developer API.
*
*
* @param updateChannelFlowRequest
* @return Result of the UpdateChannelFlow operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.UpdateChannelFlow
* @see AWS API Documentation
*/
UpdateChannelFlowResult updateChannelFlow(UpdateChannelFlowRequest updateChannelFlowRequest);
/**
*
* Updates the content of a message.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param updateChannelMessageRequest
* @return Result of the UpdateChannelMessage operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.UpdateChannelMessage
* @see AWS API Documentation
*/
UpdateChannelMessageResult updateChannelMessage(UpdateChannelMessageRequest updateChannelMessageRequest);
/**
*
* The details of the time when a user last read messages in a channel.
*
*
*
* The x-amz-chime-bearer
request header is mandatory. Use the ARN of the AppInstanceUser
* or AppInstanceBot
that makes the API call as the value in the header.
*
*
*
* @param updateChannelReadMarkerRequest
* @return Result of the UpdateChannelReadMarker operation returned by the service.
* @throws BadRequestException
* The input parameters don't match the service's restrictions.
* @throws ForbiddenException
* The client is permanently forbidden from making the request.
* @throws ConflictException
* The request could not be processed because of conflict in the current state of the resource.
* @throws UnauthorizedClientException
* The client is not currently authorized to make the request.
* @throws ThrottledClientException
* The client exceeded its request rate limit.
* @throws ServiceUnavailableException
* The service is currently unavailable.
* @throws ServiceFailureException
* The service encountered an unexpected error.
* @sample AmazonChimeSDKMessaging.UpdateChannelReadMarker
* @see AWS API Documentation
*/
UpdateChannelReadMarkerResult updateChannelReadMarker(UpdateChannelReadMarkerRequest updateChannelReadMarkerRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}