/* * Copyright 2010-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 com.amazonaws.*; import com.amazonaws.regions.*; import com.amazonaws.services.chimesdkmessaging.model.*; /** * Interface for accessing Amazon ChimeSDK Messaging *

* 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. *

**/ public interface AmazonChimeSDKMessaging { /** * Overrides the default endpoint for this client * ("https://messaging-chime.us-east-1.amazonaws.com"). Callers can use this * method to control which AWS region they want to work with. *

* Callers can pass in just the endpoint (ex: * "messaging-chime.us-east-1.amazonaws.com") or a full URL, including the * protocol (ex: "https://messaging-chime.us-east-1.amazonaws.com"). If the * protocol is not specified here, the default protocol from this client's * {@link ClientConfiguration} will be used, which by default is HTTPS. *

* For more information on using AWS regions with the AWS SDK for Java, and * a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID= * 3912 *

* This method is not threadsafe. An endpoint should be configured when * the client is created and before any service requests are made. Changing * it afterwards creates inevitable race conditions for any service requests * in transit or retrying. * * @param endpoint The endpoint (ex: * "messaging-chime.us-east-1.amazonaws.com") or a full URL, * including the protocol (ex: * "https://messaging-chime.us-east-1.amazonaws.com") of the * region specific AWS endpoint this client will communicate * with. * @throws IllegalArgumentException If any problems are detected with the * specified endpoint. */ public void setEndpoint(String endpoint) throws java.lang.IllegalArgumentException; /** * An alternative to {@link AmazonChimeSDKMessaging#setEndpoint(String)}, * sets the regional endpoint for this client's service calls. Callers can * use this method to control which AWS region they want to work with. *

* By default, all service endpoints in all regions use the https protocol. * To use http instead, specify it in the {@link ClientConfiguration} * supplied at construction. *

* This method is not threadsafe. A region should be configured when the * client is created and before any service requests are made. Changing it * afterwards creates inevitable race conditions for any service requests in * transit or retrying. * * @param region The region this client will communicate with. See * {@link Region#getRegion(com.amazonaws.regions.Regions)} for * accessing a given region. * @throws java.lang.IllegalArgumentException If the given region is null, * or if this service isn't available in the given region. See * {@link Region#isServiceSupported(String)} * @see Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, * com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) */ public void setRegion(Region region) throws java.lang.IllegalArgumentException; /** *

* 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 * @throws BadRequestException * @throws ForbiddenException * @throws NotFoundException * @throws UnauthorizedClientException * @throws ConflictException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void associateChannelFlow(AssociateChannelFlowRequest associateChannelFlowRequest) throws AmazonClientException, AmazonServiceException; /** *

* Adds a specified number of users and bots to a channel. *

* * @param batchCreateChannelMembershipRequest * @return batchCreateChannelMembershipResult The response from the * BatchCreateChannelMembership service method, as returned by * Amazon ChimeSDK Messaging. * @throws ServiceFailureException * @throws ServiceUnavailableException * @throws UnauthorizedClientException * @throws BadRequestException * @throws NotFoundException * @throws ForbiddenException * @throws ThrottledClientException * @throws ResourceLimitExceededException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ BatchCreateChannelMembershipResult batchCreateChannelMembership( BatchCreateChannelMembershipRequest batchCreateChannelMembershipRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 channelFlowCallbackResult The response from the * ChannelFlowCallback service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ConflictException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ChannelFlowCallbackResult channelFlowCallback( ChannelFlowCallbackRequest channelFlowCallbackRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 createChannelResult The response from the CreateChannel service * method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ConflictException * @throws ResourceLimitExceededException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ CreateChannelResult createChannel(CreateChannelRequest createChannelRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 createChannelBanResult The response from the CreateChannelBan * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ConflictException * @throws ResourceLimitExceededException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ CreateChannelBanResult createChannelBan(CreateChannelBanRequest createChannelBanRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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: *

*
    *
  1. *

    * New and updated messages *

    *
  2. *
  3. *

    * Persistent and non-persistent messages *

    *
  4. *
  5. *

    * The Standard message type *

    *
  6. *
* *

* 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 createChannelFlowResult The response from the CreateChannelFlow * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ConflictException * @throws ResourceLimitExceededException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ CreateChannelFlowResult createChannelFlow(CreateChannelFlowRequest createChannelFlowRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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: *

* * *

* 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 createChannelMembershipResult The response from the * CreateChannelMembership service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws NotFoundException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ConflictException * @throws ResourceLimitExceededException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ CreateChannelMembershipResult createChannelMembership( CreateChannelMembershipRequest createChannelMembershipRequest) throws AmazonClientException, AmazonServiceException; /** *

* Creates a new ChannelModerator. A channel moderator can: *

* * *

* The x-amz-chime-bearer request header is mandatory. Use the * ARN of the AppInstanceUser or AppInstanceBotof * the user that makes the API call as the value in the header. *

*
* * @param createChannelModeratorRequest * @return createChannelModeratorResult The response from the * CreateChannelModerator service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ConflictException * @throws ResourceLimitExceededException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ CreateChannelModeratorResult createChannelModerator( CreateChannelModeratorRequest createChannelModeratorRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 * @throws BadRequestException * @throws ForbiddenException * @throws ConflictException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void deleteChannel(DeleteChannelRequest deleteChannelRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void deleteChannelBan(DeleteChannelBanRequest deleteChannelBanRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ConflictException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void deleteChannelFlow(DeleteChannelFlowRequest deleteChannelFlowRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ConflictException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void deleteChannelMembership(DeleteChannelMembershipRequest deleteChannelMembershipRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void deleteChannelMessage(DeleteChannelMessageRequest deleteChannelMessageRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void deleteChannelModerator(DeleteChannelModeratorRequest deleteChannelModeratorRequest) throws AmazonClientException, AmazonServiceException; /** *

* Deletes the streaming configurations for an AppInstance. For * more information, see Streaming messaging data in the Amazon Chime SDK Developer * Guide. *

* * @param deleteMessagingStreamingConfigurationsRequest * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void deleteMessagingStreamingConfigurations( DeleteMessagingStreamingConfigurationsRequest deleteMessagingStreamingConfigurationsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 describeChannelResult The response from the DescribeChannel * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ DescribeChannelResult describeChannel(DescribeChannelRequest describeChannelRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 describeChannelBanResult The response from the DescribeChannelBan * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws NotFoundException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ DescribeChannelBanResult describeChannelBan(DescribeChannelBanRequest describeChannelBanRequest) throws AmazonClientException, AmazonServiceException; /** *

* Returns the full details of a channel flow in an Amazon Chime * AppInstance. This is a developer API. *

* * @param describeChannelFlowRequest * @return describeChannelFlowResult The response from the * DescribeChannelFlow service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ DescribeChannelFlowResult describeChannelFlow( DescribeChannelFlowRequest describeChannelFlowRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 describeChannelMembershipResult The response from the * DescribeChannelMembership service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws NotFoundException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ DescribeChannelMembershipResult describeChannelMembership( DescribeChannelMembershipRequest describeChannelMembershipRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 describeChannelMembershipForAppInstanceUserResult The response * from the DescribeChannelMembershipForAppInstanceUser service * method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ DescribeChannelMembershipForAppInstanceUserResult describeChannelMembershipForAppInstanceUser( DescribeChannelMembershipForAppInstanceUserRequest describeChannelMembershipForAppInstanceUserRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 describeChannelModeratedByAppInstanceUserResult The response from * the DescribeChannelModeratedByAppInstanceUser service method, as * returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ DescribeChannelModeratedByAppInstanceUserResult describeChannelModeratedByAppInstanceUser( DescribeChannelModeratedByAppInstanceUserRequest describeChannelModeratedByAppInstanceUserRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 describeChannelModeratorResult The response from the * DescribeChannelModerator service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws NotFoundException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ DescribeChannelModeratorResult describeChannelModerator( DescribeChannelModeratorRequest describeChannelModeratorRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 * @throws BadRequestException * @throws ForbiddenException * @throws NotFoundException * @throws UnauthorizedClientException * @throws ConflictException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void disassociateChannelFlow(DisassociateChannelFlowRequest disassociateChannelFlowRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 getChannelMembershipPreferencesResult The response from the * GetChannelMembershipPreferences service method, as returned by * Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws UnauthorizedClientException * @throws ForbiddenException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ GetChannelMembershipPreferencesResult getChannelMembershipPreferences( GetChannelMembershipPreferencesRequest getChannelMembershipPreferencesRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 getChannelMessageResult The response from the GetChannelMessage * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws NotFoundException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ GetChannelMessageResult getChannelMessage(GetChannelMessageRequest getChannelMessageRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 *

*
*
* * * * * @param getChannelMessageStatusRequest * @return getChannelMessageStatusResult The response from the * GetChannelMessageStatus service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ GetChannelMessageStatusResult getChannelMessageStatus( GetChannelMessageStatusRequest getChannelMessageStatusRequest) throws AmazonClientException, AmazonServiceException; /** *

* The details of the endpoint for the messaging session. *

* * @param getMessagingSessionEndpointRequest * @return getMessagingSessionEndpointResult The response from the * GetMessagingSessionEndpoint service method, as returned by Amazon * ChimeSDK Messaging. * @throws UnauthorizedClientException * @throws ForbiddenException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ GetMessagingSessionEndpointResult getMessagingSessionEndpoint( GetMessagingSessionEndpointRequest getMessagingSessionEndpointRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 getMessagingStreamingConfigurationsResult The response from the * GetMessagingStreamingConfigurations service method, as returned * by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws NotFoundException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ GetMessagingStreamingConfigurationsResult getMessagingStreamingConfigurations( GetMessagingStreamingConfigurationsRequest getMessagingStreamingConfigurationsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listChannelBansResult The response from the ListChannelBans * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelBansResult listChannelBans(ListChannelBansRequest listChannelBansRequest) throws AmazonClientException, AmazonServiceException; /** *

* Returns a paginated lists of all the channel flows created under a single * Chime. This is a developer API. *

* * @param listChannelFlowsRequest * @return listChannelFlowsResult The response from the ListChannelFlows * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelFlowsResult listChannelFlows(ListChannelFlowsRequest listChannelFlowsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listChannelMembershipsResult The response from the * ListChannelMemberships service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelMembershipsResult listChannelMemberships( ListChannelMembershipsRequest listChannelMembershipsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listChannelMembershipsForAppInstanceUserResult The response from * the ListChannelMembershipsForAppInstanceUser service method, as * returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelMembershipsForAppInstanceUserResult listChannelMembershipsForAppInstanceUser( ListChannelMembershipsForAppInstanceUserRequest listChannelMembershipsForAppInstanceUserRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listChannelMessagesResult The response from the * ListChannelMessages service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelMessagesResult listChannelMessages( ListChannelMessagesRequest listChannelMessagesRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listChannelModeratorsResult The response from the * ListChannelModerators service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelModeratorsResult listChannelModerators( ListChannelModeratorsRequest listChannelModeratorsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listChannelsResult The response from the ListChannels service * method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelsResult listChannels(ListChannelsRequest listChannelsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listChannelsAssociatedWithChannelFlowResult The response from the * ListChannelsAssociatedWithChannelFlow service method, as returned * by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelsAssociatedWithChannelFlowResult listChannelsAssociatedWithChannelFlow( ListChannelsAssociatedWithChannelFlowRequest listChannelsAssociatedWithChannelFlowRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listChannelsModeratedByAppInstanceUserResult The response from * the ListChannelsModeratedByAppInstanceUser service method, as * returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListChannelsModeratedByAppInstanceUserResult listChannelsModeratedByAppInstanceUser( ListChannelsModeratedByAppInstanceUserRequest listChannelsModeratedByAppInstanceUserRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 listSubChannelsResult The response from the ListSubChannels * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListSubChannelsResult listSubChannels(ListSubChannelsRequest listSubChannelsRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the tags applied to an Amazon Chime SDK messaging resource. *

* * @param listTagsForResourceRequest * @return listTagsForResourceResult The response from the * ListTagsForResource service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ ListTagsForResourceResult listTagsForResource( ListTagsForResourceRequest listTagsForResourceRequest) throws AmazonClientException, AmazonServiceException; /** *

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

* * * * * @param putChannelExpirationSettingsRequest * @return putChannelExpirationSettingsResult The response from the * PutChannelExpirationSettings service method, as returned by * Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws ConflictException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ PutChannelExpirationSettingsResult putChannelExpirationSettings( PutChannelExpirationSettingsRequest putChannelExpirationSettingsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 putChannelMembershipPreferencesResult The response from the * PutChannelMembershipPreferences service method, as returned by * Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ConflictException * @throws UnauthorizedClientException * @throws ForbiddenException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ PutChannelMembershipPreferencesResult putChannelMembershipPreferences( PutChannelMembershipPreferencesRequest putChannelMembershipPreferencesRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 putMessagingStreamingConfigurationsResult The response from the * PutMessagingStreamingConfigurations service method, as returned * by Amazon ChimeSDK Messaging. * @throws NotFoundException * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ConflictException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ PutMessagingStreamingConfigurationsResult putMessagingStreamingConfigurations( PutMessagingStreamingConfigurationsRequest putMessagingStreamingConfigurationsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 redactChannelMessageResult The response from the * RedactChannelMessage service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws ConflictException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ RedactChannelMessageResult redactChannelMessage( RedactChannelMessageRequest redactChannelMessageRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 searchChannelsResult The response from the SearchChannels service * method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ SearchChannelsResult searchChannels(SearchChannelsRequest searchChannelsRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 sendChannelMessageResult The response from the SendChannelMessage * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ConflictException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ SendChannelMessageResult sendChannelMessage(SendChannelMessageRequest sendChannelMessageRequest) throws AmazonClientException, AmazonServiceException; /** *

* Applies the specified tags to the specified Amazon Chime SDK messaging * resource. *

* * @param tagResourceRequest * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ResourceLimitExceededException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void tagResource(TagResourceRequest tagResourceRequest) throws AmazonClientException, AmazonServiceException; /** *

* Removes the specified tags from the specified Amazon Chime SDK messaging * resource. *

* * @param untagResourceRequest * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ void untagResource(UntagResourceRequest untagResourceRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 updateChannelResult The response from the UpdateChannel service * method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws ConflictException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ UpdateChannelResult updateChannel(UpdateChannelRequest updateChannelRequest) throws AmazonClientException, AmazonServiceException; /** *

* Updates channel flow attributes. This is a developer API. *

* * @param updateChannelFlowRequest * @return updateChannelFlowResult The response from the UpdateChannelFlow * service method, as returned by Amazon ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ConflictException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ UpdateChannelFlowResult updateChannelFlow(UpdateChannelFlowRequest updateChannelFlowRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 updateChannelMessageResult The response from the * UpdateChannelMessage service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ConflictException * @throws ForbiddenException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ UpdateChannelMessageResult updateChannelMessage( UpdateChannelMessageRequest updateChannelMessageRequest) throws AmazonClientException, AmazonServiceException; /** *

* 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 updateChannelReadMarkerResult The response from the * UpdateChannelReadMarker service method, as returned by Amazon * ChimeSDK Messaging. * @throws BadRequestException * @throws ForbiddenException * @throws ConflictException * @throws UnauthorizedClientException * @throws ThrottledClientException * @throws ServiceUnavailableException * @throws ServiceFailureException * @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by Amazon * ChimeSDK Messaging indicating either a problem with the data * in the request, or a server side issue. */ UpdateChannelReadMarkerResult updateChannelReadMarker( UpdateChannelReadMarkerRequest updateChannelReadMarkerRequest) throws AmazonClientException, AmazonServiceException; /** * 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. */ public 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. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); }