github.com/aavshr/aws-sdk-go@v1.41.3/service/chimesdkmessaging/api.go (about)

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package chimesdkmessaging
     4  
     5  import (
     6  	"fmt"
     7  	"time"
     8  
     9  	"github.com/aavshr/aws-sdk-go/aws"
    10  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    11  	"github.com/aavshr/aws-sdk-go/aws/request"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol"
    13  	"github.com/aavshr/aws-sdk-go/private/protocol/restjson"
    14  )
    15  
    16  const opBatchCreateChannelMembership = "BatchCreateChannelMembership"
    17  
    18  // BatchCreateChannelMembershipRequest generates a "aws/request.Request" representing the
    19  // client's request for the BatchCreateChannelMembership operation. The "output" return
    20  // value will be populated with the request's response once the request completes
    21  // successfully.
    22  //
    23  // Use "Send" method on the returned Request to send the API call to the service.
    24  // the "output" return value is not valid until after Send returns without error.
    25  //
    26  // See BatchCreateChannelMembership for more information on using the BatchCreateChannelMembership
    27  // API call, and error handling.
    28  //
    29  // This method is useful when you want to inject custom logic or configuration
    30  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    31  //
    32  //
    33  //    // Example sending a request using the BatchCreateChannelMembershipRequest method.
    34  //    req, resp := client.BatchCreateChannelMembershipRequest(params)
    35  //
    36  //    err := req.Send()
    37  //    if err == nil { // resp is now filled
    38  //        fmt.Println(resp)
    39  //    }
    40  //
    41  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/BatchCreateChannelMembership
    42  func (c *ChimeSDKMessaging) BatchCreateChannelMembershipRequest(input *BatchCreateChannelMembershipInput) (req *request.Request, output *BatchCreateChannelMembershipOutput) {
    43  	op := &request.Operation{
    44  		Name:       opBatchCreateChannelMembership,
    45  		HTTPMethod: "POST",
    46  		HTTPPath:   "/channels/{channelArn}/memberships?operation=batch-create",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &BatchCreateChannelMembershipInput{}
    51  	}
    52  
    53  	output = &BatchCreateChannelMembershipOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	return
    56  }
    57  
    58  // BatchCreateChannelMembership API operation for Amazon Chime SDK Messaging.
    59  //
    60  // Adds a specified number of users to a channel.
    61  //
    62  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    63  // with awserr.Error's Code and Message methods to get detailed information about
    64  // the error.
    65  //
    66  // See the AWS API reference guide for Amazon Chime SDK Messaging's
    67  // API operation BatchCreateChannelMembership for usage and error information.
    68  //
    69  // Returned Error Types:
    70  //   * ServiceFailureException
    71  //   The service encountered an unexpected error.
    72  //
    73  //   * ServiceUnavailableException
    74  //   The service is currently unavailable.
    75  //
    76  //   * UnauthorizedClientException
    77  //   The client is not currently authorized to make the request.
    78  //
    79  //   * BadRequestException
    80  //   The input parameters don't match the service's restrictions.
    81  //
    82  //   * ForbiddenException
    83  //   The client is permanently forbidden from making the request.
    84  //
    85  //   * ThrottledClientException
    86  //   The client exceeded its request rate limit.
    87  //
    88  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/BatchCreateChannelMembership
    89  func (c *ChimeSDKMessaging) BatchCreateChannelMembership(input *BatchCreateChannelMembershipInput) (*BatchCreateChannelMembershipOutput, error) {
    90  	req, out := c.BatchCreateChannelMembershipRequest(input)
    91  	return out, req.Send()
    92  }
    93  
    94  // BatchCreateChannelMembershipWithContext is the same as BatchCreateChannelMembership with the addition of
    95  // the ability to pass a context and additional request options.
    96  //
    97  // See BatchCreateChannelMembership for details on how to use this API operation.
    98  //
    99  // The context must be non-nil and will be used for request cancellation. If
   100  // the context is nil a panic will occur. In the future the SDK may create
   101  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   102  // for more information on using Contexts.
   103  func (c *ChimeSDKMessaging) BatchCreateChannelMembershipWithContext(ctx aws.Context, input *BatchCreateChannelMembershipInput, opts ...request.Option) (*BatchCreateChannelMembershipOutput, error) {
   104  	req, out := c.BatchCreateChannelMembershipRequest(input)
   105  	req.SetContext(ctx)
   106  	req.ApplyOptions(opts...)
   107  	return out, req.Send()
   108  }
   109  
   110  const opCreateChannel = "CreateChannel"
   111  
   112  // CreateChannelRequest generates a "aws/request.Request" representing the
   113  // client's request for the CreateChannel operation. The "output" return
   114  // value will be populated with the request's response once the request completes
   115  // successfully.
   116  //
   117  // Use "Send" method on the returned Request to send the API call to the service.
   118  // the "output" return value is not valid until after Send returns without error.
   119  //
   120  // See CreateChannel for more information on using the CreateChannel
   121  // API call, and error handling.
   122  //
   123  // This method is useful when you want to inject custom logic or configuration
   124  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   125  //
   126  //
   127  //    // Example sending a request using the CreateChannelRequest method.
   128  //    req, resp := client.CreateChannelRequest(params)
   129  //
   130  //    err := req.Send()
   131  //    if err == nil { // resp is now filled
   132  //        fmt.Println(resp)
   133  //    }
   134  //
   135  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannel
   136  func (c *ChimeSDKMessaging) CreateChannelRequest(input *CreateChannelInput) (req *request.Request, output *CreateChannelOutput) {
   137  	op := &request.Operation{
   138  		Name:       opCreateChannel,
   139  		HTTPMethod: "POST",
   140  		HTTPPath:   "/channels",
   141  	}
   142  
   143  	if input == nil {
   144  		input = &CreateChannelInput{}
   145  	}
   146  
   147  	output = &CreateChannelOutput{}
   148  	req = c.newRequest(op, input, output)
   149  	return
   150  }
   151  
   152  // CreateChannel API operation for Amazon Chime SDK Messaging.
   153  //
   154  // Creates a channel to which you can add users and send messages.
   155  //
   156  // Restriction: You can't change a channel's privacy.
   157  //
   158  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
   159  // of the user that makes the API call as the value in the header.
   160  //
   161  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   162  // with awserr.Error's Code and Message methods to get detailed information about
   163  // the error.
   164  //
   165  // See the AWS API reference guide for Amazon Chime SDK Messaging's
   166  // API operation CreateChannel for usage and error information.
   167  //
   168  // Returned Error Types:
   169  //   * BadRequestException
   170  //   The input parameters don't match the service's restrictions.
   171  //
   172  //   * ForbiddenException
   173  //   The client is permanently forbidden from making the request.
   174  //
   175  //   * UnauthorizedClientException
   176  //   The client is not currently authorized to make the request.
   177  //
   178  //   * ConflictException
   179  //   The request could not be processed because of conflict in the current state
   180  //   of the resource.
   181  //
   182  //   * ResourceLimitExceededException
   183  //   The request exceeds the resource limit.
   184  //
   185  //   * ThrottledClientException
   186  //   The client exceeded its request rate limit.
   187  //
   188  //   * ServiceUnavailableException
   189  //   The service is currently unavailable.
   190  //
   191  //   * ServiceFailureException
   192  //   The service encountered an unexpected error.
   193  //
   194  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannel
   195  func (c *ChimeSDKMessaging) CreateChannel(input *CreateChannelInput) (*CreateChannelOutput, error) {
   196  	req, out := c.CreateChannelRequest(input)
   197  	return out, req.Send()
   198  }
   199  
   200  // CreateChannelWithContext is the same as CreateChannel with the addition of
   201  // the ability to pass a context and additional request options.
   202  //
   203  // See CreateChannel for details on how to use this API operation.
   204  //
   205  // The context must be non-nil and will be used for request cancellation. If
   206  // the context is nil a panic will occur. In the future the SDK may create
   207  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   208  // for more information on using Contexts.
   209  func (c *ChimeSDKMessaging) CreateChannelWithContext(ctx aws.Context, input *CreateChannelInput, opts ...request.Option) (*CreateChannelOutput, error) {
   210  	req, out := c.CreateChannelRequest(input)
   211  	req.SetContext(ctx)
   212  	req.ApplyOptions(opts...)
   213  	return out, req.Send()
   214  }
   215  
   216  const opCreateChannelBan = "CreateChannelBan"
   217  
   218  // CreateChannelBanRequest generates a "aws/request.Request" representing the
   219  // client's request for the CreateChannelBan operation. The "output" return
   220  // value will be populated with the request's response once the request completes
   221  // successfully.
   222  //
   223  // Use "Send" method on the returned Request to send the API call to the service.
   224  // the "output" return value is not valid until after Send returns without error.
   225  //
   226  // See CreateChannelBan for more information on using the CreateChannelBan
   227  // API call, and error handling.
   228  //
   229  // This method is useful when you want to inject custom logic or configuration
   230  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   231  //
   232  //
   233  //    // Example sending a request using the CreateChannelBanRequest method.
   234  //    req, resp := client.CreateChannelBanRequest(params)
   235  //
   236  //    err := req.Send()
   237  //    if err == nil { // resp is now filled
   238  //        fmt.Println(resp)
   239  //    }
   240  //
   241  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannelBan
   242  func (c *ChimeSDKMessaging) CreateChannelBanRequest(input *CreateChannelBanInput) (req *request.Request, output *CreateChannelBanOutput) {
   243  	op := &request.Operation{
   244  		Name:       opCreateChannelBan,
   245  		HTTPMethod: "POST",
   246  		HTTPPath:   "/channels/{channelArn}/bans",
   247  	}
   248  
   249  	if input == nil {
   250  		input = &CreateChannelBanInput{}
   251  	}
   252  
   253  	output = &CreateChannelBanOutput{}
   254  	req = c.newRequest(op, input, output)
   255  	return
   256  }
   257  
   258  // CreateChannelBan API operation for Amazon Chime SDK Messaging.
   259  //
   260  // Permanently bans a member from a channel. Moderators can't add banned members
   261  // to a channel. To undo a ban, you first have to DeleteChannelBan, and then
   262  // CreateChannelMembership. Bans are cleaned up when you delete users or channels.
   263  //
   264  // If you ban a user who is already part of a channel, that user is automatically
   265  // kicked from the channel.
   266  //
   267  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
   268  // of the user that makes the API call as the value in the header.
   269  //
   270  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   271  // with awserr.Error's Code and Message methods to get detailed information about
   272  // the error.
   273  //
   274  // See the AWS API reference guide for Amazon Chime SDK Messaging's
   275  // API operation CreateChannelBan for usage and error information.
   276  //
   277  // Returned Error Types:
   278  //   * BadRequestException
   279  //   The input parameters don't match the service's restrictions.
   280  //
   281  //   * ForbiddenException
   282  //   The client is permanently forbidden from making the request.
   283  //
   284  //   * UnauthorizedClientException
   285  //   The client is not currently authorized to make the request.
   286  //
   287  //   * ConflictException
   288  //   The request could not be processed because of conflict in the current state
   289  //   of the resource.
   290  //
   291  //   * ResourceLimitExceededException
   292  //   The request exceeds the resource limit.
   293  //
   294  //   * ThrottledClientException
   295  //   The client exceeded its request rate limit.
   296  //
   297  //   * ServiceUnavailableException
   298  //   The service is currently unavailable.
   299  //
   300  //   * ServiceFailureException
   301  //   The service encountered an unexpected error.
   302  //
   303  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannelBan
   304  func (c *ChimeSDKMessaging) CreateChannelBan(input *CreateChannelBanInput) (*CreateChannelBanOutput, error) {
   305  	req, out := c.CreateChannelBanRequest(input)
   306  	return out, req.Send()
   307  }
   308  
   309  // CreateChannelBanWithContext is the same as CreateChannelBan with the addition of
   310  // the ability to pass a context and additional request options.
   311  //
   312  // See CreateChannelBan for details on how to use this API operation.
   313  //
   314  // The context must be non-nil and will be used for request cancellation. If
   315  // the context is nil a panic will occur. In the future the SDK may create
   316  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   317  // for more information on using Contexts.
   318  func (c *ChimeSDKMessaging) CreateChannelBanWithContext(ctx aws.Context, input *CreateChannelBanInput, opts ...request.Option) (*CreateChannelBanOutput, error) {
   319  	req, out := c.CreateChannelBanRequest(input)
   320  	req.SetContext(ctx)
   321  	req.ApplyOptions(opts...)
   322  	return out, req.Send()
   323  }
   324  
   325  const opCreateChannelMembership = "CreateChannelMembership"
   326  
   327  // CreateChannelMembershipRequest generates a "aws/request.Request" representing the
   328  // client's request for the CreateChannelMembership operation. The "output" return
   329  // value will be populated with the request's response once the request completes
   330  // successfully.
   331  //
   332  // Use "Send" method on the returned Request to send the API call to the service.
   333  // the "output" return value is not valid until after Send returns without error.
   334  //
   335  // See CreateChannelMembership for more information on using the CreateChannelMembership
   336  // API call, and error handling.
   337  //
   338  // This method is useful when you want to inject custom logic or configuration
   339  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   340  //
   341  //
   342  //    // Example sending a request using the CreateChannelMembershipRequest method.
   343  //    req, resp := client.CreateChannelMembershipRequest(params)
   344  //
   345  //    err := req.Send()
   346  //    if err == nil { // resp is now filled
   347  //        fmt.Println(resp)
   348  //    }
   349  //
   350  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannelMembership
   351  func (c *ChimeSDKMessaging) CreateChannelMembershipRequest(input *CreateChannelMembershipInput) (req *request.Request, output *CreateChannelMembershipOutput) {
   352  	op := &request.Operation{
   353  		Name:       opCreateChannelMembership,
   354  		HTTPMethod: "POST",
   355  		HTTPPath:   "/channels/{channelArn}/memberships",
   356  	}
   357  
   358  	if input == nil {
   359  		input = &CreateChannelMembershipInput{}
   360  	}
   361  
   362  	output = &CreateChannelMembershipOutput{}
   363  	req = c.newRequest(op, input, output)
   364  	return
   365  }
   366  
   367  // CreateChannelMembership API operation for Amazon Chime SDK Messaging.
   368  //
   369  // Adds a user to a channel. The InvitedBy response field is derived from the
   370  // request header. A channel member can:
   371  //
   372  //    * List messages
   373  //
   374  //    * Send messages
   375  //
   376  //    * Receive messages
   377  //
   378  //    * Edit their own messages
   379  //
   380  //    * Leave the channel
   381  //
   382  // Privacy settings impact this action as follows:
   383  //
   384  //    * Public Channels: You do not need to be a member to list messages, but
   385  //    you must be a member to send messages.
   386  //
   387  //    * Private Channels: You must be a member to list or send messages.
   388  //
   389  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
   390  // of the user that makes the API call as the value in the header.
   391  //
   392  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   393  // with awserr.Error's Code and Message methods to get detailed information about
   394  // the error.
   395  //
   396  // See the AWS API reference guide for Amazon Chime SDK Messaging's
   397  // API operation CreateChannelMembership for usage and error information.
   398  //
   399  // Returned Error Types:
   400  //   * BadRequestException
   401  //   The input parameters don't match the service's restrictions.
   402  //
   403  //   * ForbiddenException
   404  //   The client is permanently forbidden from making the request.
   405  //
   406  //   * UnauthorizedClientException
   407  //   The client is not currently authorized to make the request.
   408  //
   409  //   * ConflictException
   410  //   The request could not be processed because of conflict in the current state
   411  //   of the resource.
   412  //
   413  //   * ResourceLimitExceededException
   414  //   The request exceeds the resource limit.
   415  //
   416  //   * ThrottledClientException
   417  //   The client exceeded its request rate limit.
   418  //
   419  //   * ServiceUnavailableException
   420  //   The service is currently unavailable.
   421  //
   422  //   * ServiceFailureException
   423  //   The service encountered an unexpected error.
   424  //
   425  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannelMembership
   426  func (c *ChimeSDKMessaging) CreateChannelMembership(input *CreateChannelMembershipInput) (*CreateChannelMembershipOutput, error) {
   427  	req, out := c.CreateChannelMembershipRequest(input)
   428  	return out, req.Send()
   429  }
   430  
   431  // CreateChannelMembershipWithContext is the same as CreateChannelMembership with the addition of
   432  // the ability to pass a context and additional request options.
   433  //
   434  // See CreateChannelMembership for details on how to use this API operation.
   435  //
   436  // The context must be non-nil and will be used for request cancellation. If
   437  // the context is nil a panic will occur. In the future the SDK may create
   438  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   439  // for more information on using Contexts.
   440  func (c *ChimeSDKMessaging) CreateChannelMembershipWithContext(ctx aws.Context, input *CreateChannelMembershipInput, opts ...request.Option) (*CreateChannelMembershipOutput, error) {
   441  	req, out := c.CreateChannelMembershipRequest(input)
   442  	req.SetContext(ctx)
   443  	req.ApplyOptions(opts...)
   444  	return out, req.Send()
   445  }
   446  
   447  const opCreateChannelModerator = "CreateChannelModerator"
   448  
   449  // CreateChannelModeratorRequest generates a "aws/request.Request" representing the
   450  // client's request for the CreateChannelModerator operation. The "output" return
   451  // value will be populated with the request's response once the request completes
   452  // successfully.
   453  //
   454  // Use "Send" method on the returned Request to send the API call to the service.
   455  // the "output" return value is not valid until after Send returns without error.
   456  //
   457  // See CreateChannelModerator for more information on using the CreateChannelModerator
   458  // API call, and error handling.
   459  //
   460  // This method is useful when you want to inject custom logic or configuration
   461  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   462  //
   463  //
   464  //    // Example sending a request using the CreateChannelModeratorRequest method.
   465  //    req, resp := client.CreateChannelModeratorRequest(params)
   466  //
   467  //    err := req.Send()
   468  //    if err == nil { // resp is now filled
   469  //        fmt.Println(resp)
   470  //    }
   471  //
   472  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannelModerator
   473  func (c *ChimeSDKMessaging) CreateChannelModeratorRequest(input *CreateChannelModeratorInput) (req *request.Request, output *CreateChannelModeratorOutput) {
   474  	op := &request.Operation{
   475  		Name:       opCreateChannelModerator,
   476  		HTTPMethod: "POST",
   477  		HTTPPath:   "/channels/{channelArn}/moderators",
   478  	}
   479  
   480  	if input == nil {
   481  		input = &CreateChannelModeratorInput{}
   482  	}
   483  
   484  	output = &CreateChannelModeratorOutput{}
   485  	req = c.newRequest(op, input, output)
   486  	return
   487  }
   488  
   489  // CreateChannelModerator API operation for Amazon Chime SDK Messaging.
   490  //
   491  // Creates a new ChannelModerator. A channel moderator can:
   492  //
   493  //    * Add and remove other members of the channel.
   494  //
   495  //    * Add and remove other moderators of the channel.
   496  //
   497  //    * Add and remove user bans for the channel.
   498  //
   499  //    * Redact messages in the channel.
   500  //
   501  //    * List messages in the channel.
   502  //
   503  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
   504  // of the user that makes the API call as the value in the header.
   505  //
   506  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   507  // with awserr.Error's Code and Message methods to get detailed information about
   508  // the error.
   509  //
   510  // See the AWS API reference guide for Amazon Chime SDK Messaging's
   511  // API operation CreateChannelModerator for usage and error information.
   512  //
   513  // Returned Error Types:
   514  //   * BadRequestException
   515  //   The input parameters don't match the service's restrictions.
   516  //
   517  //   * ForbiddenException
   518  //   The client is permanently forbidden from making the request.
   519  //
   520  //   * UnauthorizedClientException
   521  //   The client is not currently authorized to make the request.
   522  //
   523  //   * ConflictException
   524  //   The request could not be processed because of conflict in the current state
   525  //   of the resource.
   526  //
   527  //   * ResourceLimitExceededException
   528  //   The request exceeds the resource limit.
   529  //
   530  //   * ThrottledClientException
   531  //   The client exceeded its request rate limit.
   532  //
   533  //   * ServiceUnavailableException
   534  //   The service is currently unavailable.
   535  //
   536  //   * ServiceFailureException
   537  //   The service encountered an unexpected error.
   538  //
   539  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/CreateChannelModerator
   540  func (c *ChimeSDKMessaging) CreateChannelModerator(input *CreateChannelModeratorInput) (*CreateChannelModeratorOutput, error) {
   541  	req, out := c.CreateChannelModeratorRequest(input)
   542  	return out, req.Send()
   543  }
   544  
   545  // CreateChannelModeratorWithContext is the same as CreateChannelModerator with the addition of
   546  // the ability to pass a context and additional request options.
   547  //
   548  // See CreateChannelModerator for details on how to use this API operation.
   549  //
   550  // The context must be non-nil and will be used for request cancellation. If
   551  // the context is nil a panic will occur. In the future the SDK may create
   552  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   553  // for more information on using Contexts.
   554  func (c *ChimeSDKMessaging) CreateChannelModeratorWithContext(ctx aws.Context, input *CreateChannelModeratorInput, opts ...request.Option) (*CreateChannelModeratorOutput, error) {
   555  	req, out := c.CreateChannelModeratorRequest(input)
   556  	req.SetContext(ctx)
   557  	req.ApplyOptions(opts...)
   558  	return out, req.Send()
   559  }
   560  
   561  const opDeleteChannel = "DeleteChannel"
   562  
   563  // DeleteChannelRequest generates a "aws/request.Request" representing the
   564  // client's request for the DeleteChannel operation. The "output" return
   565  // value will be populated with the request's response once the request completes
   566  // successfully.
   567  //
   568  // Use "Send" method on the returned Request to send the API call to the service.
   569  // the "output" return value is not valid until after Send returns without error.
   570  //
   571  // See DeleteChannel for more information on using the DeleteChannel
   572  // API call, and error handling.
   573  //
   574  // This method is useful when you want to inject custom logic or configuration
   575  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   576  //
   577  //
   578  //    // Example sending a request using the DeleteChannelRequest method.
   579  //    req, resp := client.DeleteChannelRequest(params)
   580  //
   581  //    err := req.Send()
   582  //    if err == nil { // resp is now filled
   583  //        fmt.Println(resp)
   584  //    }
   585  //
   586  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannel
   587  func (c *ChimeSDKMessaging) DeleteChannelRequest(input *DeleteChannelInput) (req *request.Request, output *DeleteChannelOutput) {
   588  	op := &request.Operation{
   589  		Name:       opDeleteChannel,
   590  		HTTPMethod: "DELETE",
   591  		HTTPPath:   "/channels/{channelArn}",
   592  	}
   593  
   594  	if input == nil {
   595  		input = &DeleteChannelInput{}
   596  	}
   597  
   598  	output = &DeleteChannelOutput{}
   599  	req = c.newRequest(op, input, output)
   600  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   601  	return
   602  }
   603  
   604  // DeleteChannel API operation for Amazon Chime SDK Messaging.
   605  //
   606  // Immediately makes a channel and its memberships inaccessible and marks them
   607  // for deletion. This is an irreversible process.
   608  //
   609  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
   610  // of the user that makes the API call as the value in the header.
   611  //
   612  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   613  // with awserr.Error's Code and Message methods to get detailed information about
   614  // the error.
   615  //
   616  // See the AWS API reference guide for Amazon Chime SDK Messaging's
   617  // API operation DeleteChannel for usage and error information.
   618  //
   619  // Returned Error Types:
   620  //   * BadRequestException
   621  //   The input parameters don't match the service's restrictions.
   622  //
   623  //   * ForbiddenException
   624  //   The client is permanently forbidden from making the request.
   625  //
   626  //   * UnauthorizedClientException
   627  //   The client is not currently authorized to make the request.
   628  //
   629  //   * ThrottledClientException
   630  //   The client exceeded its request rate limit.
   631  //
   632  //   * ServiceUnavailableException
   633  //   The service is currently unavailable.
   634  //
   635  //   * ServiceFailureException
   636  //   The service encountered an unexpected error.
   637  //
   638  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannel
   639  func (c *ChimeSDKMessaging) DeleteChannel(input *DeleteChannelInput) (*DeleteChannelOutput, error) {
   640  	req, out := c.DeleteChannelRequest(input)
   641  	return out, req.Send()
   642  }
   643  
   644  // DeleteChannelWithContext is the same as DeleteChannel with the addition of
   645  // the ability to pass a context and additional request options.
   646  //
   647  // See DeleteChannel for details on how to use this API operation.
   648  //
   649  // The context must be non-nil and will be used for request cancellation. If
   650  // the context is nil a panic will occur. In the future the SDK may create
   651  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   652  // for more information on using Contexts.
   653  func (c *ChimeSDKMessaging) DeleteChannelWithContext(ctx aws.Context, input *DeleteChannelInput, opts ...request.Option) (*DeleteChannelOutput, error) {
   654  	req, out := c.DeleteChannelRequest(input)
   655  	req.SetContext(ctx)
   656  	req.ApplyOptions(opts...)
   657  	return out, req.Send()
   658  }
   659  
   660  const opDeleteChannelBan = "DeleteChannelBan"
   661  
   662  // DeleteChannelBanRequest generates a "aws/request.Request" representing the
   663  // client's request for the DeleteChannelBan operation. The "output" return
   664  // value will be populated with the request's response once the request completes
   665  // successfully.
   666  //
   667  // Use "Send" method on the returned Request to send the API call to the service.
   668  // the "output" return value is not valid until after Send returns without error.
   669  //
   670  // See DeleteChannelBan for more information on using the DeleteChannelBan
   671  // API call, and error handling.
   672  //
   673  // This method is useful when you want to inject custom logic or configuration
   674  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   675  //
   676  //
   677  //    // Example sending a request using the DeleteChannelBanRequest method.
   678  //    req, resp := client.DeleteChannelBanRequest(params)
   679  //
   680  //    err := req.Send()
   681  //    if err == nil { // resp is now filled
   682  //        fmt.Println(resp)
   683  //    }
   684  //
   685  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelBan
   686  func (c *ChimeSDKMessaging) DeleteChannelBanRequest(input *DeleteChannelBanInput) (req *request.Request, output *DeleteChannelBanOutput) {
   687  	op := &request.Operation{
   688  		Name:       opDeleteChannelBan,
   689  		HTTPMethod: "DELETE",
   690  		HTTPPath:   "/channels/{channelArn}/bans/{memberArn}",
   691  	}
   692  
   693  	if input == nil {
   694  		input = &DeleteChannelBanInput{}
   695  	}
   696  
   697  	output = &DeleteChannelBanOutput{}
   698  	req = c.newRequest(op, input, output)
   699  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   700  	return
   701  }
   702  
   703  // DeleteChannelBan API operation for Amazon Chime SDK Messaging.
   704  //
   705  // Removes a user from a channel's ban list.
   706  //
   707  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
   708  // of the user that makes the API call as the value in the header.
   709  //
   710  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   711  // with awserr.Error's Code and Message methods to get detailed information about
   712  // the error.
   713  //
   714  // See the AWS API reference guide for Amazon Chime SDK Messaging's
   715  // API operation DeleteChannelBan for usage and error information.
   716  //
   717  // Returned Error Types:
   718  //   * BadRequestException
   719  //   The input parameters don't match the service's restrictions.
   720  //
   721  //   * ForbiddenException
   722  //   The client is permanently forbidden from making the request.
   723  //
   724  //   * UnauthorizedClientException
   725  //   The client is not currently authorized to make the request.
   726  //
   727  //   * ThrottledClientException
   728  //   The client exceeded its request rate limit.
   729  //
   730  //   * ServiceUnavailableException
   731  //   The service is currently unavailable.
   732  //
   733  //   * ServiceFailureException
   734  //   The service encountered an unexpected error.
   735  //
   736  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelBan
   737  func (c *ChimeSDKMessaging) DeleteChannelBan(input *DeleteChannelBanInput) (*DeleteChannelBanOutput, error) {
   738  	req, out := c.DeleteChannelBanRequest(input)
   739  	return out, req.Send()
   740  }
   741  
   742  // DeleteChannelBanWithContext is the same as DeleteChannelBan with the addition of
   743  // the ability to pass a context and additional request options.
   744  //
   745  // See DeleteChannelBan for details on how to use this API operation.
   746  //
   747  // The context must be non-nil and will be used for request cancellation. If
   748  // the context is nil a panic will occur. In the future the SDK may create
   749  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   750  // for more information on using Contexts.
   751  func (c *ChimeSDKMessaging) DeleteChannelBanWithContext(ctx aws.Context, input *DeleteChannelBanInput, opts ...request.Option) (*DeleteChannelBanOutput, error) {
   752  	req, out := c.DeleteChannelBanRequest(input)
   753  	req.SetContext(ctx)
   754  	req.ApplyOptions(opts...)
   755  	return out, req.Send()
   756  }
   757  
   758  const opDeleteChannelMembership = "DeleteChannelMembership"
   759  
   760  // DeleteChannelMembershipRequest generates a "aws/request.Request" representing the
   761  // client's request for the DeleteChannelMembership operation. The "output" return
   762  // value will be populated with the request's response once the request completes
   763  // successfully.
   764  //
   765  // Use "Send" method on the returned Request to send the API call to the service.
   766  // the "output" return value is not valid until after Send returns without error.
   767  //
   768  // See DeleteChannelMembership for more information on using the DeleteChannelMembership
   769  // API call, and error handling.
   770  //
   771  // This method is useful when you want to inject custom logic or configuration
   772  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   773  //
   774  //
   775  //    // Example sending a request using the DeleteChannelMembershipRequest method.
   776  //    req, resp := client.DeleteChannelMembershipRequest(params)
   777  //
   778  //    err := req.Send()
   779  //    if err == nil { // resp is now filled
   780  //        fmt.Println(resp)
   781  //    }
   782  //
   783  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelMembership
   784  func (c *ChimeSDKMessaging) DeleteChannelMembershipRequest(input *DeleteChannelMembershipInput) (req *request.Request, output *DeleteChannelMembershipOutput) {
   785  	op := &request.Operation{
   786  		Name:       opDeleteChannelMembership,
   787  		HTTPMethod: "DELETE",
   788  		HTTPPath:   "/channels/{channelArn}/memberships/{memberArn}",
   789  	}
   790  
   791  	if input == nil {
   792  		input = &DeleteChannelMembershipInput{}
   793  	}
   794  
   795  	output = &DeleteChannelMembershipOutput{}
   796  	req = c.newRequest(op, input, output)
   797  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   798  	return
   799  }
   800  
   801  // DeleteChannelMembership API operation for Amazon Chime SDK Messaging.
   802  //
   803  // Removes a member from a channel.
   804  //
   805  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
   806  // of the user that makes the API call as the value in the header.
   807  //
   808  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   809  // with awserr.Error's Code and Message methods to get detailed information about
   810  // the error.
   811  //
   812  // See the AWS API reference guide for Amazon Chime SDK Messaging's
   813  // API operation DeleteChannelMembership for usage and error information.
   814  //
   815  // Returned Error Types:
   816  //   * BadRequestException
   817  //   The input parameters don't match the service's restrictions.
   818  //
   819  //   * ForbiddenException
   820  //   The client is permanently forbidden from making the request.
   821  //
   822  //   * UnauthorizedClientException
   823  //   The client is not currently authorized to make the request.
   824  //
   825  //   * ConflictException
   826  //   The request could not be processed because of conflict in the current state
   827  //   of the resource.
   828  //
   829  //   * ThrottledClientException
   830  //   The client exceeded its request rate limit.
   831  //
   832  //   * ServiceUnavailableException
   833  //   The service is currently unavailable.
   834  //
   835  //   * ServiceFailureException
   836  //   The service encountered an unexpected error.
   837  //
   838  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelMembership
   839  func (c *ChimeSDKMessaging) DeleteChannelMembership(input *DeleteChannelMembershipInput) (*DeleteChannelMembershipOutput, error) {
   840  	req, out := c.DeleteChannelMembershipRequest(input)
   841  	return out, req.Send()
   842  }
   843  
   844  // DeleteChannelMembershipWithContext is the same as DeleteChannelMembership with the addition of
   845  // the ability to pass a context and additional request options.
   846  //
   847  // See DeleteChannelMembership for details on how to use this API operation.
   848  //
   849  // The context must be non-nil and will be used for request cancellation. If
   850  // the context is nil a panic will occur. In the future the SDK may create
   851  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   852  // for more information on using Contexts.
   853  func (c *ChimeSDKMessaging) DeleteChannelMembershipWithContext(ctx aws.Context, input *DeleteChannelMembershipInput, opts ...request.Option) (*DeleteChannelMembershipOutput, error) {
   854  	req, out := c.DeleteChannelMembershipRequest(input)
   855  	req.SetContext(ctx)
   856  	req.ApplyOptions(opts...)
   857  	return out, req.Send()
   858  }
   859  
   860  const opDeleteChannelMessage = "DeleteChannelMessage"
   861  
   862  // DeleteChannelMessageRequest generates a "aws/request.Request" representing the
   863  // client's request for the DeleteChannelMessage operation. The "output" return
   864  // value will be populated with the request's response once the request completes
   865  // successfully.
   866  //
   867  // Use "Send" method on the returned Request to send the API call to the service.
   868  // the "output" return value is not valid until after Send returns without error.
   869  //
   870  // See DeleteChannelMessage for more information on using the DeleteChannelMessage
   871  // API call, and error handling.
   872  //
   873  // This method is useful when you want to inject custom logic or configuration
   874  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   875  //
   876  //
   877  //    // Example sending a request using the DeleteChannelMessageRequest method.
   878  //    req, resp := client.DeleteChannelMessageRequest(params)
   879  //
   880  //    err := req.Send()
   881  //    if err == nil { // resp is now filled
   882  //        fmt.Println(resp)
   883  //    }
   884  //
   885  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelMessage
   886  func (c *ChimeSDKMessaging) DeleteChannelMessageRequest(input *DeleteChannelMessageInput) (req *request.Request, output *DeleteChannelMessageOutput) {
   887  	op := &request.Operation{
   888  		Name:       opDeleteChannelMessage,
   889  		HTTPMethod: "DELETE",
   890  		HTTPPath:   "/channels/{channelArn}/messages/{messageId}",
   891  	}
   892  
   893  	if input == nil {
   894  		input = &DeleteChannelMessageInput{}
   895  	}
   896  
   897  	output = &DeleteChannelMessageOutput{}
   898  	req = c.newRequest(op, input, output)
   899  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   900  	return
   901  }
   902  
   903  // DeleteChannelMessage API operation for Amazon Chime SDK Messaging.
   904  //
   905  // Deletes a channel message. Only admins can perform this action. Deletion
   906  // makes messages inaccessible immediately. A background process deletes any
   907  // revisions created by UpdateChannelMessage.
   908  //
   909  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
   910  // of the user that makes the API call as the value in the header.
   911  //
   912  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   913  // with awserr.Error's Code and Message methods to get detailed information about
   914  // the error.
   915  //
   916  // See the AWS API reference guide for Amazon Chime SDK Messaging's
   917  // API operation DeleteChannelMessage for usage and error information.
   918  //
   919  // Returned Error Types:
   920  //   * BadRequestException
   921  //   The input parameters don't match the service's restrictions.
   922  //
   923  //   * ForbiddenException
   924  //   The client is permanently forbidden from making the request.
   925  //
   926  //   * UnauthorizedClientException
   927  //   The client is not currently authorized to make the request.
   928  //
   929  //   * ThrottledClientException
   930  //   The client exceeded its request rate limit.
   931  //
   932  //   * ServiceUnavailableException
   933  //   The service is currently unavailable.
   934  //
   935  //   * ServiceFailureException
   936  //   The service encountered an unexpected error.
   937  //
   938  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelMessage
   939  func (c *ChimeSDKMessaging) DeleteChannelMessage(input *DeleteChannelMessageInput) (*DeleteChannelMessageOutput, error) {
   940  	req, out := c.DeleteChannelMessageRequest(input)
   941  	return out, req.Send()
   942  }
   943  
   944  // DeleteChannelMessageWithContext is the same as DeleteChannelMessage with the addition of
   945  // the ability to pass a context and additional request options.
   946  //
   947  // See DeleteChannelMessage for details on how to use this API operation.
   948  //
   949  // The context must be non-nil and will be used for request cancellation. If
   950  // the context is nil a panic will occur. In the future the SDK may create
   951  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   952  // for more information on using Contexts.
   953  func (c *ChimeSDKMessaging) DeleteChannelMessageWithContext(ctx aws.Context, input *DeleteChannelMessageInput, opts ...request.Option) (*DeleteChannelMessageOutput, error) {
   954  	req, out := c.DeleteChannelMessageRequest(input)
   955  	req.SetContext(ctx)
   956  	req.ApplyOptions(opts...)
   957  	return out, req.Send()
   958  }
   959  
   960  const opDeleteChannelModerator = "DeleteChannelModerator"
   961  
   962  // DeleteChannelModeratorRequest generates a "aws/request.Request" representing the
   963  // client's request for the DeleteChannelModerator operation. The "output" return
   964  // value will be populated with the request's response once the request completes
   965  // successfully.
   966  //
   967  // Use "Send" method on the returned Request to send the API call to the service.
   968  // the "output" return value is not valid until after Send returns without error.
   969  //
   970  // See DeleteChannelModerator for more information on using the DeleteChannelModerator
   971  // API call, and error handling.
   972  //
   973  // This method is useful when you want to inject custom logic or configuration
   974  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   975  //
   976  //
   977  //    // Example sending a request using the DeleteChannelModeratorRequest method.
   978  //    req, resp := client.DeleteChannelModeratorRequest(params)
   979  //
   980  //    err := req.Send()
   981  //    if err == nil { // resp is now filled
   982  //        fmt.Println(resp)
   983  //    }
   984  //
   985  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelModerator
   986  func (c *ChimeSDKMessaging) DeleteChannelModeratorRequest(input *DeleteChannelModeratorInput) (req *request.Request, output *DeleteChannelModeratorOutput) {
   987  	op := &request.Operation{
   988  		Name:       opDeleteChannelModerator,
   989  		HTTPMethod: "DELETE",
   990  		HTTPPath:   "/channels/{channelArn}/moderators/{channelModeratorArn}",
   991  	}
   992  
   993  	if input == nil {
   994  		input = &DeleteChannelModeratorInput{}
   995  	}
   996  
   997  	output = &DeleteChannelModeratorOutput{}
   998  	req = c.newRequest(op, input, output)
   999  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1000  	return
  1001  }
  1002  
  1003  // DeleteChannelModerator API operation for Amazon Chime SDK Messaging.
  1004  //
  1005  // Deletes a channel moderator.
  1006  //
  1007  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1008  // of the user that makes the API call as the value in the header.
  1009  //
  1010  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1011  // with awserr.Error's Code and Message methods to get detailed information about
  1012  // the error.
  1013  //
  1014  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1015  // API operation DeleteChannelModerator for usage and error information.
  1016  //
  1017  // Returned Error Types:
  1018  //   * BadRequestException
  1019  //   The input parameters don't match the service's restrictions.
  1020  //
  1021  //   * ForbiddenException
  1022  //   The client is permanently forbidden from making the request.
  1023  //
  1024  //   * UnauthorizedClientException
  1025  //   The client is not currently authorized to make the request.
  1026  //
  1027  //   * ThrottledClientException
  1028  //   The client exceeded its request rate limit.
  1029  //
  1030  //   * ServiceUnavailableException
  1031  //   The service is currently unavailable.
  1032  //
  1033  //   * ServiceFailureException
  1034  //   The service encountered an unexpected error.
  1035  //
  1036  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DeleteChannelModerator
  1037  func (c *ChimeSDKMessaging) DeleteChannelModerator(input *DeleteChannelModeratorInput) (*DeleteChannelModeratorOutput, error) {
  1038  	req, out := c.DeleteChannelModeratorRequest(input)
  1039  	return out, req.Send()
  1040  }
  1041  
  1042  // DeleteChannelModeratorWithContext is the same as DeleteChannelModerator with the addition of
  1043  // the ability to pass a context and additional request options.
  1044  //
  1045  // See DeleteChannelModerator for details on how to use this API operation.
  1046  //
  1047  // The context must be non-nil and will be used for request cancellation. If
  1048  // the context is nil a panic will occur. In the future the SDK may create
  1049  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1050  // for more information on using Contexts.
  1051  func (c *ChimeSDKMessaging) DeleteChannelModeratorWithContext(ctx aws.Context, input *DeleteChannelModeratorInput, opts ...request.Option) (*DeleteChannelModeratorOutput, error) {
  1052  	req, out := c.DeleteChannelModeratorRequest(input)
  1053  	req.SetContext(ctx)
  1054  	req.ApplyOptions(opts...)
  1055  	return out, req.Send()
  1056  }
  1057  
  1058  const opDescribeChannel = "DescribeChannel"
  1059  
  1060  // DescribeChannelRequest generates a "aws/request.Request" representing the
  1061  // client's request for the DescribeChannel operation. The "output" return
  1062  // value will be populated with the request's response once the request completes
  1063  // successfully.
  1064  //
  1065  // Use "Send" method on the returned Request to send the API call to the service.
  1066  // the "output" return value is not valid until after Send returns without error.
  1067  //
  1068  // See DescribeChannel for more information on using the DescribeChannel
  1069  // API call, and error handling.
  1070  //
  1071  // This method is useful when you want to inject custom logic or configuration
  1072  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1073  //
  1074  //
  1075  //    // Example sending a request using the DescribeChannelRequest method.
  1076  //    req, resp := client.DescribeChannelRequest(params)
  1077  //
  1078  //    err := req.Send()
  1079  //    if err == nil { // resp is now filled
  1080  //        fmt.Println(resp)
  1081  //    }
  1082  //
  1083  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannel
  1084  func (c *ChimeSDKMessaging) DescribeChannelRequest(input *DescribeChannelInput) (req *request.Request, output *DescribeChannelOutput) {
  1085  	op := &request.Operation{
  1086  		Name:       opDescribeChannel,
  1087  		HTTPMethod: "GET",
  1088  		HTTPPath:   "/channels/{channelArn}",
  1089  	}
  1090  
  1091  	if input == nil {
  1092  		input = &DescribeChannelInput{}
  1093  	}
  1094  
  1095  	output = &DescribeChannelOutput{}
  1096  	req = c.newRequest(op, input, output)
  1097  	return
  1098  }
  1099  
  1100  // DescribeChannel API operation for Amazon Chime SDK Messaging.
  1101  //
  1102  // Returns the full details of a channel in an Amazon Chime AppInstance.
  1103  //
  1104  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1105  // of the user that makes the API call as the value in the header.
  1106  //
  1107  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1108  // with awserr.Error's Code and Message methods to get detailed information about
  1109  // the error.
  1110  //
  1111  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1112  // API operation DescribeChannel for usage and error information.
  1113  //
  1114  // Returned Error Types:
  1115  //   * BadRequestException
  1116  //   The input parameters don't match the service's restrictions.
  1117  //
  1118  //   * ForbiddenException
  1119  //   The client is permanently forbidden from making the request.
  1120  //
  1121  //   * UnauthorizedClientException
  1122  //   The client is not currently authorized to make the request.
  1123  //
  1124  //   * ThrottledClientException
  1125  //   The client exceeded its request rate limit.
  1126  //
  1127  //   * ServiceUnavailableException
  1128  //   The service is currently unavailable.
  1129  //
  1130  //   * ServiceFailureException
  1131  //   The service encountered an unexpected error.
  1132  //
  1133  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannel
  1134  func (c *ChimeSDKMessaging) DescribeChannel(input *DescribeChannelInput) (*DescribeChannelOutput, error) {
  1135  	req, out := c.DescribeChannelRequest(input)
  1136  	return out, req.Send()
  1137  }
  1138  
  1139  // DescribeChannelWithContext is the same as DescribeChannel with the addition of
  1140  // the ability to pass a context and additional request options.
  1141  //
  1142  // See DescribeChannel for details on how to use this API operation.
  1143  //
  1144  // The context must be non-nil and will be used for request cancellation. If
  1145  // the context is nil a panic will occur. In the future the SDK may create
  1146  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1147  // for more information on using Contexts.
  1148  func (c *ChimeSDKMessaging) DescribeChannelWithContext(ctx aws.Context, input *DescribeChannelInput, opts ...request.Option) (*DescribeChannelOutput, error) {
  1149  	req, out := c.DescribeChannelRequest(input)
  1150  	req.SetContext(ctx)
  1151  	req.ApplyOptions(opts...)
  1152  	return out, req.Send()
  1153  }
  1154  
  1155  const opDescribeChannelBan = "DescribeChannelBan"
  1156  
  1157  // DescribeChannelBanRequest generates a "aws/request.Request" representing the
  1158  // client's request for the DescribeChannelBan operation. The "output" return
  1159  // value will be populated with the request's response once the request completes
  1160  // successfully.
  1161  //
  1162  // Use "Send" method on the returned Request to send the API call to the service.
  1163  // the "output" return value is not valid until after Send returns without error.
  1164  //
  1165  // See DescribeChannelBan for more information on using the DescribeChannelBan
  1166  // API call, and error handling.
  1167  //
  1168  // This method is useful when you want to inject custom logic or configuration
  1169  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1170  //
  1171  //
  1172  //    // Example sending a request using the DescribeChannelBanRequest method.
  1173  //    req, resp := client.DescribeChannelBanRequest(params)
  1174  //
  1175  //    err := req.Send()
  1176  //    if err == nil { // resp is now filled
  1177  //        fmt.Println(resp)
  1178  //    }
  1179  //
  1180  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelBan
  1181  func (c *ChimeSDKMessaging) DescribeChannelBanRequest(input *DescribeChannelBanInput) (req *request.Request, output *DescribeChannelBanOutput) {
  1182  	op := &request.Operation{
  1183  		Name:       opDescribeChannelBan,
  1184  		HTTPMethod: "GET",
  1185  		HTTPPath:   "/channels/{channelArn}/bans/{memberArn}",
  1186  	}
  1187  
  1188  	if input == nil {
  1189  		input = &DescribeChannelBanInput{}
  1190  	}
  1191  
  1192  	output = &DescribeChannelBanOutput{}
  1193  	req = c.newRequest(op, input, output)
  1194  	return
  1195  }
  1196  
  1197  // DescribeChannelBan API operation for Amazon Chime SDK Messaging.
  1198  //
  1199  // Returns the full details of a channel ban.
  1200  //
  1201  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1202  // of the user that makes the API call as the value in the header.
  1203  //
  1204  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1205  // with awserr.Error's Code and Message methods to get detailed information about
  1206  // the error.
  1207  //
  1208  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1209  // API operation DescribeChannelBan for usage and error information.
  1210  //
  1211  // Returned Error Types:
  1212  //   * BadRequestException
  1213  //   The input parameters don't match the service's restrictions.
  1214  //
  1215  //   * ForbiddenException
  1216  //   The client is permanently forbidden from making the request.
  1217  //
  1218  //   * NotFoundException
  1219  //   One or more of the resources in the request does not exist in the system.
  1220  //
  1221  //   * UnauthorizedClientException
  1222  //   The client is not currently authorized to make the request.
  1223  //
  1224  //   * ThrottledClientException
  1225  //   The client exceeded its request rate limit.
  1226  //
  1227  //   * ServiceUnavailableException
  1228  //   The service is currently unavailable.
  1229  //
  1230  //   * ServiceFailureException
  1231  //   The service encountered an unexpected error.
  1232  //
  1233  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelBan
  1234  func (c *ChimeSDKMessaging) DescribeChannelBan(input *DescribeChannelBanInput) (*DescribeChannelBanOutput, error) {
  1235  	req, out := c.DescribeChannelBanRequest(input)
  1236  	return out, req.Send()
  1237  }
  1238  
  1239  // DescribeChannelBanWithContext is the same as DescribeChannelBan with the addition of
  1240  // the ability to pass a context and additional request options.
  1241  //
  1242  // See DescribeChannelBan for details on how to use this API operation.
  1243  //
  1244  // The context must be non-nil and will be used for request cancellation. If
  1245  // the context is nil a panic will occur. In the future the SDK may create
  1246  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1247  // for more information on using Contexts.
  1248  func (c *ChimeSDKMessaging) DescribeChannelBanWithContext(ctx aws.Context, input *DescribeChannelBanInput, opts ...request.Option) (*DescribeChannelBanOutput, error) {
  1249  	req, out := c.DescribeChannelBanRequest(input)
  1250  	req.SetContext(ctx)
  1251  	req.ApplyOptions(opts...)
  1252  	return out, req.Send()
  1253  }
  1254  
  1255  const opDescribeChannelMembership = "DescribeChannelMembership"
  1256  
  1257  // DescribeChannelMembershipRequest generates a "aws/request.Request" representing the
  1258  // client's request for the DescribeChannelMembership operation. The "output" return
  1259  // value will be populated with the request's response once the request completes
  1260  // successfully.
  1261  //
  1262  // Use "Send" method on the returned Request to send the API call to the service.
  1263  // the "output" return value is not valid until after Send returns without error.
  1264  //
  1265  // See DescribeChannelMembership for more information on using the DescribeChannelMembership
  1266  // API call, and error handling.
  1267  //
  1268  // This method is useful when you want to inject custom logic or configuration
  1269  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1270  //
  1271  //
  1272  //    // Example sending a request using the DescribeChannelMembershipRequest method.
  1273  //    req, resp := client.DescribeChannelMembershipRequest(params)
  1274  //
  1275  //    err := req.Send()
  1276  //    if err == nil { // resp is now filled
  1277  //        fmt.Println(resp)
  1278  //    }
  1279  //
  1280  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelMembership
  1281  func (c *ChimeSDKMessaging) DescribeChannelMembershipRequest(input *DescribeChannelMembershipInput) (req *request.Request, output *DescribeChannelMembershipOutput) {
  1282  	op := &request.Operation{
  1283  		Name:       opDescribeChannelMembership,
  1284  		HTTPMethod: "GET",
  1285  		HTTPPath:   "/channels/{channelArn}/memberships/{memberArn}",
  1286  	}
  1287  
  1288  	if input == nil {
  1289  		input = &DescribeChannelMembershipInput{}
  1290  	}
  1291  
  1292  	output = &DescribeChannelMembershipOutput{}
  1293  	req = c.newRequest(op, input, output)
  1294  	return
  1295  }
  1296  
  1297  // DescribeChannelMembership API operation for Amazon Chime SDK Messaging.
  1298  //
  1299  // Returns the full details of a user's channel membership.
  1300  //
  1301  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1302  // of the user that makes the API call as the value in the header.
  1303  //
  1304  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1305  // with awserr.Error's Code and Message methods to get detailed information about
  1306  // the error.
  1307  //
  1308  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1309  // API operation DescribeChannelMembership for usage and error information.
  1310  //
  1311  // Returned Error Types:
  1312  //   * BadRequestException
  1313  //   The input parameters don't match the service's restrictions.
  1314  //
  1315  //   * ForbiddenException
  1316  //   The client is permanently forbidden from making the request.
  1317  //
  1318  //   * NotFoundException
  1319  //   One or more of the resources in the request does not exist in the system.
  1320  //
  1321  //   * UnauthorizedClientException
  1322  //   The client is not currently authorized to make the request.
  1323  //
  1324  //   * ThrottledClientException
  1325  //   The client exceeded its request rate limit.
  1326  //
  1327  //   * ServiceUnavailableException
  1328  //   The service is currently unavailable.
  1329  //
  1330  //   * ServiceFailureException
  1331  //   The service encountered an unexpected error.
  1332  //
  1333  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelMembership
  1334  func (c *ChimeSDKMessaging) DescribeChannelMembership(input *DescribeChannelMembershipInput) (*DescribeChannelMembershipOutput, error) {
  1335  	req, out := c.DescribeChannelMembershipRequest(input)
  1336  	return out, req.Send()
  1337  }
  1338  
  1339  // DescribeChannelMembershipWithContext is the same as DescribeChannelMembership with the addition of
  1340  // the ability to pass a context and additional request options.
  1341  //
  1342  // See DescribeChannelMembership for details on how to use this API operation.
  1343  //
  1344  // The context must be non-nil and will be used for request cancellation. If
  1345  // the context is nil a panic will occur. In the future the SDK may create
  1346  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1347  // for more information on using Contexts.
  1348  func (c *ChimeSDKMessaging) DescribeChannelMembershipWithContext(ctx aws.Context, input *DescribeChannelMembershipInput, opts ...request.Option) (*DescribeChannelMembershipOutput, error) {
  1349  	req, out := c.DescribeChannelMembershipRequest(input)
  1350  	req.SetContext(ctx)
  1351  	req.ApplyOptions(opts...)
  1352  	return out, req.Send()
  1353  }
  1354  
  1355  const opDescribeChannelMembershipForAppInstanceUser = "DescribeChannelMembershipForAppInstanceUser"
  1356  
  1357  // DescribeChannelMembershipForAppInstanceUserRequest generates a "aws/request.Request" representing the
  1358  // client's request for the DescribeChannelMembershipForAppInstanceUser operation. The "output" return
  1359  // value will be populated with the request's response once the request completes
  1360  // successfully.
  1361  //
  1362  // Use "Send" method on the returned Request to send the API call to the service.
  1363  // the "output" return value is not valid until after Send returns without error.
  1364  //
  1365  // See DescribeChannelMembershipForAppInstanceUser for more information on using the DescribeChannelMembershipForAppInstanceUser
  1366  // API call, and error handling.
  1367  //
  1368  // This method is useful when you want to inject custom logic or configuration
  1369  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1370  //
  1371  //
  1372  //    // Example sending a request using the DescribeChannelMembershipForAppInstanceUserRequest method.
  1373  //    req, resp := client.DescribeChannelMembershipForAppInstanceUserRequest(params)
  1374  //
  1375  //    err := req.Send()
  1376  //    if err == nil { // resp is now filled
  1377  //        fmt.Println(resp)
  1378  //    }
  1379  //
  1380  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelMembershipForAppInstanceUser
  1381  func (c *ChimeSDKMessaging) DescribeChannelMembershipForAppInstanceUserRequest(input *DescribeChannelMembershipForAppInstanceUserInput) (req *request.Request, output *DescribeChannelMembershipForAppInstanceUserOutput) {
  1382  	op := &request.Operation{
  1383  		Name:       opDescribeChannelMembershipForAppInstanceUser,
  1384  		HTTPMethod: "GET",
  1385  		HTTPPath:   "/channels/{channelArn}?scope=app-instance-user-membership",
  1386  	}
  1387  
  1388  	if input == nil {
  1389  		input = &DescribeChannelMembershipForAppInstanceUserInput{}
  1390  	}
  1391  
  1392  	output = &DescribeChannelMembershipForAppInstanceUserOutput{}
  1393  	req = c.newRequest(op, input, output)
  1394  	return
  1395  }
  1396  
  1397  // DescribeChannelMembershipForAppInstanceUser API operation for Amazon Chime SDK Messaging.
  1398  //
  1399  // Returns the details of a channel based on the membership of the specified
  1400  // AppInstanceUser.
  1401  //
  1402  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1403  // of the user that makes the API call as the value in the header.
  1404  //
  1405  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1406  // with awserr.Error's Code and Message methods to get detailed information about
  1407  // the error.
  1408  //
  1409  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1410  // API operation DescribeChannelMembershipForAppInstanceUser for usage and error information.
  1411  //
  1412  // Returned Error Types:
  1413  //   * BadRequestException
  1414  //   The input parameters don't match the service's restrictions.
  1415  //
  1416  //   * ForbiddenException
  1417  //   The client is permanently forbidden from making the request.
  1418  //
  1419  //   * UnauthorizedClientException
  1420  //   The client is not currently authorized to make the request.
  1421  //
  1422  //   * ThrottledClientException
  1423  //   The client exceeded its request rate limit.
  1424  //
  1425  //   * ServiceUnavailableException
  1426  //   The service is currently unavailable.
  1427  //
  1428  //   * ServiceFailureException
  1429  //   The service encountered an unexpected error.
  1430  //
  1431  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelMembershipForAppInstanceUser
  1432  func (c *ChimeSDKMessaging) DescribeChannelMembershipForAppInstanceUser(input *DescribeChannelMembershipForAppInstanceUserInput) (*DescribeChannelMembershipForAppInstanceUserOutput, error) {
  1433  	req, out := c.DescribeChannelMembershipForAppInstanceUserRequest(input)
  1434  	return out, req.Send()
  1435  }
  1436  
  1437  // DescribeChannelMembershipForAppInstanceUserWithContext is the same as DescribeChannelMembershipForAppInstanceUser with the addition of
  1438  // the ability to pass a context and additional request options.
  1439  //
  1440  // See DescribeChannelMembershipForAppInstanceUser for details on how to use this API operation.
  1441  //
  1442  // The context must be non-nil and will be used for request cancellation. If
  1443  // the context is nil a panic will occur. In the future the SDK may create
  1444  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1445  // for more information on using Contexts.
  1446  func (c *ChimeSDKMessaging) DescribeChannelMembershipForAppInstanceUserWithContext(ctx aws.Context, input *DescribeChannelMembershipForAppInstanceUserInput, opts ...request.Option) (*DescribeChannelMembershipForAppInstanceUserOutput, error) {
  1447  	req, out := c.DescribeChannelMembershipForAppInstanceUserRequest(input)
  1448  	req.SetContext(ctx)
  1449  	req.ApplyOptions(opts...)
  1450  	return out, req.Send()
  1451  }
  1452  
  1453  const opDescribeChannelModeratedByAppInstanceUser = "DescribeChannelModeratedByAppInstanceUser"
  1454  
  1455  // DescribeChannelModeratedByAppInstanceUserRequest generates a "aws/request.Request" representing the
  1456  // client's request for the DescribeChannelModeratedByAppInstanceUser operation. The "output" return
  1457  // value will be populated with the request's response once the request completes
  1458  // successfully.
  1459  //
  1460  // Use "Send" method on the returned Request to send the API call to the service.
  1461  // the "output" return value is not valid until after Send returns without error.
  1462  //
  1463  // See DescribeChannelModeratedByAppInstanceUser for more information on using the DescribeChannelModeratedByAppInstanceUser
  1464  // API call, and error handling.
  1465  //
  1466  // This method is useful when you want to inject custom logic or configuration
  1467  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1468  //
  1469  //
  1470  //    // Example sending a request using the DescribeChannelModeratedByAppInstanceUserRequest method.
  1471  //    req, resp := client.DescribeChannelModeratedByAppInstanceUserRequest(params)
  1472  //
  1473  //    err := req.Send()
  1474  //    if err == nil { // resp is now filled
  1475  //        fmt.Println(resp)
  1476  //    }
  1477  //
  1478  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelModeratedByAppInstanceUser
  1479  func (c *ChimeSDKMessaging) DescribeChannelModeratedByAppInstanceUserRequest(input *DescribeChannelModeratedByAppInstanceUserInput) (req *request.Request, output *DescribeChannelModeratedByAppInstanceUserOutput) {
  1480  	op := &request.Operation{
  1481  		Name:       opDescribeChannelModeratedByAppInstanceUser,
  1482  		HTTPMethod: "GET",
  1483  		HTTPPath:   "/channels/{channelArn}?scope=app-instance-user-moderated-channel",
  1484  	}
  1485  
  1486  	if input == nil {
  1487  		input = &DescribeChannelModeratedByAppInstanceUserInput{}
  1488  	}
  1489  
  1490  	output = &DescribeChannelModeratedByAppInstanceUserOutput{}
  1491  	req = c.newRequest(op, input, output)
  1492  	return
  1493  }
  1494  
  1495  // DescribeChannelModeratedByAppInstanceUser API operation for Amazon Chime SDK Messaging.
  1496  //
  1497  // Returns the full details of a channel moderated by the specified AppInstanceUser.
  1498  //
  1499  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1500  // of the user that makes the API call as the value in the header.
  1501  //
  1502  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1503  // with awserr.Error's Code and Message methods to get detailed information about
  1504  // the error.
  1505  //
  1506  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1507  // API operation DescribeChannelModeratedByAppInstanceUser for usage and error information.
  1508  //
  1509  // Returned Error Types:
  1510  //   * BadRequestException
  1511  //   The input parameters don't match the service's restrictions.
  1512  //
  1513  //   * ForbiddenException
  1514  //   The client is permanently forbidden from making the request.
  1515  //
  1516  //   * UnauthorizedClientException
  1517  //   The client is not currently authorized to make the request.
  1518  //
  1519  //   * ThrottledClientException
  1520  //   The client exceeded its request rate limit.
  1521  //
  1522  //   * ServiceUnavailableException
  1523  //   The service is currently unavailable.
  1524  //
  1525  //   * ServiceFailureException
  1526  //   The service encountered an unexpected error.
  1527  //
  1528  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelModeratedByAppInstanceUser
  1529  func (c *ChimeSDKMessaging) DescribeChannelModeratedByAppInstanceUser(input *DescribeChannelModeratedByAppInstanceUserInput) (*DescribeChannelModeratedByAppInstanceUserOutput, error) {
  1530  	req, out := c.DescribeChannelModeratedByAppInstanceUserRequest(input)
  1531  	return out, req.Send()
  1532  }
  1533  
  1534  // DescribeChannelModeratedByAppInstanceUserWithContext is the same as DescribeChannelModeratedByAppInstanceUser with the addition of
  1535  // the ability to pass a context and additional request options.
  1536  //
  1537  // See DescribeChannelModeratedByAppInstanceUser for details on how to use this API operation.
  1538  //
  1539  // The context must be non-nil and will be used for request cancellation. If
  1540  // the context is nil a panic will occur. In the future the SDK may create
  1541  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1542  // for more information on using Contexts.
  1543  func (c *ChimeSDKMessaging) DescribeChannelModeratedByAppInstanceUserWithContext(ctx aws.Context, input *DescribeChannelModeratedByAppInstanceUserInput, opts ...request.Option) (*DescribeChannelModeratedByAppInstanceUserOutput, error) {
  1544  	req, out := c.DescribeChannelModeratedByAppInstanceUserRequest(input)
  1545  	req.SetContext(ctx)
  1546  	req.ApplyOptions(opts...)
  1547  	return out, req.Send()
  1548  }
  1549  
  1550  const opDescribeChannelModerator = "DescribeChannelModerator"
  1551  
  1552  // DescribeChannelModeratorRequest generates a "aws/request.Request" representing the
  1553  // client's request for the DescribeChannelModerator operation. The "output" return
  1554  // value will be populated with the request's response once the request completes
  1555  // successfully.
  1556  //
  1557  // Use "Send" method on the returned Request to send the API call to the service.
  1558  // the "output" return value is not valid until after Send returns without error.
  1559  //
  1560  // See DescribeChannelModerator for more information on using the DescribeChannelModerator
  1561  // API call, and error handling.
  1562  //
  1563  // This method is useful when you want to inject custom logic or configuration
  1564  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1565  //
  1566  //
  1567  //    // Example sending a request using the DescribeChannelModeratorRequest method.
  1568  //    req, resp := client.DescribeChannelModeratorRequest(params)
  1569  //
  1570  //    err := req.Send()
  1571  //    if err == nil { // resp is now filled
  1572  //        fmt.Println(resp)
  1573  //    }
  1574  //
  1575  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelModerator
  1576  func (c *ChimeSDKMessaging) DescribeChannelModeratorRequest(input *DescribeChannelModeratorInput) (req *request.Request, output *DescribeChannelModeratorOutput) {
  1577  	op := &request.Operation{
  1578  		Name:       opDescribeChannelModerator,
  1579  		HTTPMethod: "GET",
  1580  		HTTPPath:   "/channels/{channelArn}/moderators/{channelModeratorArn}",
  1581  	}
  1582  
  1583  	if input == nil {
  1584  		input = &DescribeChannelModeratorInput{}
  1585  	}
  1586  
  1587  	output = &DescribeChannelModeratorOutput{}
  1588  	req = c.newRequest(op, input, output)
  1589  	return
  1590  }
  1591  
  1592  // DescribeChannelModerator API operation for Amazon Chime SDK Messaging.
  1593  //
  1594  // Returns the full details of a single ChannelModerator.
  1595  //
  1596  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1597  // of the user that makes the API call as the value in the header.
  1598  //
  1599  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1600  // with awserr.Error's Code and Message methods to get detailed information about
  1601  // the error.
  1602  //
  1603  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1604  // API operation DescribeChannelModerator for usage and error information.
  1605  //
  1606  // Returned Error Types:
  1607  //   * BadRequestException
  1608  //   The input parameters don't match the service's restrictions.
  1609  //
  1610  //   * ForbiddenException
  1611  //   The client is permanently forbidden from making the request.
  1612  //
  1613  //   * NotFoundException
  1614  //   One or more of the resources in the request does not exist in the system.
  1615  //
  1616  //   * UnauthorizedClientException
  1617  //   The client is not currently authorized to make the request.
  1618  //
  1619  //   * ThrottledClientException
  1620  //   The client exceeded its request rate limit.
  1621  //
  1622  //   * ServiceUnavailableException
  1623  //   The service is currently unavailable.
  1624  //
  1625  //   * ServiceFailureException
  1626  //   The service encountered an unexpected error.
  1627  //
  1628  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/DescribeChannelModerator
  1629  func (c *ChimeSDKMessaging) DescribeChannelModerator(input *DescribeChannelModeratorInput) (*DescribeChannelModeratorOutput, error) {
  1630  	req, out := c.DescribeChannelModeratorRequest(input)
  1631  	return out, req.Send()
  1632  }
  1633  
  1634  // DescribeChannelModeratorWithContext is the same as DescribeChannelModerator with the addition of
  1635  // the ability to pass a context and additional request options.
  1636  //
  1637  // See DescribeChannelModerator for details on how to use this API operation.
  1638  //
  1639  // The context must be non-nil and will be used for request cancellation. If
  1640  // the context is nil a panic will occur. In the future the SDK may create
  1641  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1642  // for more information on using Contexts.
  1643  func (c *ChimeSDKMessaging) DescribeChannelModeratorWithContext(ctx aws.Context, input *DescribeChannelModeratorInput, opts ...request.Option) (*DescribeChannelModeratorOutput, error) {
  1644  	req, out := c.DescribeChannelModeratorRequest(input)
  1645  	req.SetContext(ctx)
  1646  	req.ApplyOptions(opts...)
  1647  	return out, req.Send()
  1648  }
  1649  
  1650  const opGetChannelMessage = "GetChannelMessage"
  1651  
  1652  // GetChannelMessageRequest generates a "aws/request.Request" representing the
  1653  // client's request for the GetChannelMessage operation. The "output" return
  1654  // value will be populated with the request's response once the request completes
  1655  // successfully.
  1656  //
  1657  // Use "Send" method on the returned Request to send the API call to the service.
  1658  // the "output" return value is not valid until after Send returns without error.
  1659  //
  1660  // See GetChannelMessage for more information on using the GetChannelMessage
  1661  // API call, and error handling.
  1662  //
  1663  // This method is useful when you want to inject custom logic or configuration
  1664  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1665  //
  1666  //
  1667  //    // Example sending a request using the GetChannelMessageRequest method.
  1668  //    req, resp := client.GetChannelMessageRequest(params)
  1669  //
  1670  //    err := req.Send()
  1671  //    if err == nil { // resp is now filled
  1672  //        fmt.Println(resp)
  1673  //    }
  1674  //
  1675  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetChannelMessage
  1676  func (c *ChimeSDKMessaging) GetChannelMessageRequest(input *GetChannelMessageInput) (req *request.Request, output *GetChannelMessageOutput) {
  1677  	op := &request.Operation{
  1678  		Name:       opGetChannelMessage,
  1679  		HTTPMethod: "GET",
  1680  		HTTPPath:   "/channels/{channelArn}/messages/{messageId}",
  1681  	}
  1682  
  1683  	if input == nil {
  1684  		input = &GetChannelMessageInput{}
  1685  	}
  1686  
  1687  	output = &GetChannelMessageOutput{}
  1688  	req = c.newRequest(op, input, output)
  1689  	return
  1690  }
  1691  
  1692  // GetChannelMessage API operation for Amazon Chime SDK Messaging.
  1693  //
  1694  // Gets the full details of a channel message.
  1695  //
  1696  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1697  // of the user that makes the API call as the value in the header.
  1698  //
  1699  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1700  // with awserr.Error's Code and Message methods to get detailed information about
  1701  // the error.
  1702  //
  1703  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1704  // API operation GetChannelMessage for usage and error information.
  1705  //
  1706  // Returned Error Types:
  1707  //   * BadRequestException
  1708  //   The input parameters don't match the service's restrictions.
  1709  //
  1710  //   * ForbiddenException
  1711  //   The client is permanently forbidden from making the request.
  1712  //
  1713  //   * NotFoundException
  1714  //   One or more of the resources in the request does not exist in the system.
  1715  //
  1716  //   * UnauthorizedClientException
  1717  //   The client is not currently authorized to make the request.
  1718  //
  1719  //   * ThrottledClientException
  1720  //   The client exceeded its request rate limit.
  1721  //
  1722  //   * ServiceUnavailableException
  1723  //   The service is currently unavailable.
  1724  //
  1725  //   * ServiceFailureException
  1726  //   The service encountered an unexpected error.
  1727  //
  1728  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetChannelMessage
  1729  func (c *ChimeSDKMessaging) GetChannelMessage(input *GetChannelMessageInput) (*GetChannelMessageOutput, error) {
  1730  	req, out := c.GetChannelMessageRequest(input)
  1731  	return out, req.Send()
  1732  }
  1733  
  1734  // GetChannelMessageWithContext is the same as GetChannelMessage with the addition of
  1735  // the ability to pass a context and additional request options.
  1736  //
  1737  // See GetChannelMessage for details on how to use this API operation.
  1738  //
  1739  // The context must be non-nil and will be used for request cancellation. If
  1740  // the context is nil a panic will occur. In the future the SDK may create
  1741  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1742  // for more information on using Contexts.
  1743  func (c *ChimeSDKMessaging) GetChannelMessageWithContext(ctx aws.Context, input *GetChannelMessageInput, opts ...request.Option) (*GetChannelMessageOutput, error) {
  1744  	req, out := c.GetChannelMessageRequest(input)
  1745  	req.SetContext(ctx)
  1746  	req.ApplyOptions(opts...)
  1747  	return out, req.Send()
  1748  }
  1749  
  1750  const opGetMessagingSessionEndpoint = "GetMessagingSessionEndpoint"
  1751  
  1752  // GetMessagingSessionEndpointRequest generates a "aws/request.Request" representing the
  1753  // client's request for the GetMessagingSessionEndpoint operation. The "output" return
  1754  // value will be populated with the request's response once the request completes
  1755  // successfully.
  1756  //
  1757  // Use "Send" method on the returned Request to send the API call to the service.
  1758  // the "output" return value is not valid until after Send returns without error.
  1759  //
  1760  // See GetMessagingSessionEndpoint for more information on using the GetMessagingSessionEndpoint
  1761  // API call, and error handling.
  1762  //
  1763  // This method is useful when you want to inject custom logic or configuration
  1764  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1765  //
  1766  //
  1767  //    // Example sending a request using the GetMessagingSessionEndpointRequest method.
  1768  //    req, resp := client.GetMessagingSessionEndpointRequest(params)
  1769  //
  1770  //    err := req.Send()
  1771  //    if err == nil { // resp is now filled
  1772  //        fmt.Println(resp)
  1773  //    }
  1774  //
  1775  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetMessagingSessionEndpoint
  1776  func (c *ChimeSDKMessaging) GetMessagingSessionEndpointRequest(input *GetMessagingSessionEndpointInput) (req *request.Request, output *GetMessagingSessionEndpointOutput) {
  1777  	op := &request.Operation{
  1778  		Name:       opGetMessagingSessionEndpoint,
  1779  		HTTPMethod: "GET",
  1780  		HTTPPath:   "/endpoints/messaging-session",
  1781  	}
  1782  
  1783  	if input == nil {
  1784  		input = &GetMessagingSessionEndpointInput{}
  1785  	}
  1786  
  1787  	output = &GetMessagingSessionEndpointOutput{}
  1788  	req = c.newRequest(op, input, output)
  1789  	return
  1790  }
  1791  
  1792  // GetMessagingSessionEndpoint API operation for Amazon Chime SDK Messaging.
  1793  //
  1794  // The details of the endpoint for the messaging session.
  1795  //
  1796  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1797  // with awserr.Error's Code and Message methods to get detailed information about
  1798  // the error.
  1799  //
  1800  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1801  // API operation GetMessagingSessionEndpoint for usage and error information.
  1802  //
  1803  // Returned Error Types:
  1804  //   * UnauthorizedClientException
  1805  //   The client is not currently authorized to make the request.
  1806  //
  1807  //   * ForbiddenException
  1808  //   The client is permanently forbidden from making the request.
  1809  //
  1810  //   * ThrottledClientException
  1811  //   The client exceeded its request rate limit.
  1812  //
  1813  //   * ServiceUnavailableException
  1814  //   The service is currently unavailable.
  1815  //
  1816  //   * ServiceFailureException
  1817  //   The service encountered an unexpected error.
  1818  //
  1819  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/GetMessagingSessionEndpoint
  1820  func (c *ChimeSDKMessaging) GetMessagingSessionEndpoint(input *GetMessagingSessionEndpointInput) (*GetMessagingSessionEndpointOutput, error) {
  1821  	req, out := c.GetMessagingSessionEndpointRequest(input)
  1822  	return out, req.Send()
  1823  }
  1824  
  1825  // GetMessagingSessionEndpointWithContext is the same as GetMessagingSessionEndpoint with the addition of
  1826  // the ability to pass a context and additional request options.
  1827  //
  1828  // See GetMessagingSessionEndpoint for details on how to use this API operation.
  1829  //
  1830  // The context must be non-nil and will be used for request cancellation. If
  1831  // the context is nil a panic will occur. In the future the SDK may create
  1832  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1833  // for more information on using Contexts.
  1834  func (c *ChimeSDKMessaging) GetMessagingSessionEndpointWithContext(ctx aws.Context, input *GetMessagingSessionEndpointInput, opts ...request.Option) (*GetMessagingSessionEndpointOutput, error) {
  1835  	req, out := c.GetMessagingSessionEndpointRequest(input)
  1836  	req.SetContext(ctx)
  1837  	req.ApplyOptions(opts...)
  1838  	return out, req.Send()
  1839  }
  1840  
  1841  const opListChannelBans = "ListChannelBans"
  1842  
  1843  // ListChannelBansRequest generates a "aws/request.Request" representing the
  1844  // client's request for the ListChannelBans operation. The "output" return
  1845  // value will be populated with the request's response once the request completes
  1846  // successfully.
  1847  //
  1848  // Use "Send" method on the returned Request to send the API call to the service.
  1849  // the "output" return value is not valid until after Send returns without error.
  1850  //
  1851  // See ListChannelBans for more information on using the ListChannelBans
  1852  // API call, and error handling.
  1853  //
  1854  // This method is useful when you want to inject custom logic or configuration
  1855  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1856  //
  1857  //
  1858  //    // Example sending a request using the ListChannelBansRequest method.
  1859  //    req, resp := client.ListChannelBansRequest(params)
  1860  //
  1861  //    err := req.Send()
  1862  //    if err == nil { // resp is now filled
  1863  //        fmt.Println(resp)
  1864  //    }
  1865  //
  1866  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelBans
  1867  func (c *ChimeSDKMessaging) ListChannelBansRequest(input *ListChannelBansInput) (req *request.Request, output *ListChannelBansOutput) {
  1868  	op := &request.Operation{
  1869  		Name:       opListChannelBans,
  1870  		HTTPMethod: "GET",
  1871  		HTTPPath:   "/channels/{channelArn}/bans",
  1872  		Paginator: &request.Paginator{
  1873  			InputTokens:     []string{"NextToken"},
  1874  			OutputTokens:    []string{"NextToken"},
  1875  			LimitToken:      "MaxResults",
  1876  			TruncationToken: "",
  1877  		},
  1878  	}
  1879  
  1880  	if input == nil {
  1881  		input = &ListChannelBansInput{}
  1882  	}
  1883  
  1884  	output = &ListChannelBansOutput{}
  1885  	req = c.newRequest(op, input, output)
  1886  	return
  1887  }
  1888  
  1889  // ListChannelBans API operation for Amazon Chime SDK Messaging.
  1890  //
  1891  // Lists all the users banned from a particular channel.
  1892  //
  1893  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  1894  // of the user that makes the API call as the value in the header.
  1895  //
  1896  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1897  // with awserr.Error's Code and Message methods to get detailed information about
  1898  // the error.
  1899  //
  1900  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  1901  // API operation ListChannelBans for usage and error information.
  1902  //
  1903  // Returned Error Types:
  1904  //   * BadRequestException
  1905  //   The input parameters don't match the service's restrictions.
  1906  //
  1907  //   * ForbiddenException
  1908  //   The client is permanently forbidden from making the request.
  1909  //
  1910  //   * UnauthorizedClientException
  1911  //   The client is not currently authorized to make the request.
  1912  //
  1913  //   * ThrottledClientException
  1914  //   The client exceeded its request rate limit.
  1915  //
  1916  //   * ServiceUnavailableException
  1917  //   The service is currently unavailable.
  1918  //
  1919  //   * ServiceFailureException
  1920  //   The service encountered an unexpected error.
  1921  //
  1922  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelBans
  1923  func (c *ChimeSDKMessaging) ListChannelBans(input *ListChannelBansInput) (*ListChannelBansOutput, error) {
  1924  	req, out := c.ListChannelBansRequest(input)
  1925  	return out, req.Send()
  1926  }
  1927  
  1928  // ListChannelBansWithContext is the same as ListChannelBans with the addition of
  1929  // the ability to pass a context and additional request options.
  1930  //
  1931  // See ListChannelBans for details on how to use this API operation.
  1932  //
  1933  // The context must be non-nil and will be used for request cancellation. If
  1934  // the context is nil a panic will occur. In the future the SDK may create
  1935  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1936  // for more information on using Contexts.
  1937  func (c *ChimeSDKMessaging) ListChannelBansWithContext(ctx aws.Context, input *ListChannelBansInput, opts ...request.Option) (*ListChannelBansOutput, error) {
  1938  	req, out := c.ListChannelBansRequest(input)
  1939  	req.SetContext(ctx)
  1940  	req.ApplyOptions(opts...)
  1941  	return out, req.Send()
  1942  }
  1943  
  1944  // ListChannelBansPages iterates over the pages of a ListChannelBans operation,
  1945  // calling the "fn" function with the response data for each page. To stop
  1946  // iterating, return false from the fn function.
  1947  //
  1948  // See ListChannelBans method for more information on how to use this operation.
  1949  //
  1950  // Note: This operation can generate multiple requests to a service.
  1951  //
  1952  //    // Example iterating over at most 3 pages of a ListChannelBans operation.
  1953  //    pageNum := 0
  1954  //    err := client.ListChannelBansPages(params,
  1955  //        func(page *chimesdkmessaging.ListChannelBansOutput, lastPage bool) bool {
  1956  //            pageNum++
  1957  //            fmt.Println(page)
  1958  //            return pageNum <= 3
  1959  //        })
  1960  //
  1961  func (c *ChimeSDKMessaging) ListChannelBansPages(input *ListChannelBansInput, fn func(*ListChannelBansOutput, bool) bool) error {
  1962  	return c.ListChannelBansPagesWithContext(aws.BackgroundContext(), input, fn)
  1963  }
  1964  
  1965  // ListChannelBansPagesWithContext same as ListChannelBansPages except
  1966  // it takes a Context and allows setting request options on the pages.
  1967  //
  1968  // The context must be non-nil and will be used for request cancellation. If
  1969  // the context is nil a panic will occur. In the future the SDK may create
  1970  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1971  // for more information on using Contexts.
  1972  func (c *ChimeSDKMessaging) ListChannelBansPagesWithContext(ctx aws.Context, input *ListChannelBansInput, fn func(*ListChannelBansOutput, bool) bool, opts ...request.Option) error {
  1973  	p := request.Pagination{
  1974  		NewRequest: func() (*request.Request, error) {
  1975  			var inCpy *ListChannelBansInput
  1976  			if input != nil {
  1977  				tmp := *input
  1978  				inCpy = &tmp
  1979  			}
  1980  			req, _ := c.ListChannelBansRequest(inCpy)
  1981  			req.SetContext(ctx)
  1982  			req.ApplyOptions(opts...)
  1983  			return req, nil
  1984  		},
  1985  	}
  1986  
  1987  	for p.Next() {
  1988  		if !fn(p.Page().(*ListChannelBansOutput), !p.HasNextPage()) {
  1989  			break
  1990  		}
  1991  	}
  1992  
  1993  	return p.Err()
  1994  }
  1995  
  1996  const opListChannelMemberships = "ListChannelMemberships"
  1997  
  1998  // ListChannelMembershipsRequest generates a "aws/request.Request" representing the
  1999  // client's request for the ListChannelMemberships operation. The "output" return
  2000  // value will be populated with the request's response once the request completes
  2001  // successfully.
  2002  //
  2003  // Use "Send" method on the returned Request to send the API call to the service.
  2004  // the "output" return value is not valid until after Send returns without error.
  2005  //
  2006  // See ListChannelMemberships for more information on using the ListChannelMemberships
  2007  // API call, and error handling.
  2008  //
  2009  // This method is useful when you want to inject custom logic or configuration
  2010  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2011  //
  2012  //
  2013  //    // Example sending a request using the ListChannelMembershipsRequest method.
  2014  //    req, resp := client.ListChannelMembershipsRequest(params)
  2015  //
  2016  //    err := req.Send()
  2017  //    if err == nil { // resp is now filled
  2018  //        fmt.Println(resp)
  2019  //    }
  2020  //
  2021  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMemberships
  2022  func (c *ChimeSDKMessaging) ListChannelMembershipsRequest(input *ListChannelMembershipsInput) (req *request.Request, output *ListChannelMembershipsOutput) {
  2023  	op := &request.Operation{
  2024  		Name:       opListChannelMemberships,
  2025  		HTTPMethod: "GET",
  2026  		HTTPPath:   "/channels/{channelArn}/memberships",
  2027  		Paginator: &request.Paginator{
  2028  			InputTokens:     []string{"NextToken"},
  2029  			OutputTokens:    []string{"NextToken"},
  2030  			LimitToken:      "MaxResults",
  2031  			TruncationToken: "",
  2032  		},
  2033  	}
  2034  
  2035  	if input == nil {
  2036  		input = &ListChannelMembershipsInput{}
  2037  	}
  2038  
  2039  	output = &ListChannelMembershipsOutput{}
  2040  	req = c.newRequest(op, input, output)
  2041  	return
  2042  }
  2043  
  2044  // ListChannelMemberships API operation for Amazon Chime SDK Messaging.
  2045  //
  2046  // Lists all channel memberships in a channel.
  2047  //
  2048  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  2049  // of the user that makes the API call as the value in the header.
  2050  //
  2051  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2052  // with awserr.Error's Code and Message methods to get detailed information about
  2053  // the error.
  2054  //
  2055  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  2056  // API operation ListChannelMemberships for usage and error information.
  2057  //
  2058  // Returned Error Types:
  2059  //   * BadRequestException
  2060  //   The input parameters don't match the service's restrictions.
  2061  //
  2062  //   * ForbiddenException
  2063  //   The client is permanently forbidden from making the request.
  2064  //
  2065  //   * UnauthorizedClientException
  2066  //   The client is not currently authorized to make the request.
  2067  //
  2068  //   * ThrottledClientException
  2069  //   The client exceeded its request rate limit.
  2070  //
  2071  //   * ServiceUnavailableException
  2072  //   The service is currently unavailable.
  2073  //
  2074  //   * ServiceFailureException
  2075  //   The service encountered an unexpected error.
  2076  //
  2077  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMemberships
  2078  func (c *ChimeSDKMessaging) ListChannelMemberships(input *ListChannelMembershipsInput) (*ListChannelMembershipsOutput, error) {
  2079  	req, out := c.ListChannelMembershipsRequest(input)
  2080  	return out, req.Send()
  2081  }
  2082  
  2083  // ListChannelMembershipsWithContext is the same as ListChannelMemberships with the addition of
  2084  // the ability to pass a context and additional request options.
  2085  //
  2086  // See ListChannelMemberships for details on how to use this API operation.
  2087  //
  2088  // The context must be non-nil and will be used for request cancellation. If
  2089  // the context is nil a panic will occur. In the future the SDK may create
  2090  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2091  // for more information on using Contexts.
  2092  func (c *ChimeSDKMessaging) ListChannelMembershipsWithContext(ctx aws.Context, input *ListChannelMembershipsInput, opts ...request.Option) (*ListChannelMembershipsOutput, error) {
  2093  	req, out := c.ListChannelMembershipsRequest(input)
  2094  	req.SetContext(ctx)
  2095  	req.ApplyOptions(opts...)
  2096  	return out, req.Send()
  2097  }
  2098  
  2099  // ListChannelMembershipsPages iterates over the pages of a ListChannelMemberships operation,
  2100  // calling the "fn" function with the response data for each page. To stop
  2101  // iterating, return false from the fn function.
  2102  //
  2103  // See ListChannelMemberships method for more information on how to use this operation.
  2104  //
  2105  // Note: This operation can generate multiple requests to a service.
  2106  //
  2107  //    // Example iterating over at most 3 pages of a ListChannelMemberships operation.
  2108  //    pageNum := 0
  2109  //    err := client.ListChannelMembershipsPages(params,
  2110  //        func(page *chimesdkmessaging.ListChannelMembershipsOutput, lastPage bool) bool {
  2111  //            pageNum++
  2112  //            fmt.Println(page)
  2113  //            return pageNum <= 3
  2114  //        })
  2115  //
  2116  func (c *ChimeSDKMessaging) ListChannelMembershipsPages(input *ListChannelMembershipsInput, fn func(*ListChannelMembershipsOutput, bool) bool) error {
  2117  	return c.ListChannelMembershipsPagesWithContext(aws.BackgroundContext(), input, fn)
  2118  }
  2119  
  2120  // ListChannelMembershipsPagesWithContext same as ListChannelMembershipsPages except
  2121  // it takes a Context and allows setting request options on the pages.
  2122  //
  2123  // The context must be non-nil and will be used for request cancellation. If
  2124  // the context is nil a panic will occur. In the future the SDK may create
  2125  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2126  // for more information on using Contexts.
  2127  func (c *ChimeSDKMessaging) ListChannelMembershipsPagesWithContext(ctx aws.Context, input *ListChannelMembershipsInput, fn func(*ListChannelMembershipsOutput, bool) bool, opts ...request.Option) error {
  2128  	p := request.Pagination{
  2129  		NewRequest: func() (*request.Request, error) {
  2130  			var inCpy *ListChannelMembershipsInput
  2131  			if input != nil {
  2132  				tmp := *input
  2133  				inCpy = &tmp
  2134  			}
  2135  			req, _ := c.ListChannelMembershipsRequest(inCpy)
  2136  			req.SetContext(ctx)
  2137  			req.ApplyOptions(opts...)
  2138  			return req, nil
  2139  		},
  2140  	}
  2141  
  2142  	for p.Next() {
  2143  		if !fn(p.Page().(*ListChannelMembershipsOutput), !p.HasNextPage()) {
  2144  			break
  2145  		}
  2146  	}
  2147  
  2148  	return p.Err()
  2149  }
  2150  
  2151  const opListChannelMembershipsForAppInstanceUser = "ListChannelMembershipsForAppInstanceUser"
  2152  
  2153  // ListChannelMembershipsForAppInstanceUserRequest generates a "aws/request.Request" representing the
  2154  // client's request for the ListChannelMembershipsForAppInstanceUser operation. The "output" return
  2155  // value will be populated with the request's response once the request completes
  2156  // successfully.
  2157  //
  2158  // Use "Send" method on the returned Request to send the API call to the service.
  2159  // the "output" return value is not valid until after Send returns without error.
  2160  //
  2161  // See ListChannelMembershipsForAppInstanceUser for more information on using the ListChannelMembershipsForAppInstanceUser
  2162  // API call, and error handling.
  2163  //
  2164  // This method is useful when you want to inject custom logic or configuration
  2165  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2166  //
  2167  //
  2168  //    // Example sending a request using the ListChannelMembershipsForAppInstanceUserRequest method.
  2169  //    req, resp := client.ListChannelMembershipsForAppInstanceUserRequest(params)
  2170  //
  2171  //    err := req.Send()
  2172  //    if err == nil { // resp is now filled
  2173  //        fmt.Println(resp)
  2174  //    }
  2175  //
  2176  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMembershipsForAppInstanceUser
  2177  func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserRequest(input *ListChannelMembershipsForAppInstanceUserInput) (req *request.Request, output *ListChannelMembershipsForAppInstanceUserOutput) {
  2178  	op := &request.Operation{
  2179  		Name:       opListChannelMembershipsForAppInstanceUser,
  2180  		HTTPMethod: "GET",
  2181  		HTTPPath:   "/channels?scope=app-instance-user-memberships",
  2182  		Paginator: &request.Paginator{
  2183  			InputTokens:     []string{"NextToken"},
  2184  			OutputTokens:    []string{"NextToken"},
  2185  			LimitToken:      "MaxResults",
  2186  			TruncationToken: "",
  2187  		},
  2188  	}
  2189  
  2190  	if input == nil {
  2191  		input = &ListChannelMembershipsForAppInstanceUserInput{}
  2192  	}
  2193  
  2194  	output = &ListChannelMembershipsForAppInstanceUserOutput{}
  2195  	req = c.newRequest(op, input, output)
  2196  	return
  2197  }
  2198  
  2199  // ListChannelMembershipsForAppInstanceUser API operation for Amazon Chime SDK Messaging.
  2200  //
  2201  // Lists all channels that a particular AppInstanceUser is a part of. Only an
  2202  // AppInstanceAdmin can call the API with a user ARN that is not their own.
  2203  //
  2204  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  2205  // of the user that makes the API call as the value in the header.
  2206  //
  2207  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2208  // with awserr.Error's Code and Message methods to get detailed information about
  2209  // the error.
  2210  //
  2211  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  2212  // API operation ListChannelMembershipsForAppInstanceUser for usage and error information.
  2213  //
  2214  // Returned Error Types:
  2215  //   * BadRequestException
  2216  //   The input parameters don't match the service's restrictions.
  2217  //
  2218  //   * ForbiddenException
  2219  //   The client is permanently forbidden from making the request.
  2220  //
  2221  //   * UnauthorizedClientException
  2222  //   The client is not currently authorized to make the request.
  2223  //
  2224  //   * ThrottledClientException
  2225  //   The client exceeded its request rate limit.
  2226  //
  2227  //   * ServiceUnavailableException
  2228  //   The service is currently unavailable.
  2229  //
  2230  //   * ServiceFailureException
  2231  //   The service encountered an unexpected error.
  2232  //
  2233  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMembershipsForAppInstanceUser
  2234  func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUser(input *ListChannelMembershipsForAppInstanceUserInput) (*ListChannelMembershipsForAppInstanceUserOutput, error) {
  2235  	req, out := c.ListChannelMembershipsForAppInstanceUserRequest(input)
  2236  	return out, req.Send()
  2237  }
  2238  
  2239  // ListChannelMembershipsForAppInstanceUserWithContext is the same as ListChannelMembershipsForAppInstanceUser with the addition of
  2240  // the ability to pass a context and additional request options.
  2241  //
  2242  // See ListChannelMembershipsForAppInstanceUser for details on how to use this API operation.
  2243  //
  2244  // The context must be non-nil and will be used for request cancellation. If
  2245  // the context is nil a panic will occur. In the future the SDK may create
  2246  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2247  // for more information on using Contexts.
  2248  func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserWithContext(ctx aws.Context, input *ListChannelMembershipsForAppInstanceUserInput, opts ...request.Option) (*ListChannelMembershipsForAppInstanceUserOutput, error) {
  2249  	req, out := c.ListChannelMembershipsForAppInstanceUserRequest(input)
  2250  	req.SetContext(ctx)
  2251  	req.ApplyOptions(opts...)
  2252  	return out, req.Send()
  2253  }
  2254  
  2255  // ListChannelMembershipsForAppInstanceUserPages iterates over the pages of a ListChannelMembershipsForAppInstanceUser operation,
  2256  // calling the "fn" function with the response data for each page. To stop
  2257  // iterating, return false from the fn function.
  2258  //
  2259  // See ListChannelMembershipsForAppInstanceUser method for more information on how to use this operation.
  2260  //
  2261  // Note: This operation can generate multiple requests to a service.
  2262  //
  2263  //    // Example iterating over at most 3 pages of a ListChannelMembershipsForAppInstanceUser operation.
  2264  //    pageNum := 0
  2265  //    err := client.ListChannelMembershipsForAppInstanceUserPages(params,
  2266  //        func(page *chimesdkmessaging.ListChannelMembershipsForAppInstanceUserOutput, lastPage bool) bool {
  2267  //            pageNum++
  2268  //            fmt.Println(page)
  2269  //            return pageNum <= 3
  2270  //        })
  2271  //
  2272  func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserPages(input *ListChannelMembershipsForAppInstanceUserInput, fn func(*ListChannelMembershipsForAppInstanceUserOutput, bool) bool) error {
  2273  	return c.ListChannelMembershipsForAppInstanceUserPagesWithContext(aws.BackgroundContext(), input, fn)
  2274  }
  2275  
  2276  // ListChannelMembershipsForAppInstanceUserPagesWithContext same as ListChannelMembershipsForAppInstanceUserPages except
  2277  // it takes a Context and allows setting request options on the pages.
  2278  //
  2279  // The context must be non-nil and will be used for request cancellation. If
  2280  // the context is nil a panic will occur. In the future the SDK may create
  2281  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2282  // for more information on using Contexts.
  2283  func (c *ChimeSDKMessaging) ListChannelMembershipsForAppInstanceUserPagesWithContext(ctx aws.Context, input *ListChannelMembershipsForAppInstanceUserInput, fn func(*ListChannelMembershipsForAppInstanceUserOutput, bool) bool, opts ...request.Option) error {
  2284  	p := request.Pagination{
  2285  		NewRequest: func() (*request.Request, error) {
  2286  			var inCpy *ListChannelMembershipsForAppInstanceUserInput
  2287  			if input != nil {
  2288  				tmp := *input
  2289  				inCpy = &tmp
  2290  			}
  2291  			req, _ := c.ListChannelMembershipsForAppInstanceUserRequest(inCpy)
  2292  			req.SetContext(ctx)
  2293  			req.ApplyOptions(opts...)
  2294  			return req, nil
  2295  		},
  2296  	}
  2297  
  2298  	for p.Next() {
  2299  		if !fn(p.Page().(*ListChannelMembershipsForAppInstanceUserOutput), !p.HasNextPage()) {
  2300  			break
  2301  		}
  2302  	}
  2303  
  2304  	return p.Err()
  2305  }
  2306  
  2307  const opListChannelMessages = "ListChannelMessages"
  2308  
  2309  // ListChannelMessagesRequest generates a "aws/request.Request" representing the
  2310  // client's request for the ListChannelMessages operation. The "output" return
  2311  // value will be populated with the request's response once the request completes
  2312  // successfully.
  2313  //
  2314  // Use "Send" method on the returned Request to send the API call to the service.
  2315  // the "output" return value is not valid until after Send returns without error.
  2316  //
  2317  // See ListChannelMessages for more information on using the ListChannelMessages
  2318  // API call, and error handling.
  2319  //
  2320  // This method is useful when you want to inject custom logic or configuration
  2321  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2322  //
  2323  //
  2324  //    // Example sending a request using the ListChannelMessagesRequest method.
  2325  //    req, resp := client.ListChannelMessagesRequest(params)
  2326  //
  2327  //    err := req.Send()
  2328  //    if err == nil { // resp is now filled
  2329  //        fmt.Println(resp)
  2330  //    }
  2331  //
  2332  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMessages
  2333  func (c *ChimeSDKMessaging) ListChannelMessagesRequest(input *ListChannelMessagesInput) (req *request.Request, output *ListChannelMessagesOutput) {
  2334  	op := &request.Operation{
  2335  		Name:       opListChannelMessages,
  2336  		HTTPMethod: "GET",
  2337  		HTTPPath:   "/channels/{channelArn}/messages",
  2338  		Paginator: &request.Paginator{
  2339  			InputTokens:     []string{"NextToken"},
  2340  			OutputTokens:    []string{"NextToken"},
  2341  			LimitToken:      "MaxResults",
  2342  			TruncationToken: "",
  2343  		},
  2344  	}
  2345  
  2346  	if input == nil {
  2347  		input = &ListChannelMessagesInput{}
  2348  	}
  2349  
  2350  	output = &ListChannelMessagesOutput{}
  2351  	req = c.newRequest(op, input, output)
  2352  	return
  2353  }
  2354  
  2355  // ListChannelMessages API operation for Amazon Chime SDK Messaging.
  2356  //
  2357  // List all the messages in a channel. Returns a paginated list of ChannelMessages.
  2358  // By default, sorted by creation timestamp in descending order.
  2359  //
  2360  // Redacted messages appear in the results as empty, since they are only redacted,
  2361  // not deleted. Deleted messages do not appear in the results. This action always
  2362  // returns the latest version of an edited message.
  2363  //
  2364  // Also, the x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  2365  // of the user that makes the API call as the value in the header.
  2366  //
  2367  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2368  // with awserr.Error's Code and Message methods to get detailed information about
  2369  // the error.
  2370  //
  2371  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  2372  // API operation ListChannelMessages for usage and error information.
  2373  //
  2374  // Returned Error Types:
  2375  //   * BadRequestException
  2376  //   The input parameters don't match the service's restrictions.
  2377  //
  2378  //   * ForbiddenException
  2379  //   The client is permanently forbidden from making the request.
  2380  //
  2381  //   * UnauthorizedClientException
  2382  //   The client is not currently authorized to make the request.
  2383  //
  2384  //   * ThrottledClientException
  2385  //   The client exceeded its request rate limit.
  2386  //
  2387  //   * ServiceUnavailableException
  2388  //   The service is currently unavailable.
  2389  //
  2390  //   * ServiceFailureException
  2391  //   The service encountered an unexpected error.
  2392  //
  2393  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelMessages
  2394  func (c *ChimeSDKMessaging) ListChannelMessages(input *ListChannelMessagesInput) (*ListChannelMessagesOutput, error) {
  2395  	req, out := c.ListChannelMessagesRequest(input)
  2396  	return out, req.Send()
  2397  }
  2398  
  2399  // ListChannelMessagesWithContext is the same as ListChannelMessages with the addition of
  2400  // the ability to pass a context and additional request options.
  2401  //
  2402  // See ListChannelMessages for details on how to use this API operation.
  2403  //
  2404  // The context must be non-nil and will be used for request cancellation. If
  2405  // the context is nil a panic will occur. In the future the SDK may create
  2406  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2407  // for more information on using Contexts.
  2408  func (c *ChimeSDKMessaging) ListChannelMessagesWithContext(ctx aws.Context, input *ListChannelMessagesInput, opts ...request.Option) (*ListChannelMessagesOutput, error) {
  2409  	req, out := c.ListChannelMessagesRequest(input)
  2410  	req.SetContext(ctx)
  2411  	req.ApplyOptions(opts...)
  2412  	return out, req.Send()
  2413  }
  2414  
  2415  // ListChannelMessagesPages iterates over the pages of a ListChannelMessages operation,
  2416  // calling the "fn" function with the response data for each page. To stop
  2417  // iterating, return false from the fn function.
  2418  //
  2419  // See ListChannelMessages method for more information on how to use this operation.
  2420  //
  2421  // Note: This operation can generate multiple requests to a service.
  2422  //
  2423  //    // Example iterating over at most 3 pages of a ListChannelMessages operation.
  2424  //    pageNum := 0
  2425  //    err := client.ListChannelMessagesPages(params,
  2426  //        func(page *chimesdkmessaging.ListChannelMessagesOutput, lastPage bool) bool {
  2427  //            pageNum++
  2428  //            fmt.Println(page)
  2429  //            return pageNum <= 3
  2430  //        })
  2431  //
  2432  func (c *ChimeSDKMessaging) ListChannelMessagesPages(input *ListChannelMessagesInput, fn func(*ListChannelMessagesOutput, bool) bool) error {
  2433  	return c.ListChannelMessagesPagesWithContext(aws.BackgroundContext(), input, fn)
  2434  }
  2435  
  2436  // ListChannelMessagesPagesWithContext same as ListChannelMessagesPages except
  2437  // it takes a Context and allows setting request options on the pages.
  2438  //
  2439  // The context must be non-nil and will be used for request cancellation. If
  2440  // the context is nil a panic will occur. In the future the SDK may create
  2441  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2442  // for more information on using Contexts.
  2443  func (c *ChimeSDKMessaging) ListChannelMessagesPagesWithContext(ctx aws.Context, input *ListChannelMessagesInput, fn func(*ListChannelMessagesOutput, bool) bool, opts ...request.Option) error {
  2444  	p := request.Pagination{
  2445  		NewRequest: func() (*request.Request, error) {
  2446  			var inCpy *ListChannelMessagesInput
  2447  			if input != nil {
  2448  				tmp := *input
  2449  				inCpy = &tmp
  2450  			}
  2451  			req, _ := c.ListChannelMessagesRequest(inCpy)
  2452  			req.SetContext(ctx)
  2453  			req.ApplyOptions(opts...)
  2454  			return req, nil
  2455  		},
  2456  	}
  2457  
  2458  	for p.Next() {
  2459  		if !fn(p.Page().(*ListChannelMessagesOutput), !p.HasNextPage()) {
  2460  			break
  2461  		}
  2462  	}
  2463  
  2464  	return p.Err()
  2465  }
  2466  
  2467  const opListChannelModerators = "ListChannelModerators"
  2468  
  2469  // ListChannelModeratorsRequest generates a "aws/request.Request" representing the
  2470  // client's request for the ListChannelModerators operation. The "output" return
  2471  // value will be populated with the request's response once the request completes
  2472  // successfully.
  2473  //
  2474  // Use "Send" method on the returned Request to send the API call to the service.
  2475  // the "output" return value is not valid until after Send returns without error.
  2476  //
  2477  // See ListChannelModerators for more information on using the ListChannelModerators
  2478  // API call, and error handling.
  2479  //
  2480  // This method is useful when you want to inject custom logic or configuration
  2481  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2482  //
  2483  //
  2484  //    // Example sending a request using the ListChannelModeratorsRequest method.
  2485  //    req, resp := client.ListChannelModeratorsRequest(params)
  2486  //
  2487  //    err := req.Send()
  2488  //    if err == nil { // resp is now filled
  2489  //        fmt.Println(resp)
  2490  //    }
  2491  //
  2492  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelModerators
  2493  func (c *ChimeSDKMessaging) ListChannelModeratorsRequest(input *ListChannelModeratorsInput) (req *request.Request, output *ListChannelModeratorsOutput) {
  2494  	op := &request.Operation{
  2495  		Name:       opListChannelModerators,
  2496  		HTTPMethod: "GET",
  2497  		HTTPPath:   "/channels/{channelArn}/moderators",
  2498  		Paginator: &request.Paginator{
  2499  			InputTokens:     []string{"NextToken"},
  2500  			OutputTokens:    []string{"NextToken"},
  2501  			LimitToken:      "MaxResults",
  2502  			TruncationToken: "",
  2503  		},
  2504  	}
  2505  
  2506  	if input == nil {
  2507  		input = &ListChannelModeratorsInput{}
  2508  	}
  2509  
  2510  	output = &ListChannelModeratorsOutput{}
  2511  	req = c.newRequest(op, input, output)
  2512  	return
  2513  }
  2514  
  2515  // ListChannelModerators API operation for Amazon Chime SDK Messaging.
  2516  //
  2517  // Lists all the moderators for a channel.
  2518  //
  2519  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  2520  // of the user that makes the API call as the value in the header.
  2521  //
  2522  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2523  // with awserr.Error's Code and Message methods to get detailed information about
  2524  // the error.
  2525  //
  2526  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  2527  // API operation ListChannelModerators for usage and error information.
  2528  //
  2529  // Returned Error Types:
  2530  //   * BadRequestException
  2531  //   The input parameters don't match the service's restrictions.
  2532  //
  2533  //   * ForbiddenException
  2534  //   The client is permanently forbidden from making the request.
  2535  //
  2536  //   * UnauthorizedClientException
  2537  //   The client is not currently authorized to make the request.
  2538  //
  2539  //   * ThrottledClientException
  2540  //   The client exceeded its request rate limit.
  2541  //
  2542  //   * ServiceUnavailableException
  2543  //   The service is currently unavailable.
  2544  //
  2545  //   * ServiceFailureException
  2546  //   The service encountered an unexpected error.
  2547  //
  2548  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelModerators
  2549  func (c *ChimeSDKMessaging) ListChannelModerators(input *ListChannelModeratorsInput) (*ListChannelModeratorsOutput, error) {
  2550  	req, out := c.ListChannelModeratorsRequest(input)
  2551  	return out, req.Send()
  2552  }
  2553  
  2554  // ListChannelModeratorsWithContext is the same as ListChannelModerators with the addition of
  2555  // the ability to pass a context and additional request options.
  2556  //
  2557  // See ListChannelModerators for details on how to use this API operation.
  2558  //
  2559  // The context must be non-nil and will be used for request cancellation. If
  2560  // the context is nil a panic will occur. In the future the SDK may create
  2561  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2562  // for more information on using Contexts.
  2563  func (c *ChimeSDKMessaging) ListChannelModeratorsWithContext(ctx aws.Context, input *ListChannelModeratorsInput, opts ...request.Option) (*ListChannelModeratorsOutput, error) {
  2564  	req, out := c.ListChannelModeratorsRequest(input)
  2565  	req.SetContext(ctx)
  2566  	req.ApplyOptions(opts...)
  2567  	return out, req.Send()
  2568  }
  2569  
  2570  // ListChannelModeratorsPages iterates over the pages of a ListChannelModerators operation,
  2571  // calling the "fn" function with the response data for each page. To stop
  2572  // iterating, return false from the fn function.
  2573  //
  2574  // See ListChannelModerators method for more information on how to use this operation.
  2575  //
  2576  // Note: This operation can generate multiple requests to a service.
  2577  //
  2578  //    // Example iterating over at most 3 pages of a ListChannelModerators operation.
  2579  //    pageNum := 0
  2580  //    err := client.ListChannelModeratorsPages(params,
  2581  //        func(page *chimesdkmessaging.ListChannelModeratorsOutput, lastPage bool) bool {
  2582  //            pageNum++
  2583  //            fmt.Println(page)
  2584  //            return pageNum <= 3
  2585  //        })
  2586  //
  2587  func (c *ChimeSDKMessaging) ListChannelModeratorsPages(input *ListChannelModeratorsInput, fn func(*ListChannelModeratorsOutput, bool) bool) error {
  2588  	return c.ListChannelModeratorsPagesWithContext(aws.BackgroundContext(), input, fn)
  2589  }
  2590  
  2591  // ListChannelModeratorsPagesWithContext same as ListChannelModeratorsPages except
  2592  // it takes a Context and allows setting request options on the pages.
  2593  //
  2594  // The context must be non-nil and will be used for request cancellation. If
  2595  // the context is nil a panic will occur. In the future the SDK may create
  2596  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2597  // for more information on using Contexts.
  2598  func (c *ChimeSDKMessaging) ListChannelModeratorsPagesWithContext(ctx aws.Context, input *ListChannelModeratorsInput, fn func(*ListChannelModeratorsOutput, bool) bool, opts ...request.Option) error {
  2599  	p := request.Pagination{
  2600  		NewRequest: func() (*request.Request, error) {
  2601  			var inCpy *ListChannelModeratorsInput
  2602  			if input != nil {
  2603  				tmp := *input
  2604  				inCpy = &tmp
  2605  			}
  2606  			req, _ := c.ListChannelModeratorsRequest(inCpy)
  2607  			req.SetContext(ctx)
  2608  			req.ApplyOptions(opts...)
  2609  			return req, nil
  2610  		},
  2611  	}
  2612  
  2613  	for p.Next() {
  2614  		if !fn(p.Page().(*ListChannelModeratorsOutput), !p.HasNextPage()) {
  2615  			break
  2616  		}
  2617  	}
  2618  
  2619  	return p.Err()
  2620  }
  2621  
  2622  const opListChannels = "ListChannels"
  2623  
  2624  // ListChannelsRequest generates a "aws/request.Request" representing the
  2625  // client's request for the ListChannels operation. The "output" return
  2626  // value will be populated with the request's response once the request completes
  2627  // successfully.
  2628  //
  2629  // Use "Send" method on the returned Request to send the API call to the service.
  2630  // the "output" return value is not valid until after Send returns without error.
  2631  //
  2632  // See ListChannels for more information on using the ListChannels
  2633  // API call, and error handling.
  2634  //
  2635  // This method is useful when you want to inject custom logic or configuration
  2636  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2637  //
  2638  //
  2639  //    // Example sending a request using the ListChannelsRequest method.
  2640  //    req, resp := client.ListChannelsRequest(params)
  2641  //
  2642  //    err := req.Send()
  2643  //    if err == nil { // resp is now filled
  2644  //        fmt.Println(resp)
  2645  //    }
  2646  //
  2647  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannels
  2648  func (c *ChimeSDKMessaging) ListChannelsRequest(input *ListChannelsInput) (req *request.Request, output *ListChannelsOutput) {
  2649  	op := &request.Operation{
  2650  		Name:       opListChannels,
  2651  		HTTPMethod: "GET",
  2652  		HTTPPath:   "/channels",
  2653  		Paginator: &request.Paginator{
  2654  			InputTokens:     []string{"NextToken"},
  2655  			OutputTokens:    []string{"NextToken"},
  2656  			LimitToken:      "MaxResults",
  2657  			TruncationToken: "",
  2658  		},
  2659  	}
  2660  
  2661  	if input == nil {
  2662  		input = &ListChannelsInput{}
  2663  	}
  2664  
  2665  	output = &ListChannelsOutput{}
  2666  	req = c.newRequest(op, input, output)
  2667  	return
  2668  }
  2669  
  2670  // ListChannels API operation for Amazon Chime SDK Messaging.
  2671  //
  2672  // Lists all Channels created under a single Chime App as a paginated list.
  2673  // You can specify filters to narrow results.
  2674  //
  2675  // Functionality & restrictions
  2676  //
  2677  //    * Use privacy = PUBLIC to retrieve all public channels in the account.
  2678  //
  2679  //    * Only an AppInstanceAdmin can set privacy = PRIVATE to list the private
  2680  //    channels in an account.
  2681  //
  2682  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  2683  // of the user that makes the API call as the value in the header.
  2684  //
  2685  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2686  // with awserr.Error's Code and Message methods to get detailed information about
  2687  // the error.
  2688  //
  2689  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  2690  // API operation ListChannels for usage and error information.
  2691  //
  2692  // Returned Error Types:
  2693  //   * BadRequestException
  2694  //   The input parameters don't match the service's restrictions.
  2695  //
  2696  //   * ForbiddenException
  2697  //   The client is permanently forbidden from making the request.
  2698  //
  2699  //   * UnauthorizedClientException
  2700  //   The client is not currently authorized to make the request.
  2701  //
  2702  //   * ThrottledClientException
  2703  //   The client exceeded its request rate limit.
  2704  //
  2705  //   * ServiceUnavailableException
  2706  //   The service is currently unavailable.
  2707  //
  2708  //   * ServiceFailureException
  2709  //   The service encountered an unexpected error.
  2710  //
  2711  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannels
  2712  func (c *ChimeSDKMessaging) ListChannels(input *ListChannelsInput) (*ListChannelsOutput, error) {
  2713  	req, out := c.ListChannelsRequest(input)
  2714  	return out, req.Send()
  2715  }
  2716  
  2717  // ListChannelsWithContext is the same as ListChannels with the addition of
  2718  // the ability to pass a context and additional request options.
  2719  //
  2720  // See ListChannels for details on how to use this API operation.
  2721  //
  2722  // The context must be non-nil and will be used for request cancellation. If
  2723  // the context is nil a panic will occur. In the future the SDK may create
  2724  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2725  // for more information on using Contexts.
  2726  func (c *ChimeSDKMessaging) ListChannelsWithContext(ctx aws.Context, input *ListChannelsInput, opts ...request.Option) (*ListChannelsOutput, error) {
  2727  	req, out := c.ListChannelsRequest(input)
  2728  	req.SetContext(ctx)
  2729  	req.ApplyOptions(opts...)
  2730  	return out, req.Send()
  2731  }
  2732  
  2733  // ListChannelsPages iterates over the pages of a ListChannels operation,
  2734  // calling the "fn" function with the response data for each page. To stop
  2735  // iterating, return false from the fn function.
  2736  //
  2737  // See ListChannels method for more information on how to use this operation.
  2738  //
  2739  // Note: This operation can generate multiple requests to a service.
  2740  //
  2741  //    // Example iterating over at most 3 pages of a ListChannels operation.
  2742  //    pageNum := 0
  2743  //    err := client.ListChannelsPages(params,
  2744  //        func(page *chimesdkmessaging.ListChannelsOutput, lastPage bool) bool {
  2745  //            pageNum++
  2746  //            fmt.Println(page)
  2747  //            return pageNum <= 3
  2748  //        })
  2749  //
  2750  func (c *ChimeSDKMessaging) ListChannelsPages(input *ListChannelsInput, fn func(*ListChannelsOutput, bool) bool) error {
  2751  	return c.ListChannelsPagesWithContext(aws.BackgroundContext(), input, fn)
  2752  }
  2753  
  2754  // ListChannelsPagesWithContext same as ListChannelsPages except
  2755  // it takes a Context and allows setting request options on the pages.
  2756  //
  2757  // The context must be non-nil and will be used for request cancellation. If
  2758  // the context is nil a panic will occur. In the future the SDK may create
  2759  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2760  // for more information on using Contexts.
  2761  func (c *ChimeSDKMessaging) ListChannelsPagesWithContext(ctx aws.Context, input *ListChannelsInput, fn func(*ListChannelsOutput, bool) bool, opts ...request.Option) error {
  2762  	p := request.Pagination{
  2763  		NewRequest: func() (*request.Request, error) {
  2764  			var inCpy *ListChannelsInput
  2765  			if input != nil {
  2766  				tmp := *input
  2767  				inCpy = &tmp
  2768  			}
  2769  			req, _ := c.ListChannelsRequest(inCpy)
  2770  			req.SetContext(ctx)
  2771  			req.ApplyOptions(opts...)
  2772  			return req, nil
  2773  		},
  2774  	}
  2775  
  2776  	for p.Next() {
  2777  		if !fn(p.Page().(*ListChannelsOutput), !p.HasNextPage()) {
  2778  			break
  2779  		}
  2780  	}
  2781  
  2782  	return p.Err()
  2783  }
  2784  
  2785  const opListChannelsModeratedByAppInstanceUser = "ListChannelsModeratedByAppInstanceUser"
  2786  
  2787  // ListChannelsModeratedByAppInstanceUserRequest generates a "aws/request.Request" representing the
  2788  // client's request for the ListChannelsModeratedByAppInstanceUser operation. The "output" return
  2789  // value will be populated with the request's response once the request completes
  2790  // successfully.
  2791  //
  2792  // Use "Send" method on the returned Request to send the API call to the service.
  2793  // the "output" return value is not valid until after Send returns without error.
  2794  //
  2795  // See ListChannelsModeratedByAppInstanceUser for more information on using the ListChannelsModeratedByAppInstanceUser
  2796  // API call, and error handling.
  2797  //
  2798  // This method is useful when you want to inject custom logic or configuration
  2799  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2800  //
  2801  //
  2802  //    // Example sending a request using the ListChannelsModeratedByAppInstanceUserRequest method.
  2803  //    req, resp := client.ListChannelsModeratedByAppInstanceUserRequest(params)
  2804  //
  2805  //    err := req.Send()
  2806  //    if err == nil { // resp is now filled
  2807  //        fmt.Println(resp)
  2808  //    }
  2809  //
  2810  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelsModeratedByAppInstanceUser
  2811  func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserRequest(input *ListChannelsModeratedByAppInstanceUserInput) (req *request.Request, output *ListChannelsModeratedByAppInstanceUserOutput) {
  2812  	op := &request.Operation{
  2813  		Name:       opListChannelsModeratedByAppInstanceUser,
  2814  		HTTPMethod: "GET",
  2815  		HTTPPath:   "/channels?scope=app-instance-user-moderated-channels",
  2816  		Paginator: &request.Paginator{
  2817  			InputTokens:     []string{"NextToken"},
  2818  			OutputTokens:    []string{"NextToken"},
  2819  			LimitToken:      "MaxResults",
  2820  			TruncationToken: "",
  2821  		},
  2822  	}
  2823  
  2824  	if input == nil {
  2825  		input = &ListChannelsModeratedByAppInstanceUserInput{}
  2826  	}
  2827  
  2828  	output = &ListChannelsModeratedByAppInstanceUserOutput{}
  2829  	req = c.newRequest(op, input, output)
  2830  	return
  2831  }
  2832  
  2833  // ListChannelsModeratedByAppInstanceUser API operation for Amazon Chime SDK Messaging.
  2834  //
  2835  // A list of the channels moderated by an AppInstanceUser.
  2836  //
  2837  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  2838  // of the user that makes the API call as the value in the header.
  2839  //
  2840  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2841  // with awserr.Error's Code and Message methods to get detailed information about
  2842  // the error.
  2843  //
  2844  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  2845  // API operation ListChannelsModeratedByAppInstanceUser for usage and error information.
  2846  //
  2847  // Returned Error Types:
  2848  //   * BadRequestException
  2849  //   The input parameters don't match the service's restrictions.
  2850  //
  2851  //   * ForbiddenException
  2852  //   The client is permanently forbidden from making the request.
  2853  //
  2854  //   * UnauthorizedClientException
  2855  //   The client is not currently authorized to make the request.
  2856  //
  2857  //   * ThrottledClientException
  2858  //   The client exceeded its request rate limit.
  2859  //
  2860  //   * ServiceUnavailableException
  2861  //   The service is currently unavailable.
  2862  //
  2863  //   * ServiceFailureException
  2864  //   The service encountered an unexpected error.
  2865  //
  2866  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/ListChannelsModeratedByAppInstanceUser
  2867  func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUser(input *ListChannelsModeratedByAppInstanceUserInput) (*ListChannelsModeratedByAppInstanceUserOutput, error) {
  2868  	req, out := c.ListChannelsModeratedByAppInstanceUserRequest(input)
  2869  	return out, req.Send()
  2870  }
  2871  
  2872  // ListChannelsModeratedByAppInstanceUserWithContext is the same as ListChannelsModeratedByAppInstanceUser with the addition of
  2873  // the ability to pass a context and additional request options.
  2874  //
  2875  // See ListChannelsModeratedByAppInstanceUser for details on how to use this API operation.
  2876  //
  2877  // The context must be non-nil and will be used for request cancellation. If
  2878  // the context is nil a panic will occur. In the future the SDK may create
  2879  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2880  // for more information on using Contexts.
  2881  func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserWithContext(ctx aws.Context, input *ListChannelsModeratedByAppInstanceUserInput, opts ...request.Option) (*ListChannelsModeratedByAppInstanceUserOutput, error) {
  2882  	req, out := c.ListChannelsModeratedByAppInstanceUserRequest(input)
  2883  	req.SetContext(ctx)
  2884  	req.ApplyOptions(opts...)
  2885  	return out, req.Send()
  2886  }
  2887  
  2888  // ListChannelsModeratedByAppInstanceUserPages iterates over the pages of a ListChannelsModeratedByAppInstanceUser operation,
  2889  // calling the "fn" function with the response data for each page. To stop
  2890  // iterating, return false from the fn function.
  2891  //
  2892  // See ListChannelsModeratedByAppInstanceUser method for more information on how to use this operation.
  2893  //
  2894  // Note: This operation can generate multiple requests to a service.
  2895  //
  2896  //    // Example iterating over at most 3 pages of a ListChannelsModeratedByAppInstanceUser operation.
  2897  //    pageNum := 0
  2898  //    err := client.ListChannelsModeratedByAppInstanceUserPages(params,
  2899  //        func(page *chimesdkmessaging.ListChannelsModeratedByAppInstanceUserOutput, lastPage bool) bool {
  2900  //            pageNum++
  2901  //            fmt.Println(page)
  2902  //            return pageNum <= 3
  2903  //        })
  2904  //
  2905  func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserPages(input *ListChannelsModeratedByAppInstanceUserInput, fn func(*ListChannelsModeratedByAppInstanceUserOutput, bool) bool) error {
  2906  	return c.ListChannelsModeratedByAppInstanceUserPagesWithContext(aws.BackgroundContext(), input, fn)
  2907  }
  2908  
  2909  // ListChannelsModeratedByAppInstanceUserPagesWithContext same as ListChannelsModeratedByAppInstanceUserPages except
  2910  // it takes a Context and allows setting request options on the pages.
  2911  //
  2912  // The context must be non-nil and will be used for request cancellation. If
  2913  // the context is nil a panic will occur. In the future the SDK may create
  2914  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2915  // for more information on using Contexts.
  2916  func (c *ChimeSDKMessaging) ListChannelsModeratedByAppInstanceUserPagesWithContext(ctx aws.Context, input *ListChannelsModeratedByAppInstanceUserInput, fn func(*ListChannelsModeratedByAppInstanceUserOutput, bool) bool, opts ...request.Option) error {
  2917  	p := request.Pagination{
  2918  		NewRequest: func() (*request.Request, error) {
  2919  			var inCpy *ListChannelsModeratedByAppInstanceUserInput
  2920  			if input != nil {
  2921  				tmp := *input
  2922  				inCpy = &tmp
  2923  			}
  2924  			req, _ := c.ListChannelsModeratedByAppInstanceUserRequest(inCpy)
  2925  			req.SetContext(ctx)
  2926  			req.ApplyOptions(opts...)
  2927  			return req, nil
  2928  		},
  2929  	}
  2930  
  2931  	for p.Next() {
  2932  		if !fn(p.Page().(*ListChannelsModeratedByAppInstanceUserOutput), !p.HasNextPage()) {
  2933  			break
  2934  		}
  2935  	}
  2936  
  2937  	return p.Err()
  2938  }
  2939  
  2940  const opRedactChannelMessage = "RedactChannelMessage"
  2941  
  2942  // RedactChannelMessageRequest generates a "aws/request.Request" representing the
  2943  // client's request for the RedactChannelMessage operation. The "output" return
  2944  // value will be populated with the request's response once the request completes
  2945  // successfully.
  2946  //
  2947  // Use "Send" method on the returned Request to send the API call to the service.
  2948  // the "output" return value is not valid until after Send returns without error.
  2949  //
  2950  // See RedactChannelMessage for more information on using the RedactChannelMessage
  2951  // API call, and error handling.
  2952  //
  2953  // This method is useful when you want to inject custom logic or configuration
  2954  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2955  //
  2956  //
  2957  //    // Example sending a request using the RedactChannelMessageRequest method.
  2958  //    req, resp := client.RedactChannelMessageRequest(params)
  2959  //
  2960  //    err := req.Send()
  2961  //    if err == nil { // resp is now filled
  2962  //        fmt.Println(resp)
  2963  //    }
  2964  //
  2965  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/RedactChannelMessage
  2966  func (c *ChimeSDKMessaging) RedactChannelMessageRequest(input *RedactChannelMessageInput) (req *request.Request, output *RedactChannelMessageOutput) {
  2967  	op := &request.Operation{
  2968  		Name:       opRedactChannelMessage,
  2969  		HTTPMethod: "POST",
  2970  		HTTPPath:   "/channels/{channelArn}/messages/{messageId}?operation=redact",
  2971  	}
  2972  
  2973  	if input == nil {
  2974  		input = &RedactChannelMessageInput{}
  2975  	}
  2976  
  2977  	output = &RedactChannelMessageOutput{}
  2978  	req = c.newRequest(op, input, output)
  2979  	return
  2980  }
  2981  
  2982  // RedactChannelMessage API operation for Amazon Chime SDK Messaging.
  2983  //
  2984  // Redacts message content, but not metadata. The message exists in the back
  2985  // end, but the action returns null content, and the state shows as redacted.
  2986  //
  2987  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  2988  // of the user that makes the API call as the value in the header.
  2989  //
  2990  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2991  // with awserr.Error's Code and Message methods to get detailed information about
  2992  // the error.
  2993  //
  2994  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  2995  // API operation RedactChannelMessage for usage and error information.
  2996  //
  2997  // Returned Error Types:
  2998  //   * BadRequestException
  2999  //   The input parameters don't match the service's restrictions.
  3000  //
  3001  //   * ForbiddenException
  3002  //   The client is permanently forbidden from making the request.
  3003  //
  3004  //   * UnauthorizedClientException
  3005  //   The client is not currently authorized to make the request.
  3006  //
  3007  //   * ThrottledClientException
  3008  //   The client exceeded its request rate limit.
  3009  //
  3010  //   * ServiceUnavailableException
  3011  //   The service is currently unavailable.
  3012  //
  3013  //   * ServiceFailureException
  3014  //   The service encountered an unexpected error.
  3015  //
  3016  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/RedactChannelMessage
  3017  func (c *ChimeSDKMessaging) RedactChannelMessage(input *RedactChannelMessageInput) (*RedactChannelMessageOutput, error) {
  3018  	req, out := c.RedactChannelMessageRequest(input)
  3019  	return out, req.Send()
  3020  }
  3021  
  3022  // RedactChannelMessageWithContext is the same as RedactChannelMessage with the addition of
  3023  // the ability to pass a context and additional request options.
  3024  //
  3025  // See RedactChannelMessage for details on how to use this API operation.
  3026  //
  3027  // The context must be non-nil and will be used for request cancellation. If
  3028  // the context is nil a panic will occur. In the future the SDK may create
  3029  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3030  // for more information on using Contexts.
  3031  func (c *ChimeSDKMessaging) RedactChannelMessageWithContext(ctx aws.Context, input *RedactChannelMessageInput, opts ...request.Option) (*RedactChannelMessageOutput, error) {
  3032  	req, out := c.RedactChannelMessageRequest(input)
  3033  	req.SetContext(ctx)
  3034  	req.ApplyOptions(opts...)
  3035  	return out, req.Send()
  3036  }
  3037  
  3038  const opSendChannelMessage = "SendChannelMessage"
  3039  
  3040  // SendChannelMessageRequest generates a "aws/request.Request" representing the
  3041  // client's request for the SendChannelMessage operation. The "output" return
  3042  // value will be populated with the request's response once the request completes
  3043  // successfully.
  3044  //
  3045  // Use "Send" method on the returned Request to send the API call to the service.
  3046  // the "output" return value is not valid until after Send returns without error.
  3047  //
  3048  // See SendChannelMessage for more information on using the SendChannelMessage
  3049  // API call, and error handling.
  3050  //
  3051  // This method is useful when you want to inject custom logic or configuration
  3052  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3053  //
  3054  //
  3055  //    // Example sending a request using the SendChannelMessageRequest method.
  3056  //    req, resp := client.SendChannelMessageRequest(params)
  3057  //
  3058  //    err := req.Send()
  3059  //    if err == nil { // resp is now filled
  3060  //        fmt.Println(resp)
  3061  //    }
  3062  //
  3063  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/SendChannelMessage
  3064  func (c *ChimeSDKMessaging) SendChannelMessageRequest(input *SendChannelMessageInput) (req *request.Request, output *SendChannelMessageOutput) {
  3065  	op := &request.Operation{
  3066  		Name:       opSendChannelMessage,
  3067  		HTTPMethod: "POST",
  3068  		HTTPPath:   "/channels/{channelArn}/messages",
  3069  	}
  3070  
  3071  	if input == nil {
  3072  		input = &SendChannelMessageInput{}
  3073  	}
  3074  
  3075  	output = &SendChannelMessageOutput{}
  3076  	req = c.newRequest(op, input, output)
  3077  	return
  3078  }
  3079  
  3080  // SendChannelMessage API operation for Amazon Chime SDK Messaging.
  3081  //
  3082  // Sends a message to a particular channel that the member is a part of.
  3083  //
  3084  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  3085  // of the user that makes the API call as the value in the header.
  3086  //
  3087  // Also, STANDARD messages can contain 4KB of data and the 1KB of metadata.
  3088  // CONTROL messages can contain 30 bytes of data and no metadata.
  3089  //
  3090  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3091  // with awserr.Error's Code and Message methods to get detailed information about
  3092  // the error.
  3093  //
  3094  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  3095  // API operation SendChannelMessage for usage and error information.
  3096  //
  3097  // Returned Error Types:
  3098  //   * BadRequestException
  3099  //   The input parameters don't match the service's restrictions.
  3100  //
  3101  //   * ConflictException
  3102  //   The request could not be processed because of conflict in the current state
  3103  //   of the resource.
  3104  //
  3105  //   * ForbiddenException
  3106  //   The client is permanently forbidden from making the request.
  3107  //
  3108  //   * UnauthorizedClientException
  3109  //   The client is not currently authorized to make the request.
  3110  //
  3111  //   * ThrottledClientException
  3112  //   The client exceeded its request rate limit.
  3113  //
  3114  //   * ServiceUnavailableException
  3115  //   The service is currently unavailable.
  3116  //
  3117  //   * ServiceFailureException
  3118  //   The service encountered an unexpected error.
  3119  //
  3120  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/SendChannelMessage
  3121  func (c *ChimeSDKMessaging) SendChannelMessage(input *SendChannelMessageInput) (*SendChannelMessageOutput, error) {
  3122  	req, out := c.SendChannelMessageRequest(input)
  3123  	return out, req.Send()
  3124  }
  3125  
  3126  // SendChannelMessageWithContext is the same as SendChannelMessage with the addition of
  3127  // the ability to pass a context and additional request options.
  3128  //
  3129  // See SendChannelMessage for details on how to use this API operation.
  3130  //
  3131  // The context must be non-nil and will be used for request cancellation. If
  3132  // the context is nil a panic will occur. In the future the SDK may create
  3133  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3134  // for more information on using Contexts.
  3135  func (c *ChimeSDKMessaging) SendChannelMessageWithContext(ctx aws.Context, input *SendChannelMessageInput, opts ...request.Option) (*SendChannelMessageOutput, error) {
  3136  	req, out := c.SendChannelMessageRequest(input)
  3137  	req.SetContext(ctx)
  3138  	req.ApplyOptions(opts...)
  3139  	return out, req.Send()
  3140  }
  3141  
  3142  const opUpdateChannel = "UpdateChannel"
  3143  
  3144  // UpdateChannelRequest generates a "aws/request.Request" representing the
  3145  // client's request for the UpdateChannel operation. The "output" return
  3146  // value will be populated with the request's response once the request completes
  3147  // successfully.
  3148  //
  3149  // Use "Send" method on the returned Request to send the API call to the service.
  3150  // the "output" return value is not valid until after Send returns without error.
  3151  //
  3152  // See UpdateChannel for more information on using the UpdateChannel
  3153  // API call, and error handling.
  3154  //
  3155  // This method is useful when you want to inject custom logic or configuration
  3156  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3157  //
  3158  //
  3159  //    // Example sending a request using the UpdateChannelRequest method.
  3160  //    req, resp := client.UpdateChannelRequest(params)
  3161  //
  3162  //    err := req.Send()
  3163  //    if err == nil { // resp is now filled
  3164  //        fmt.Println(resp)
  3165  //    }
  3166  //
  3167  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannel
  3168  func (c *ChimeSDKMessaging) UpdateChannelRequest(input *UpdateChannelInput) (req *request.Request, output *UpdateChannelOutput) {
  3169  	op := &request.Operation{
  3170  		Name:       opUpdateChannel,
  3171  		HTTPMethod: "PUT",
  3172  		HTTPPath:   "/channels/{channelArn}",
  3173  	}
  3174  
  3175  	if input == nil {
  3176  		input = &UpdateChannelInput{}
  3177  	}
  3178  
  3179  	output = &UpdateChannelOutput{}
  3180  	req = c.newRequest(op, input, output)
  3181  	return
  3182  }
  3183  
  3184  // UpdateChannel API operation for Amazon Chime SDK Messaging.
  3185  //
  3186  // Update a channel's attributes.
  3187  //
  3188  // Restriction: You can't change a channel's privacy.
  3189  //
  3190  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  3191  // of the user that makes the API call as the value in the header.
  3192  //
  3193  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3194  // with awserr.Error's Code and Message methods to get detailed information about
  3195  // the error.
  3196  //
  3197  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  3198  // API operation UpdateChannel for usage and error information.
  3199  //
  3200  // Returned Error Types:
  3201  //   * BadRequestException
  3202  //   The input parameters don't match the service's restrictions.
  3203  //
  3204  //   * ForbiddenException
  3205  //   The client is permanently forbidden from making the request.
  3206  //
  3207  //   * ConflictException
  3208  //   The request could not be processed because of conflict in the current state
  3209  //   of the resource.
  3210  //
  3211  //   * UnauthorizedClientException
  3212  //   The client is not currently authorized to make the request.
  3213  //
  3214  //   * ThrottledClientException
  3215  //   The client exceeded its request rate limit.
  3216  //
  3217  //   * ServiceUnavailableException
  3218  //   The service is currently unavailable.
  3219  //
  3220  //   * ServiceFailureException
  3221  //   The service encountered an unexpected error.
  3222  //
  3223  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannel
  3224  func (c *ChimeSDKMessaging) UpdateChannel(input *UpdateChannelInput) (*UpdateChannelOutput, error) {
  3225  	req, out := c.UpdateChannelRequest(input)
  3226  	return out, req.Send()
  3227  }
  3228  
  3229  // UpdateChannelWithContext is the same as UpdateChannel with the addition of
  3230  // the ability to pass a context and additional request options.
  3231  //
  3232  // See UpdateChannel for details on how to use this API operation.
  3233  //
  3234  // The context must be non-nil and will be used for request cancellation. If
  3235  // the context is nil a panic will occur. In the future the SDK may create
  3236  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3237  // for more information on using Contexts.
  3238  func (c *ChimeSDKMessaging) UpdateChannelWithContext(ctx aws.Context, input *UpdateChannelInput, opts ...request.Option) (*UpdateChannelOutput, error) {
  3239  	req, out := c.UpdateChannelRequest(input)
  3240  	req.SetContext(ctx)
  3241  	req.ApplyOptions(opts...)
  3242  	return out, req.Send()
  3243  }
  3244  
  3245  const opUpdateChannelMessage = "UpdateChannelMessage"
  3246  
  3247  // UpdateChannelMessageRequest generates a "aws/request.Request" representing the
  3248  // client's request for the UpdateChannelMessage operation. The "output" return
  3249  // value will be populated with the request's response once the request completes
  3250  // successfully.
  3251  //
  3252  // Use "Send" method on the returned Request to send the API call to the service.
  3253  // the "output" return value is not valid until after Send returns without error.
  3254  //
  3255  // See UpdateChannelMessage for more information on using the UpdateChannelMessage
  3256  // API call, and error handling.
  3257  //
  3258  // This method is useful when you want to inject custom logic or configuration
  3259  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3260  //
  3261  //
  3262  //    // Example sending a request using the UpdateChannelMessageRequest method.
  3263  //    req, resp := client.UpdateChannelMessageRequest(params)
  3264  //
  3265  //    err := req.Send()
  3266  //    if err == nil { // resp is now filled
  3267  //        fmt.Println(resp)
  3268  //    }
  3269  //
  3270  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannelMessage
  3271  func (c *ChimeSDKMessaging) UpdateChannelMessageRequest(input *UpdateChannelMessageInput) (req *request.Request, output *UpdateChannelMessageOutput) {
  3272  	op := &request.Operation{
  3273  		Name:       opUpdateChannelMessage,
  3274  		HTTPMethod: "PUT",
  3275  		HTTPPath:   "/channels/{channelArn}/messages/{messageId}",
  3276  	}
  3277  
  3278  	if input == nil {
  3279  		input = &UpdateChannelMessageInput{}
  3280  	}
  3281  
  3282  	output = &UpdateChannelMessageOutput{}
  3283  	req = c.newRequest(op, input, output)
  3284  	return
  3285  }
  3286  
  3287  // UpdateChannelMessage API operation for Amazon Chime SDK Messaging.
  3288  //
  3289  // Updates the content of a message.
  3290  //
  3291  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  3292  // of the user that makes the API call as the value in the header.
  3293  //
  3294  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3295  // with awserr.Error's Code and Message methods to get detailed information about
  3296  // the error.
  3297  //
  3298  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  3299  // API operation UpdateChannelMessage for usage and error information.
  3300  //
  3301  // Returned Error Types:
  3302  //   * BadRequestException
  3303  //   The input parameters don't match the service's restrictions.
  3304  //
  3305  //   * ConflictException
  3306  //   The request could not be processed because of conflict in the current state
  3307  //   of the resource.
  3308  //
  3309  //   * ForbiddenException
  3310  //   The client is permanently forbidden from making the request.
  3311  //
  3312  //   * UnauthorizedClientException
  3313  //   The client is not currently authorized to make the request.
  3314  //
  3315  //   * ThrottledClientException
  3316  //   The client exceeded its request rate limit.
  3317  //
  3318  //   * ServiceUnavailableException
  3319  //   The service is currently unavailable.
  3320  //
  3321  //   * ServiceFailureException
  3322  //   The service encountered an unexpected error.
  3323  //
  3324  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannelMessage
  3325  func (c *ChimeSDKMessaging) UpdateChannelMessage(input *UpdateChannelMessageInput) (*UpdateChannelMessageOutput, error) {
  3326  	req, out := c.UpdateChannelMessageRequest(input)
  3327  	return out, req.Send()
  3328  }
  3329  
  3330  // UpdateChannelMessageWithContext is the same as UpdateChannelMessage with the addition of
  3331  // the ability to pass a context and additional request options.
  3332  //
  3333  // See UpdateChannelMessage for details on how to use this API operation.
  3334  //
  3335  // The context must be non-nil and will be used for request cancellation. If
  3336  // the context is nil a panic will occur. In the future the SDK may create
  3337  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3338  // for more information on using Contexts.
  3339  func (c *ChimeSDKMessaging) UpdateChannelMessageWithContext(ctx aws.Context, input *UpdateChannelMessageInput, opts ...request.Option) (*UpdateChannelMessageOutput, error) {
  3340  	req, out := c.UpdateChannelMessageRequest(input)
  3341  	req.SetContext(ctx)
  3342  	req.ApplyOptions(opts...)
  3343  	return out, req.Send()
  3344  }
  3345  
  3346  const opUpdateChannelReadMarker = "UpdateChannelReadMarker"
  3347  
  3348  // UpdateChannelReadMarkerRequest generates a "aws/request.Request" representing the
  3349  // client's request for the UpdateChannelReadMarker operation. The "output" return
  3350  // value will be populated with the request's response once the request completes
  3351  // successfully.
  3352  //
  3353  // Use "Send" method on the returned Request to send the API call to the service.
  3354  // the "output" return value is not valid until after Send returns without error.
  3355  //
  3356  // See UpdateChannelReadMarker for more information on using the UpdateChannelReadMarker
  3357  // API call, and error handling.
  3358  //
  3359  // This method is useful when you want to inject custom logic or configuration
  3360  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3361  //
  3362  //
  3363  //    // Example sending a request using the UpdateChannelReadMarkerRequest method.
  3364  //    req, resp := client.UpdateChannelReadMarkerRequest(params)
  3365  //
  3366  //    err := req.Send()
  3367  //    if err == nil { // resp is now filled
  3368  //        fmt.Println(resp)
  3369  //    }
  3370  //
  3371  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannelReadMarker
  3372  func (c *ChimeSDKMessaging) UpdateChannelReadMarkerRequest(input *UpdateChannelReadMarkerInput) (req *request.Request, output *UpdateChannelReadMarkerOutput) {
  3373  	op := &request.Operation{
  3374  		Name:       opUpdateChannelReadMarker,
  3375  		HTTPMethod: "PUT",
  3376  		HTTPPath:   "/channels/{channelArn}/readMarker",
  3377  	}
  3378  
  3379  	if input == nil {
  3380  		input = &UpdateChannelReadMarkerInput{}
  3381  	}
  3382  
  3383  	output = &UpdateChannelReadMarkerOutput{}
  3384  	req = c.newRequest(op, input, output)
  3385  	return
  3386  }
  3387  
  3388  // UpdateChannelReadMarker API operation for Amazon Chime SDK Messaging.
  3389  //
  3390  // The details of the time when a user last read messages in a channel.
  3391  //
  3392  // The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn
  3393  // of the user that makes the API call as the value in the header.
  3394  //
  3395  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3396  // with awserr.Error's Code and Message methods to get detailed information about
  3397  // the error.
  3398  //
  3399  // See the AWS API reference guide for Amazon Chime SDK Messaging's
  3400  // API operation UpdateChannelReadMarker for usage and error information.
  3401  //
  3402  // Returned Error Types:
  3403  //   * BadRequestException
  3404  //   The input parameters don't match the service's restrictions.
  3405  //
  3406  //   * ForbiddenException
  3407  //   The client is permanently forbidden from making the request.
  3408  //
  3409  //   * ConflictException
  3410  //   The request could not be processed because of conflict in the current state
  3411  //   of the resource.
  3412  //
  3413  //   * UnauthorizedClientException
  3414  //   The client is not currently authorized to make the request.
  3415  //
  3416  //   * ThrottledClientException
  3417  //   The client exceeded its request rate limit.
  3418  //
  3419  //   * ServiceUnavailableException
  3420  //   The service is currently unavailable.
  3421  //
  3422  //   * ServiceFailureException
  3423  //   The service encountered an unexpected error.
  3424  //
  3425  // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannelReadMarker
  3426  func (c *ChimeSDKMessaging) UpdateChannelReadMarker(input *UpdateChannelReadMarkerInput) (*UpdateChannelReadMarkerOutput, error) {
  3427  	req, out := c.UpdateChannelReadMarkerRequest(input)
  3428  	return out, req.Send()
  3429  }
  3430  
  3431  // UpdateChannelReadMarkerWithContext is the same as UpdateChannelReadMarker with the addition of
  3432  // the ability to pass a context and additional request options.
  3433  //
  3434  // See UpdateChannelReadMarker for details on how to use this API operation.
  3435  //
  3436  // The context must be non-nil and will be used for request cancellation. If
  3437  // the context is nil a panic will occur. In the future the SDK may create
  3438  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3439  // for more information on using Contexts.
  3440  func (c *ChimeSDKMessaging) UpdateChannelReadMarkerWithContext(ctx aws.Context, input *UpdateChannelReadMarkerInput, opts ...request.Option) (*UpdateChannelReadMarkerOutput, error) {
  3441  	req, out := c.UpdateChannelReadMarkerRequest(input)
  3442  	req.SetContext(ctx)
  3443  	req.ApplyOptions(opts...)
  3444  	return out, req.Send()
  3445  }
  3446  
  3447  // Summary of the membership details of an AppInstanceUser.
  3448  type AppInstanceUserMembershipSummary struct {
  3449  	_ struct{} `type:"structure"`
  3450  
  3451  	// The time at which a message was last read.
  3452  	ReadMarkerTimestamp *time.Time `type:"timestamp"`
  3453  
  3454  	// The type of ChannelMembership.
  3455  	Type *string `type:"string" enum:"ChannelMembershipType"`
  3456  }
  3457  
  3458  // String returns the string representation.
  3459  //
  3460  // API parameter values that are decorated as "sensitive" in the API will not
  3461  // be included in the string output. The member name will be present, but the
  3462  // value will be replaced with "sensitive".
  3463  func (s AppInstanceUserMembershipSummary) String() string {
  3464  	return awsutil.Prettify(s)
  3465  }
  3466  
  3467  // GoString returns the string representation.
  3468  //
  3469  // API parameter values that are decorated as "sensitive" in the API will not
  3470  // be included in the string output. The member name will be present, but the
  3471  // value will be replaced with "sensitive".
  3472  func (s AppInstanceUserMembershipSummary) GoString() string {
  3473  	return s.String()
  3474  }
  3475  
  3476  // SetReadMarkerTimestamp sets the ReadMarkerTimestamp field's value.
  3477  func (s *AppInstanceUserMembershipSummary) SetReadMarkerTimestamp(v time.Time) *AppInstanceUserMembershipSummary {
  3478  	s.ReadMarkerTimestamp = &v
  3479  	return s
  3480  }
  3481  
  3482  // SetType sets the Type field's value.
  3483  func (s *AppInstanceUserMembershipSummary) SetType(v string) *AppInstanceUserMembershipSummary {
  3484  	s.Type = &v
  3485  	return s
  3486  }
  3487  
  3488  // The input parameters don't match the service's restrictions.
  3489  type BadRequestException struct {
  3490  	_            struct{}                  `type:"structure"`
  3491  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  3492  
  3493  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  3494  
  3495  	Message_ *string `locationName:"Message" type:"string"`
  3496  }
  3497  
  3498  // String returns the string representation.
  3499  //
  3500  // API parameter values that are decorated as "sensitive" in the API will not
  3501  // be included in the string output. The member name will be present, but the
  3502  // value will be replaced with "sensitive".
  3503  func (s BadRequestException) String() string {
  3504  	return awsutil.Prettify(s)
  3505  }
  3506  
  3507  // GoString returns the string representation.
  3508  //
  3509  // API parameter values that are decorated as "sensitive" in the API will not
  3510  // be included in the string output. The member name will be present, but the
  3511  // value will be replaced with "sensitive".
  3512  func (s BadRequestException) GoString() string {
  3513  	return s.String()
  3514  }
  3515  
  3516  func newErrorBadRequestException(v protocol.ResponseMetadata) error {
  3517  	return &BadRequestException{
  3518  		RespMetadata: v,
  3519  	}
  3520  }
  3521  
  3522  // Code returns the exception type name.
  3523  func (s *BadRequestException) Code() string {
  3524  	return "BadRequestException"
  3525  }
  3526  
  3527  // Message returns the exception's message.
  3528  func (s *BadRequestException) Message() string {
  3529  	if s.Message_ != nil {
  3530  		return *s.Message_
  3531  	}
  3532  	return ""
  3533  }
  3534  
  3535  // OrigErr always returns nil, satisfies awserr.Error interface.
  3536  func (s *BadRequestException) OrigErr() error {
  3537  	return nil
  3538  }
  3539  
  3540  func (s *BadRequestException) Error() string {
  3541  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  3542  }
  3543  
  3544  // Status code returns the HTTP status code for the request's response error.
  3545  func (s *BadRequestException) StatusCode() int {
  3546  	return s.RespMetadata.StatusCode
  3547  }
  3548  
  3549  // RequestID returns the service's response RequestID for request.
  3550  func (s *BadRequestException) RequestID() string {
  3551  	return s.RespMetadata.RequestID
  3552  }
  3553  
  3554  // The membership information, including member ARNs, the channel ARN, and membership
  3555  // types.
  3556  type BatchChannelMemberships struct {
  3557  	_ struct{} `type:"structure"`
  3558  
  3559  	// The ARN of the channel to which you're adding users.
  3560  	ChannelArn *string `min:"5" type:"string"`
  3561  
  3562  	// The identifier of the member who invited another member.
  3563  	InvitedBy *Identity `type:"structure"`
  3564  
  3565  	// The users successfully added to the request.
  3566  	Members []*Identity `type:"list"`
  3567  
  3568  	// The membership types set for the channel users.
  3569  	Type *string `type:"string" enum:"ChannelMembershipType"`
  3570  }
  3571  
  3572  // String returns the string representation.
  3573  //
  3574  // API parameter values that are decorated as "sensitive" in the API will not
  3575  // be included in the string output. The member name will be present, but the
  3576  // value will be replaced with "sensitive".
  3577  func (s BatchChannelMemberships) String() string {
  3578  	return awsutil.Prettify(s)
  3579  }
  3580  
  3581  // GoString returns the string representation.
  3582  //
  3583  // API parameter values that are decorated as "sensitive" in the API will not
  3584  // be included in the string output. The member name will be present, but the
  3585  // value will be replaced with "sensitive".
  3586  func (s BatchChannelMemberships) GoString() string {
  3587  	return s.String()
  3588  }
  3589  
  3590  // SetChannelArn sets the ChannelArn field's value.
  3591  func (s *BatchChannelMemberships) SetChannelArn(v string) *BatchChannelMemberships {
  3592  	s.ChannelArn = &v
  3593  	return s
  3594  }
  3595  
  3596  // SetInvitedBy sets the InvitedBy field's value.
  3597  func (s *BatchChannelMemberships) SetInvitedBy(v *Identity) *BatchChannelMemberships {
  3598  	s.InvitedBy = v
  3599  	return s
  3600  }
  3601  
  3602  // SetMembers sets the Members field's value.
  3603  func (s *BatchChannelMemberships) SetMembers(v []*Identity) *BatchChannelMemberships {
  3604  	s.Members = v
  3605  	return s
  3606  }
  3607  
  3608  // SetType sets the Type field's value.
  3609  func (s *BatchChannelMemberships) SetType(v string) *BatchChannelMemberships {
  3610  	s.Type = &v
  3611  	return s
  3612  }
  3613  
  3614  // A list of failed member ARNs, error codes, and error messages.
  3615  type BatchCreateChannelMembershipError struct {
  3616  	_ struct{} `type:"structure"`
  3617  
  3618  	// The error code.
  3619  	ErrorCode *string `type:"string" enum:"ErrorCode"`
  3620  
  3621  	// The error message.
  3622  	ErrorMessage *string `type:"string"`
  3623  
  3624  	// The ARN of the member that the service couldn't add.
  3625  	MemberArn *string `min:"5" type:"string"`
  3626  }
  3627  
  3628  // String returns the string representation.
  3629  //
  3630  // API parameter values that are decorated as "sensitive" in the API will not
  3631  // be included in the string output. The member name will be present, but the
  3632  // value will be replaced with "sensitive".
  3633  func (s BatchCreateChannelMembershipError) String() string {
  3634  	return awsutil.Prettify(s)
  3635  }
  3636  
  3637  // GoString returns the string representation.
  3638  //
  3639  // API parameter values that are decorated as "sensitive" in the API will not
  3640  // be included in the string output. The member name will be present, but the
  3641  // value will be replaced with "sensitive".
  3642  func (s BatchCreateChannelMembershipError) GoString() string {
  3643  	return s.String()
  3644  }
  3645  
  3646  // SetErrorCode sets the ErrorCode field's value.
  3647  func (s *BatchCreateChannelMembershipError) SetErrorCode(v string) *BatchCreateChannelMembershipError {
  3648  	s.ErrorCode = &v
  3649  	return s
  3650  }
  3651  
  3652  // SetErrorMessage sets the ErrorMessage field's value.
  3653  func (s *BatchCreateChannelMembershipError) SetErrorMessage(v string) *BatchCreateChannelMembershipError {
  3654  	s.ErrorMessage = &v
  3655  	return s
  3656  }
  3657  
  3658  // SetMemberArn sets the MemberArn field's value.
  3659  func (s *BatchCreateChannelMembershipError) SetMemberArn(v string) *BatchCreateChannelMembershipError {
  3660  	s.MemberArn = &v
  3661  	return s
  3662  }
  3663  
  3664  type BatchCreateChannelMembershipInput struct {
  3665  	_ struct{} `type:"structure"`
  3666  
  3667  	// The ARN of the channel to which you're adding users.
  3668  	//
  3669  	// ChannelArn is a required field
  3670  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  3671  
  3672  	// The AppInstanceUserArn of the user that makes the API call.
  3673  	//
  3674  	// ChimeBearer is a required field
  3675  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  3676  
  3677  	// The ARNs of the members you want to add to the channel.
  3678  	//
  3679  	// MemberArns is a required field
  3680  	MemberArns []*string `min:"1" type:"list" required:"true"`
  3681  
  3682  	// The membership type of a user, DEFAULT or HIDDEN. Default members are always
  3683  	// returned as part of ListChannelMemberships. Hidden members are only returned
  3684  	// if the type filter in ListChannelMemberships equals HIDDEN. Otherwise hidden
  3685  	// members are not returned. This is only supported by moderators.
  3686  	Type *string `type:"string" enum:"ChannelMembershipType"`
  3687  }
  3688  
  3689  // String returns the string representation.
  3690  //
  3691  // API parameter values that are decorated as "sensitive" in the API will not
  3692  // be included in the string output. The member name will be present, but the
  3693  // value will be replaced with "sensitive".
  3694  func (s BatchCreateChannelMembershipInput) String() string {
  3695  	return awsutil.Prettify(s)
  3696  }
  3697  
  3698  // GoString returns the string representation.
  3699  //
  3700  // API parameter values that are decorated as "sensitive" in the API will not
  3701  // be included in the string output. The member name will be present, but the
  3702  // value will be replaced with "sensitive".
  3703  func (s BatchCreateChannelMembershipInput) GoString() string {
  3704  	return s.String()
  3705  }
  3706  
  3707  // Validate inspects the fields of the type to determine if they are valid.
  3708  func (s *BatchCreateChannelMembershipInput) Validate() error {
  3709  	invalidParams := request.ErrInvalidParams{Context: "BatchCreateChannelMembershipInput"}
  3710  	if s.ChannelArn == nil {
  3711  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  3712  	}
  3713  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  3714  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  3715  	}
  3716  	if s.ChimeBearer == nil {
  3717  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  3718  	}
  3719  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  3720  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  3721  	}
  3722  	if s.MemberArns == nil {
  3723  		invalidParams.Add(request.NewErrParamRequired("MemberArns"))
  3724  	}
  3725  	if s.MemberArns != nil && len(s.MemberArns) < 1 {
  3726  		invalidParams.Add(request.NewErrParamMinLen("MemberArns", 1))
  3727  	}
  3728  
  3729  	if invalidParams.Len() > 0 {
  3730  		return invalidParams
  3731  	}
  3732  	return nil
  3733  }
  3734  
  3735  // SetChannelArn sets the ChannelArn field's value.
  3736  func (s *BatchCreateChannelMembershipInput) SetChannelArn(v string) *BatchCreateChannelMembershipInput {
  3737  	s.ChannelArn = &v
  3738  	return s
  3739  }
  3740  
  3741  // SetChimeBearer sets the ChimeBearer field's value.
  3742  func (s *BatchCreateChannelMembershipInput) SetChimeBearer(v string) *BatchCreateChannelMembershipInput {
  3743  	s.ChimeBearer = &v
  3744  	return s
  3745  }
  3746  
  3747  // SetMemberArns sets the MemberArns field's value.
  3748  func (s *BatchCreateChannelMembershipInput) SetMemberArns(v []*string) *BatchCreateChannelMembershipInput {
  3749  	s.MemberArns = v
  3750  	return s
  3751  }
  3752  
  3753  // SetType sets the Type field's value.
  3754  func (s *BatchCreateChannelMembershipInput) SetType(v string) *BatchCreateChannelMembershipInput {
  3755  	s.Type = &v
  3756  	return s
  3757  }
  3758  
  3759  type BatchCreateChannelMembershipOutput struct {
  3760  	_ struct{} `type:"structure"`
  3761  
  3762  	// The list of channel memberships in the response.
  3763  	BatchChannelMemberships *BatchChannelMemberships `type:"structure"`
  3764  
  3765  	// If the action fails for one or more of the memberships in the request, a
  3766  	// list of the memberships is returned, along with error codes and error messages.
  3767  	Errors []*BatchCreateChannelMembershipError `type:"list"`
  3768  }
  3769  
  3770  // String returns the string representation.
  3771  //
  3772  // API parameter values that are decorated as "sensitive" in the API will not
  3773  // be included in the string output. The member name will be present, but the
  3774  // value will be replaced with "sensitive".
  3775  func (s BatchCreateChannelMembershipOutput) String() string {
  3776  	return awsutil.Prettify(s)
  3777  }
  3778  
  3779  // GoString returns the string representation.
  3780  //
  3781  // API parameter values that are decorated as "sensitive" in the API will not
  3782  // be included in the string output. The member name will be present, but the
  3783  // value will be replaced with "sensitive".
  3784  func (s BatchCreateChannelMembershipOutput) GoString() string {
  3785  	return s.String()
  3786  }
  3787  
  3788  // SetBatchChannelMemberships sets the BatchChannelMemberships field's value.
  3789  func (s *BatchCreateChannelMembershipOutput) SetBatchChannelMemberships(v *BatchChannelMemberships) *BatchCreateChannelMembershipOutput {
  3790  	s.BatchChannelMemberships = v
  3791  	return s
  3792  }
  3793  
  3794  // SetErrors sets the Errors field's value.
  3795  func (s *BatchCreateChannelMembershipOutput) SetErrors(v []*BatchCreateChannelMembershipError) *BatchCreateChannelMembershipOutput {
  3796  	s.Errors = v
  3797  	return s
  3798  }
  3799  
  3800  // The details of a channel.
  3801  type Channel struct {
  3802  	_ struct{} `type:"structure"`
  3803  
  3804  	// The ARN of a channel.
  3805  	ChannelArn *string `min:"5" type:"string"`
  3806  
  3807  	// The AppInstanceUser who created the channel.
  3808  	CreatedBy *Identity `type:"structure"`
  3809  
  3810  	// The time at which the AppInstanceUser created the channel.
  3811  	CreatedTimestamp *time.Time `type:"timestamp"`
  3812  
  3813  	// The time at which a member sent the last message in the channel.
  3814  	LastMessageTimestamp *time.Time `type:"timestamp"`
  3815  
  3816  	// The time at which a channel was last updated.
  3817  	LastUpdatedTimestamp *time.Time `type:"timestamp"`
  3818  
  3819  	// The channel's metadata.
  3820  	//
  3821  	// Metadata is a sensitive parameter and its value will be
  3822  	// replaced with "sensitive" in string returned by Channel's
  3823  	// String and GoString methods.
  3824  	Metadata *string `type:"string" sensitive:"true"`
  3825  
  3826  	// The mode of the channel.
  3827  	Mode *string `type:"string" enum:"ChannelMode"`
  3828  
  3829  	// The name of a channel.
  3830  	//
  3831  	// Name is a sensitive parameter and its value will be
  3832  	// replaced with "sensitive" in string returned by Channel's
  3833  	// String and GoString methods.
  3834  	Name *string `min:"1" type:"string" sensitive:"true"`
  3835  
  3836  	// The channel's privacy setting.
  3837  	Privacy *string `type:"string" enum:"ChannelPrivacy"`
  3838  }
  3839  
  3840  // String returns the string representation.
  3841  //
  3842  // API parameter values that are decorated as "sensitive" in the API will not
  3843  // be included in the string output. The member name will be present, but the
  3844  // value will be replaced with "sensitive".
  3845  func (s Channel) String() string {
  3846  	return awsutil.Prettify(s)
  3847  }
  3848  
  3849  // GoString returns the string representation.
  3850  //
  3851  // API parameter values that are decorated as "sensitive" in the API will not
  3852  // be included in the string output. The member name will be present, but the
  3853  // value will be replaced with "sensitive".
  3854  func (s Channel) GoString() string {
  3855  	return s.String()
  3856  }
  3857  
  3858  // SetChannelArn sets the ChannelArn field's value.
  3859  func (s *Channel) SetChannelArn(v string) *Channel {
  3860  	s.ChannelArn = &v
  3861  	return s
  3862  }
  3863  
  3864  // SetCreatedBy sets the CreatedBy field's value.
  3865  func (s *Channel) SetCreatedBy(v *Identity) *Channel {
  3866  	s.CreatedBy = v
  3867  	return s
  3868  }
  3869  
  3870  // SetCreatedTimestamp sets the CreatedTimestamp field's value.
  3871  func (s *Channel) SetCreatedTimestamp(v time.Time) *Channel {
  3872  	s.CreatedTimestamp = &v
  3873  	return s
  3874  }
  3875  
  3876  // SetLastMessageTimestamp sets the LastMessageTimestamp field's value.
  3877  func (s *Channel) SetLastMessageTimestamp(v time.Time) *Channel {
  3878  	s.LastMessageTimestamp = &v
  3879  	return s
  3880  }
  3881  
  3882  // SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
  3883  func (s *Channel) SetLastUpdatedTimestamp(v time.Time) *Channel {
  3884  	s.LastUpdatedTimestamp = &v
  3885  	return s
  3886  }
  3887  
  3888  // SetMetadata sets the Metadata field's value.
  3889  func (s *Channel) SetMetadata(v string) *Channel {
  3890  	s.Metadata = &v
  3891  	return s
  3892  }
  3893  
  3894  // SetMode sets the Mode field's value.
  3895  func (s *Channel) SetMode(v string) *Channel {
  3896  	s.Mode = &v
  3897  	return s
  3898  }
  3899  
  3900  // SetName sets the Name field's value.
  3901  func (s *Channel) SetName(v string) *Channel {
  3902  	s.Name = &v
  3903  	return s
  3904  }
  3905  
  3906  // SetPrivacy sets the Privacy field's value.
  3907  func (s *Channel) SetPrivacy(v string) *Channel {
  3908  	s.Privacy = &v
  3909  	return s
  3910  }
  3911  
  3912  // The details of a channel ban.
  3913  type ChannelBan struct {
  3914  	_ struct{} `type:"structure"`
  3915  
  3916  	// The ARN of the channel from which a member is being banned.
  3917  	ChannelArn *string `min:"5" type:"string"`
  3918  
  3919  	// The AppInstanceUser who created the ban.
  3920  	CreatedBy *Identity `type:"structure"`
  3921  
  3922  	// The time at which the ban was created.
  3923  	CreatedTimestamp *time.Time `type:"timestamp"`
  3924  
  3925  	// The member being banned from the channel.
  3926  	Member *Identity `type:"structure"`
  3927  }
  3928  
  3929  // String returns the string representation.
  3930  //
  3931  // API parameter values that are decorated as "sensitive" in the API will not
  3932  // be included in the string output. The member name will be present, but the
  3933  // value will be replaced with "sensitive".
  3934  func (s ChannelBan) String() string {
  3935  	return awsutil.Prettify(s)
  3936  }
  3937  
  3938  // GoString returns the string representation.
  3939  //
  3940  // API parameter values that are decorated as "sensitive" in the API will not
  3941  // be included in the string output. The member name will be present, but the
  3942  // value will be replaced with "sensitive".
  3943  func (s ChannelBan) GoString() string {
  3944  	return s.String()
  3945  }
  3946  
  3947  // SetChannelArn sets the ChannelArn field's value.
  3948  func (s *ChannelBan) SetChannelArn(v string) *ChannelBan {
  3949  	s.ChannelArn = &v
  3950  	return s
  3951  }
  3952  
  3953  // SetCreatedBy sets the CreatedBy field's value.
  3954  func (s *ChannelBan) SetCreatedBy(v *Identity) *ChannelBan {
  3955  	s.CreatedBy = v
  3956  	return s
  3957  }
  3958  
  3959  // SetCreatedTimestamp sets the CreatedTimestamp field's value.
  3960  func (s *ChannelBan) SetCreatedTimestamp(v time.Time) *ChannelBan {
  3961  	s.CreatedTimestamp = &v
  3962  	return s
  3963  }
  3964  
  3965  // SetMember sets the Member field's value.
  3966  func (s *ChannelBan) SetMember(v *Identity) *ChannelBan {
  3967  	s.Member = v
  3968  	return s
  3969  }
  3970  
  3971  // Summary of the details of a ChannelBan.
  3972  type ChannelBanSummary struct {
  3973  	_ struct{} `type:"structure"`
  3974  
  3975  	// The member being banned from a channel.
  3976  	Member *Identity `type:"structure"`
  3977  }
  3978  
  3979  // String returns the string representation.
  3980  //
  3981  // API parameter values that are decorated as "sensitive" in the API will not
  3982  // be included in the string output. The member name will be present, but the
  3983  // value will be replaced with "sensitive".
  3984  func (s ChannelBanSummary) String() string {
  3985  	return awsutil.Prettify(s)
  3986  }
  3987  
  3988  // GoString returns the string representation.
  3989  //
  3990  // API parameter values that are decorated as "sensitive" in the API will not
  3991  // be included in the string output. The member name will be present, but the
  3992  // value will be replaced with "sensitive".
  3993  func (s ChannelBanSummary) GoString() string {
  3994  	return s.String()
  3995  }
  3996  
  3997  // SetMember sets the Member field's value.
  3998  func (s *ChannelBanSummary) SetMember(v *Identity) *ChannelBanSummary {
  3999  	s.Member = v
  4000  	return s
  4001  }
  4002  
  4003  // The details of a channel member.
  4004  type ChannelMembership struct {
  4005  	_ struct{} `type:"structure"`
  4006  
  4007  	// The ARN of the member's channel.
  4008  	ChannelArn *string `min:"5" type:"string"`
  4009  
  4010  	// The time at which the channel membership was created.
  4011  	CreatedTimestamp *time.Time `type:"timestamp"`
  4012  
  4013  	// The identifier of the member who invited another member.
  4014  	InvitedBy *Identity `type:"structure"`
  4015  
  4016  	// The time at which a channel membership was last updated.
  4017  	LastUpdatedTimestamp *time.Time `type:"timestamp"`
  4018  
  4019  	// The data of the channel member.
  4020  	Member *Identity `type:"structure"`
  4021  
  4022  	// The membership type set for the channel member.
  4023  	Type *string `type:"string" enum:"ChannelMembershipType"`
  4024  }
  4025  
  4026  // String returns the string representation.
  4027  //
  4028  // API parameter values that are decorated as "sensitive" in the API will not
  4029  // be included in the string output. The member name will be present, but the
  4030  // value will be replaced with "sensitive".
  4031  func (s ChannelMembership) String() string {
  4032  	return awsutil.Prettify(s)
  4033  }
  4034  
  4035  // GoString returns the string representation.
  4036  //
  4037  // API parameter values that are decorated as "sensitive" in the API will not
  4038  // be included in the string output. The member name will be present, but the
  4039  // value will be replaced with "sensitive".
  4040  func (s ChannelMembership) GoString() string {
  4041  	return s.String()
  4042  }
  4043  
  4044  // SetChannelArn sets the ChannelArn field's value.
  4045  func (s *ChannelMembership) SetChannelArn(v string) *ChannelMembership {
  4046  	s.ChannelArn = &v
  4047  	return s
  4048  }
  4049  
  4050  // SetCreatedTimestamp sets the CreatedTimestamp field's value.
  4051  func (s *ChannelMembership) SetCreatedTimestamp(v time.Time) *ChannelMembership {
  4052  	s.CreatedTimestamp = &v
  4053  	return s
  4054  }
  4055  
  4056  // SetInvitedBy sets the InvitedBy field's value.
  4057  func (s *ChannelMembership) SetInvitedBy(v *Identity) *ChannelMembership {
  4058  	s.InvitedBy = v
  4059  	return s
  4060  }
  4061  
  4062  // SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
  4063  func (s *ChannelMembership) SetLastUpdatedTimestamp(v time.Time) *ChannelMembership {
  4064  	s.LastUpdatedTimestamp = &v
  4065  	return s
  4066  }
  4067  
  4068  // SetMember sets the Member field's value.
  4069  func (s *ChannelMembership) SetMember(v *Identity) *ChannelMembership {
  4070  	s.Member = v
  4071  	return s
  4072  }
  4073  
  4074  // SetType sets the Type field's value.
  4075  func (s *ChannelMembership) SetType(v string) *ChannelMembership {
  4076  	s.Type = &v
  4077  	return s
  4078  }
  4079  
  4080  // Summary of the channel membership details of an AppInstanceUser.
  4081  type ChannelMembershipForAppInstanceUserSummary struct {
  4082  	_ struct{} `type:"structure"`
  4083  
  4084  	// Returns the channel membership data for an AppInstance.
  4085  	AppInstanceUserMembershipSummary *AppInstanceUserMembershipSummary `type:"structure"`
  4086  
  4087  	// Returns the channel data for an AppInstance.
  4088  	ChannelSummary *ChannelSummary `type:"structure"`
  4089  }
  4090  
  4091  // String returns the string representation.
  4092  //
  4093  // API parameter values that are decorated as "sensitive" in the API will not
  4094  // be included in the string output. The member name will be present, but the
  4095  // value will be replaced with "sensitive".
  4096  func (s ChannelMembershipForAppInstanceUserSummary) String() string {
  4097  	return awsutil.Prettify(s)
  4098  }
  4099  
  4100  // GoString returns the string representation.
  4101  //
  4102  // API parameter values that are decorated as "sensitive" in the API will not
  4103  // be included in the string output. The member name will be present, but the
  4104  // value will be replaced with "sensitive".
  4105  func (s ChannelMembershipForAppInstanceUserSummary) GoString() string {
  4106  	return s.String()
  4107  }
  4108  
  4109  // SetAppInstanceUserMembershipSummary sets the AppInstanceUserMembershipSummary field's value.
  4110  func (s *ChannelMembershipForAppInstanceUserSummary) SetAppInstanceUserMembershipSummary(v *AppInstanceUserMembershipSummary) *ChannelMembershipForAppInstanceUserSummary {
  4111  	s.AppInstanceUserMembershipSummary = v
  4112  	return s
  4113  }
  4114  
  4115  // SetChannelSummary sets the ChannelSummary field's value.
  4116  func (s *ChannelMembershipForAppInstanceUserSummary) SetChannelSummary(v *ChannelSummary) *ChannelMembershipForAppInstanceUserSummary {
  4117  	s.ChannelSummary = v
  4118  	return s
  4119  }
  4120  
  4121  // Summary of the details of a ChannelMembership.
  4122  type ChannelMembershipSummary struct {
  4123  	_ struct{} `type:"structure"`
  4124  
  4125  	// A member's summary data.
  4126  	Member *Identity `type:"structure"`
  4127  }
  4128  
  4129  // String returns the string representation.
  4130  //
  4131  // API parameter values that are decorated as "sensitive" in the API will not
  4132  // be included in the string output. The member name will be present, but the
  4133  // value will be replaced with "sensitive".
  4134  func (s ChannelMembershipSummary) String() string {
  4135  	return awsutil.Prettify(s)
  4136  }
  4137  
  4138  // GoString returns the string representation.
  4139  //
  4140  // API parameter values that are decorated as "sensitive" in the API will not
  4141  // be included in the string output. The member name will be present, but the
  4142  // value will be replaced with "sensitive".
  4143  func (s ChannelMembershipSummary) GoString() string {
  4144  	return s.String()
  4145  }
  4146  
  4147  // SetMember sets the Member field's value.
  4148  func (s *ChannelMembershipSummary) SetMember(v *Identity) *ChannelMembershipSummary {
  4149  	s.Member = v
  4150  	return s
  4151  }
  4152  
  4153  // The details of a message in a channel.
  4154  type ChannelMessage struct {
  4155  	_ struct{} `type:"structure"`
  4156  
  4157  	// The ARN of the channel.
  4158  	ChannelArn *string `min:"5" type:"string"`
  4159  
  4160  	// The message content.
  4161  	//
  4162  	// Content is a sensitive parameter and its value will be
  4163  	// replaced with "sensitive" in string returned by ChannelMessage's
  4164  	// String and GoString methods.
  4165  	Content *string `type:"string" sensitive:"true"`
  4166  
  4167  	// The time at which the message was created.
  4168  	CreatedTimestamp *time.Time `type:"timestamp"`
  4169  
  4170  	// The time at which a message was edited.
  4171  	LastEditedTimestamp *time.Time `type:"timestamp"`
  4172  
  4173  	// The time at which a message was updated.
  4174  	LastUpdatedTimestamp *time.Time `type:"timestamp"`
  4175  
  4176  	// The ID of a message.
  4177  	MessageId *string `min:"1" type:"string"`
  4178  
  4179  	// The message metadata.
  4180  	//
  4181  	// Metadata is a sensitive parameter and its value will be
  4182  	// replaced with "sensitive" in string returned by ChannelMessage's
  4183  	// String and GoString methods.
  4184  	Metadata *string `type:"string" sensitive:"true"`
  4185  
  4186  	// The persistence setting for a channel message.
  4187  	Persistence *string `type:"string" enum:"ChannelMessagePersistenceType"`
  4188  
  4189  	// Hides the content of a message.
  4190  	Redacted *bool `type:"boolean"`
  4191  
  4192  	// The message sender.
  4193  	Sender *Identity `type:"structure"`
  4194  
  4195  	// The message type.
  4196  	Type *string `type:"string" enum:"ChannelMessageType"`
  4197  }
  4198  
  4199  // String returns the string representation.
  4200  //
  4201  // API parameter values that are decorated as "sensitive" in the API will not
  4202  // be included in the string output. The member name will be present, but the
  4203  // value will be replaced with "sensitive".
  4204  func (s ChannelMessage) String() string {
  4205  	return awsutil.Prettify(s)
  4206  }
  4207  
  4208  // GoString returns the string representation.
  4209  //
  4210  // API parameter values that are decorated as "sensitive" in the API will not
  4211  // be included in the string output. The member name will be present, but the
  4212  // value will be replaced with "sensitive".
  4213  func (s ChannelMessage) GoString() string {
  4214  	return s.String()
  4215  }
  4216  
  4217  // SetChannelArn sets the ChannelArn field's value.
  4218  func (s *ChannelMessage) SetChannelArn(v string) *ChannelMessage {
  4219  	s.ChannelArn = &v
  4220  	return s
  4221  }
  4222  
  4223  // SetContent sets the Content field's value.
  4224  func (s *ChannelMessage) SetContent(v string) *ChannelMessage {
  4225  	s.Content = &v
  4226  	return s
  4227  }
  4228  
  4229  // SetCreatedTimestamp sets the CreatedTimestamp field's value.
  4230  func (s *ChannelMessage) SetCreatedTimestamp(v time.Time) *ChannelMessage {
  4231  	s.CreatedTimestamp = &v
  4232  	return s
  4233  }
  4234  
  4235  // SetLastEditedTimestamp sets the LastEditedTimestamp field's value.
  4236  func (s *ChannelMessage) SetLastEditedTimestamp(v time.Time) *ChannelMessage {
  4237  	s.LastEditedTimestamp = &v
  4238  	return s
  4239  }
  4240  
  4241  // SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
  4242  func (s *ChannelMessage) SetLastUpdatedTimestamp(v time.Time) *ChannelMessage {
  4243  	s.LastUpdatedTimestamp = &v
  4244  	return s
  4245  }
  4246  
  4247  // SetMessageId sets the MessageId field's value.
  4248  func (s *ChannelMessage) SetMessageId(v string) *ChannelMessage {
  4249  	s.MessageId = &v
  4250  	return s
  4251  }
  4252  
  4253  // SetMetadata sets the Metadata field's value.
  4254  func (s *ChannelMessage) SetMetadata(v string) *ChannelMessage {
  4255  	s.Metadata = &v
  4256  	return s
  4257  }
  4258  
  4259  // SetPersistence sets the Persistence field's value.
  4260  func (s *ChannelMessage) SetPersistence(v string) *ChannelMessage {
  4261  	s.Persistence = &v
  4262  	return s
  4263  }
  4264  
  4265  // SetRedacted sets the Redacted field's value.
  4266  func (s *ChannelMessage) SetRedacted(v bool) *ChannelMessage {
  4267  	s.Redacted = &v
  4268  	return s
  4269  }
  4270  
  4271  // SetSender sets the Sender field's value.
  4272  func (s *ChannelMessage) SetSender(v *Identity) *ChannelMessage {
  4273  	s.Sender = v
  4274  	return s
  4275  }
  4276  
  4277  // SetType sets the Type field's value.
  4278  func (s *ChannelMessage) SetType(v string) *ChannelMessage {
  4279  	s.Type = &v
  4280  	return s
  4281  }
  4282  
  4283  // Summary of the messages in a Channel.
  4284  type ChannelMessageSummary struct {
  4285  	_ struct{} `type:"structure"`
  4286  
  4287  	// The content of the message.
  4288  	//
  4289  	// Content is a sensitive parameter and its value will be
  4290  	// replaced with "sensitive" in string returned by ChannelMessageSummary's
  4291  	// String and GoString methods.
  4292  	Content *string `type:"string" sensitive:"true"`
  4293  
  4294  	// The time at which the message summary was created.
  4295  	CreatedTimestamp *time.Time `type:"timestamp"`
  4296  
  4297  	// The time at which a message was last edited.
  4298  	LastEditedTimestamp *time.Time `type:"timestamp"`
  4299  
  4300  	// The time at which a message was last updated.
  4301  	LastUpdatedTimestamp *time.Time `type:"timestamp"`
  4302  
  4303  	// The ID of the message.
  4304  	MessageId *string `min:"1" type:"string"`
  4305  
  4306  	// The metadata of the message.
  4307  	//
  4308  	// Metadata is a sensitive parameter and its value will be
  4309  	// replaced with "sensitive" in string returned by ChannelMessageSummary's
  4310  	// String and GoString methods.
  4311  	Metadata *string `type:"string" sensitive:"true"`
  4312  
  4313  	// Indicates whether a message was redacted.
  4314  	Redacted *bool `type:"boolean"`
  4315  
  4316  	// The message sender.
  4317  	Sender *Identity `type:"structure"`
  4318  
  4319  	// The type of message.
  4320  	Type *string `type:"string" enum:"ChannelMessageType"`
  4321  }
  4322  
  4323  // String returns the string representation.
  4324  //
  4325  // API parameter values that are decorated as "sensitive" in the API will not
  4326  // be included in the string output. The member name will be present, but the
  4327  // value will be replaced with "sensitive".
  4328  func (s ChannelMessageSummary) String() string {
  4329  	return awsutil.Prettify(s)
  4330  }
  4331  
  4332  // GoString returns the string representation.
  4333  //
  4334  // API parameter values that are decorated as "sensitive" in the API will not
  4335  // be included in the string output. The member name will be present, but the
  4336  // value will be replaced with "sensitive".
  4337  func (s ChannelMessageSummary) GoString() string {
  4338  	return s.String()
  4339  }
  4340  
  4341  // SetContent sets the Content field's value.
  4342  func (s *ChannelMessageSummary) SetContent(v string) *ChannelMessageSummary {
  4343  	s.Content = &v
  4344  	return s
  4345  }
  4346  
  4347  // SetCreatedTimestamp sets the CreatedTimestamp field's value.
  4348  func (s *ChannelMessageSummary) SetCreatedTimestamp(v time.Time) *ChannelMessageSummary {
  4349  	s.CreatedTimestamp = &v
  4350  	return s
  4351  }
  4352  
  4353  // SetLastEditedTimestamp sets the LastEditedTimestamp field's value.
  4354  func (s *ChannelMessageSummary) SetLastEditedTimestamp(v time.Time) *ChannelMessageSummary {
  4355  	s.LastEditedTimestamp = &v
  4356  	return s
  4357  }
  4358  
  4359  // SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
  4360  func (s *ChannelMessageSummary) SetLastUpdatedTimestamp(v time.Time) *ChannelMessageSummary {
  4361  	s.LastUpdatedTimestamp = &v
  4362  	return s
  4363  }
  4364  
  4365  // SetMessageId sets the MessageId field's value.
  4366  func (s *ChannelMessageSummary) SetMessageId(v string) *ChannelMessageSummary {
  4367  	s.MessageId = &v
  4368  	return s
  4369  }
  4370  
  4371  // SetMetadata sets the Metadata field's value.
  4372  func (s *ChannelMessageSummary) SetMetadata(v string) *ChannelMessageSummary {
  4373  	s.Metadata = &v
  4374  	return s
  4375  }
  4376  
  4377  // SetRedacted sets the Redacted field's value.
  4378  func (s *ChannelMessageSummary) SetRedacted(v bool) *ChannelMessageSummary {
  4379  	s.Redacted = &v
  4380  	return s
  4381  }
  4382  
  4383  // SetSender sets the Sender field's value.
  4384  func (s *ChannelMessageSummary) SetSender(v *Identity) *ChannelMessageSummary {
  4385  	s.Sender = v
  4386  	return s
  4387  }
  4388  
  4389  // SetType sets the Type field's value.
  4390  func (s *ChannelMessageSummary) SetType(v string) *ChannelMessageSummary {
  4391  	s.Type = &v
  4392  	return s
  4393  }
  4394  
  4395  // Summary of the details of a moderated channel.
  4396  type ChannelModeratedByAppInstanceUserSummary struct {
  4397  	_ struct{} `type:"structure"`
  4398  
  4399  	// Summary of the details of a Channel.
  4400  	ChannelSummary *ChannelSummary `type:"structure"`
  4401  }
  4402  
  4403  // String returns the string representation.
  4404  //
  4405  // API parameter values that are decorated as "sensitive" in the API will not
  4406  // be included in the string output. The member name will be present, but the
  4407  // value will be replaced with "sensitive".
  4408  func (s ChannelModeratedByAppInstanceUserSummary) String() string {
  4409  	return awsutil.Prettify(s)
  4410  }
  4411  
  4412  // GoString returns the string representation.
  4413  //
  4414  // API parameter values that are decorated as "sensitive" in the API will not
  4415  // be included in the string output. The member name will be present, but the
  4416  // value will be replaced with "sensitive".
  4417  func (s ChannelModeratedByAppInstanceUserSummary) GoString() string {
  4418  	return s.String()
  4419  }
  4420  
  4421  // SetChannelSummary sets the ChannelSummary field's value.
  4422  func (s *ChannelModeratedByAppInstanceUserSummary) SetChannelSummary(v *ChannelSummary) *ChannelModeratedByAppInstanceUserSummary {
  4423  	s.ChannelSummary = v
  4424  	return s
  4425  }
  4426  
  4427  // The details of a channel moderator.
  4428  type ChannelModerator struct {
  4429  	_ struct{} `type:"structure"`
  4430  
  4431  	// The ARN of the moderator's channel.
  4432  	ChannelArn *string `min:"5" type:"string"`
  4433  
  4434  	// The AppInstanceUser who created the moderator.
  4435  	CreatedBy *Identity `type:"structure"`
  4436  
  4437  	// The time at which the moderator was created.
  4438  	CreatedTimestamp *time.Time `type:"timestamp"`
  4439  
  4440  	// The moderator's data.
  4441  	Moderator *Identity `type:"structure"`
  4442  }
  4443  
  4444  // String returns the string representation.
  4445  //
  4446  // API parameter values that are decorated as "sensitive" in the API will not
  4447  // be included in the string output. The member name will be present, but the
  4448  // value will be replaced with "sensitive".
  4449  func (s ChannelModerator) String() string {
  4450  	return awsutil.Prettify(s)
  4451  }
  4452  
  4453  // GoString returns the string representation.
  4454  //
  4455  // API parameter values that are decorated as "sensitive" in the API will not
  4456  // be included in the string output. The member name will be present, but the
  4457  // value will be replaced with "sensitive".
  4458  func (s ChannelModerator) GoString() string {
  4459  	return s.String()
  4460  }
  4461  
  4462  // SetChannelArn sets the ChannelArn field's value.
  4463  func (s *ChannelModerator) SetChannelArn(v string) *ChannelModerator {
  4464  	s.ChannelArn = &v
  4465  	return s
  4466  }
  4467  
  4468  // SetCreatedBy sets the CreatedBy field's value.
  4469  func (s *ChannelModerator) SetCreatedBy(v *Identity) *ChannelModerator {
  4470  	s.CreatedBy = v
  4471  	return s
  4472  }
  4473  
  4474  // SetCreatedTimestamp sets the CreatedTimestamp field's value.
  4475  func (s *ChannelModerator) SetCreatedTimestamp(v time.Time) *ChannelModerator {
  4476  	s.CreatedTimestamp = &v
  4477  	return s
  4478  }
  4479  
  4480  // SetModerator sets the Moderator field's value.
  4481  func (s *ChannelModerator) SetModerator(v *Identity) *ChannelModerator {
  4482  	s.Moderator = v
  4483  	return s
  4484  }
  4485  
  4486  // Summary of the details of a ChannelModerator.
  4487  type ChannelModeratorSummary struct {
  4488  	_ struct{} `type:"structure"`
  4489  
  4490  	// The data for a moderator.
  4491  	Moderator *Identity `type:"structure"`
  4492  }
  4493  
  4494  // String returns the string representation.
  4495  //
  4496  // API parameter values that are decorated as "sensitive" in the API will not
  4497  // be included in the string output. The member name will be present, but the
  4498  // value will be replaced with "sensitive".
  4499  func (s ChannelModeratorSummary) String() string {
  4500  	return awsutil.Prettify(s)
  4501  }
  4502  
  4503  // GoString returns the string representation.
  4504  //
  4505  // API parameter values that are decorated as "sensitive" in the API will not
  4506  // be included in the string output. The member name will be present, but the
  4507  // value will be replaced with "sensitive".
  4508  func (s ChannelModeratorSummary) GoString() string {
  4509  	return s.String()
  4510  }
  4511  
  4512  // SetModerator sets the Moderator field's value.
  4513  func (s *ChannelModeratorSummary) SetModerator(v *Identity) *ChannelModeratorSummary {
  4514  	s.Moderator = v
  4515  	return s
  4516  }
  4517  
  4518  // Summary of the details of a Channel.
  4519  type ChannelSummary struct {
  4520  	_ struct{} `type:"structure"`
  4521  
  4522  	// The ARN of the channel.
  4523  	ChannelArn *string `min:"5" type:"string"`
  4524  
  4525  	// The time at which the last message in a channel was sent.
  4526  	LastMessageTimestamp *time.Time `type:"timestamp"`
  4527  
  4528  	// The metadata of the channel.
  4529  	//
  4530  	// Metadata is a sensitive parameter and its value will be
  4531  	// replaced with "sensitive" in string returned by ChannelSummary's
  4532  	// String and GoString methods.
  4533  	Metadata *string `type:"string" sensitive:"true"`
  4534  
  4535  	// The mode of the channel.
  4536  	Mode *string `type:"string" enum:"ChannelMode"`
  4537  
  4538  	// The name of the channel.
  4539  	//
  4540  	// Name is a sensitive parameter and its value will be
  4541  	// replaced with "sensitive" in string returned by ChannelSummary's
  4542  	// String and GoString methods.
  4543  	Name *string `min:"1" type:"string" sensitive:"true"`
  4544  
  4545  	// The privacy setting of the channel.
  4546  	Privacy *string `type:"string" enum:"ChannelPrivacy"`
  4547  }
  4548  
  4549  // String returns the string representation.
  4550  //
  4551  // API parameter values that are decorated as "sensitive" in the API will not
  4552  // be included in the string output. The member name will be present, but the
  4553  // value will be replaced with "sensitive".
  4554  func (s ChannelSummary) String() string {
  4555  	return awsutil.Prettify(s)
  4556  }
  4557  
  4558  // GoString returns the string representation.
  4559  //
  4560  // API parameter values that are decorated as "sensitive" in the API will not
  4561  // be included in the string output. The member name will be present, but the
  4562  // value will be replaced with "sensitive".
  4563  func (s ChannelSummary) GoString() string {
  4564  	return s.String()
  4565  }
  4566  
  4567  // SetChannelArn sets the ChannelArn field's value.
  4568  func (s *ChannelSummary) SetChannelArn(v string) *ChannelSummary {
  4569  	s.ChannelArn = &v
  4570  	return s
  4571  }
  4572  
  4573  // SetLastMessageTimestamp sets the LastMessageTimestamp field's value.
  4574  func (s *ChannelSummary) SetLastMessageTimestamp(v time.Time) *ChannelSummary {
  4575  	s.LastMessageTimestamp = &v
  4576  	return s
  4577  }
  4578  
  4579  // SetMetadata sets the Metadata field's value.
  4580  func (s *ChannelSummary) SetMetadata(v string) *ChannelSummary {
  4581  	s.Metadata = &v
  4582  	return s
  4583  }
  4584  
  4585  // SetMode sets the Mode field's value.
  4586  func (s *ChannelSummary) SetMode(v string) *ChannelSummary {
  4587  	s.Mode = &v
  4588  	return s
  4589  }
  4590  
  4591  // SetName sets the Name field's value.
  4592  func (s *ChannelSummary) SetName(v string) *ChannelSummary {
  4593  	s.Name = &v
  4594  	return s
  4595  }
  4596  
  4597  // SetPrivacy sets the Privacy field's value.
  4598  func (s *ChannelSummary) SetPrivacy(v string) *ChannelSummary {
  4599  	s.Privacy = &v
  4600  	return s
  4601  }
  4602  
  4603  // The request could not be processed because of conflict in the current state
  4604  // of the resource.
  4605  type ConflictException struct {
  4606  	_            struct{}                  `type:"structure"`
  4607  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  4608  
  4609  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  4610  
  4611  	Message_ *string `locationName:"Message" type:"string"`
  4612  }
  4613  
  4614  // String returns the string representation.
  4615  //
  4616  // API parameter values that are decorated as "sensitive" in the API will not
  4617  // be included in the string output. The member name will be present, but the
  4618  // value will be replaced with "sensitive".
  4619  func (s ConflictException) String() string {
  4620  	return awsutil.Prettify(s)
  4621  }
  4622  
  4623  // GoString returns the string representation.
  4624  //
  4625  // API parameter values that are decorated as "sensitive" in the API will not
  4626  // be included in the string output. The member name will be present, but the
  4627  // value will be replaced with "sensitive".
  4628  func (s ConflictException) GoString() string {
  4629  	return s.String()
  4630  }
  4631  
  4632  func newErrorConflictException(v protocol.ResponseMetadata) error {
  4633  	return &ConflictException{
  4634  		RespMetadata: v,
  4635  	}
  4636  }
  4637  
  4638  // Code returns the exception type name.
  4639  func (s *ConflictException) Code() string {
  4640  	return "ConflictException"
  4641  }
  4642  
  4643  // Message returns the exception's message.
  4644  func (s *ConflictException) Message() string {
  4645  	if s.Message_ != nil {
  4646  		return *s.Message_
  4647  	}
  4648  	return ""
  4649  }
  4650  
  4651  // OrigErr always returns nil, satisfies awserr.Error interface.
  4652  func (s *ConflictException) OrigErr() error {
  4653  	return nil
  4654  }
  4655  
  4656  func (s *ConflictException) Error() string {
  4657  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  4658  }
  4659  
  4660  // Status code returns the HTTP status code for the request's response error.
  4661  func (s *ConflictException) StatusCode() int {
  4662  	return s.RespMetadata.StatusCode
  4663  }
  4664  
  4665  // RequestID returns the service's response RequestID for request.
  4666  func (s *ConflictException) RequestID() string {
  4667  	return s.RespMetadata.RequestID
  4668  }
  4669  
  4670  type CreateChannelBanInput struct {
  4671  	_ struct{} `type:"structure"`
  4672  
  4673  	// The ARN of the ban request.
  4674  	//
  4675  	// ChannelArn is a required field
  4676  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  4677  
  4678  	// The AppInstanceUserArn of the user that makes the API call.
  4679  	//
  4680  	// ChimeBearer is a required field
  4681  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  4682  
  4683  	// The ARN of the member being banned.
  4684  	//
  4685  	// MemberArn is a required field
  4686  	MemberArn *string `min:"5" type:"string" required:"true"`
  4687  }
  4688  
  4689  // String returns the string representation.
  4690  //
  4691  // API parameter values that are decorated as "sensitive" in the API will not
  4692  // be included in the string output. The member name will be present, but the
  4693  // value will be replaced with "sensitive".
  4694  func (s CreateChannelBanInput) String() string {
  4695  	return awsutil.Prettify(s)
  4696  }
  4697  
  4698  // GoString returns the string representation.
  4699  //
  4700  // API parameter values that are decorated as "sensitive" in the API will not
  4701  // be included in the string output. The member name will be present, but the
  4702  // value will be replaced with "sensitive".
  4703  func (s CreateChannelBanInput) GoString() string {
  4704  	return s.String()
  4705  }
  4706  
  4707  // Validate inspects the fields of the type to determine if they are valid.
  4708  func (s *CreateChannelBanInput) Validate() error {
  4709  	invalidParams := request.ErrInvalidParams{Context: "CreateChannelBanInput"}
  4710  	if s.ChannelArn == nil {
  4711  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  4712  	}
  4713  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  4714  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  4715  	}
  4716  	if s.ChimeBearer == nil {
  4717  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  4718  	}
  4719  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  4720  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  4721  	}
  4722  	if s.MemberArn == nil {
  4723  		invalidParams.Add(request.NewErrParamRequired("MemberArn"))
  4724  	}
  4725  	if s.MemberArn != nil && len(*s.MemberArn) < 5 {
  4726  		invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5))
  4727  	}
  4728  
  4729  	if invalidParams.Len() > 0 {
  4730  		return invalidParams
  4731  	}
  4732  	return nil
  4733  }
  4734  
  4735  // SetChannelArn sets the ChannelArn field's value.
  4736  func (s *CreateChannelBanInput) SetChannelArn(v string) *CreateChannelBanInput {
  4737  	s.ChannelArn = &v
  4738  	return s
  4739  }
  4740  
  4741  // SetChimeBearer sets the ChimeBearer field's value.
  4742  func (s *CreateChannelBanInput) SetChimeBearer(v string) *CreateChannelBanInput {
  4743  	s.ChimeBearer = &v
  4744  	return s
  4745  }
  4746  
  4747  // SetMemberArn sets the MemberArn field's value.
  4748  func (s *CreateChannelBanInput) SetMemberArn(v string) *CreateChannelBanInput {
  4749  	s.MemberArn = &v
  4750  	return s
  4751  }
  4752  
  4753  type CreateChannelBanOutput struct {
  4754  	_ struct{} `type:"structure"`
  4755  
  4756  	// The ARN of the response to the ban request.
  4757  	ChannelArn *string `min:"5" type:"string"`
  4758  
  4759  	// The ChannelArn and BannedIdentity of the member in the ban response.
  4760  	Member *Identity `type:"structure"`
  4761  }
  4762  
  4763  // String returns the string representation.
  4764  //
  4765  // API parameter values that are decorated as "sensitive" in the API will not
  4766  // be included in the string output. The member name will be present, but the
  4767  // value will be replaced with "sensitive".
  4768  func (s CreateChannelBanOutput) String() string {
  4769  	return awsutil.Prettify(s)
  4770  }
  4771  
  4772  // GoString returns the string representation.
  4773  //
  4774  // API parameter values that are decorated as "sensitive" in the API will not
  4775  // be included in the string output. The member name will be present, but the
  4776  // value will be replaced with "sensitive".
  4777  func (s CreateChannelBanOutput) GoString() string {
  4778  	return s.String()
  4779  }
  4780  
  4781  // SetChannelArn sets the ChannelArn field's value.
  4782  func (s *CreateChannelBanOutput) SetChannelArn(v string) *CreateChannelBanOutput {
  4783  	s.ChannelArn = &v
  4784  	return s
  4785  }
  4786  
  4787  // SetMember sets the Member field's value.
  4788  func (s *CreateChannelBanOutput) SetMember(v *Identity) *CreateChannelBanOutput {
  4789  	s.Member = v
  4790  	return s
  4791  }
  4792  
  4793  type CreateChannelInput struct {
  4794  	_ struct{} `type:"structure"`
  4795  
  4796  	// The ARN of the channel request.
  4797  	//
  4798  	// AppInstanceArn is a required field
  4799  	AppInstanceArn *string `min:"5" type:"string" required:"true"`
  4800  
  4801  	// The AppInstanceUserArn of the user that makes the API call.
  4802  	//
  4803  	// ChimeBearer is a required field
  4804  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  4805  
  4806  	// The client token for the request. An Idempotency token.
  4807  	//
  4808  	// ClientRequestToken is a sensitive parameter and its value will be
  4809  	// replaced with "sensitive" in string returned by CreateChannelInput's
  4810  	// String and GoString methods.
  4811  	ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"`
  4812  
  4813  	// The metadata of the creation request. Limited to 1KB and UTF-8.
  4814  	//
  4815  	// Metadata is a sensitive parameter and its value will be
  4816  	// replaced with "sensitive" in string returned by CreateChannelInput's
  4817  	// String and GoString methods.
  4818  	Metadata *string `type:"string" sensitive:"true"`
  4819  
  4820  	// The channel mode: UNRESTRICTED or RESTRICTED. Administrators, moderators,
  4821  	// and channel members can add themselves and other members to unrestricted
  4822  	// channels. Only administrators and moderators can add members to restricted
  4823  	// channels.
  4824  	Mode *string `type:"string" enum:"ChannelMode"`
  4825  
  4826  	// The name of the channel.
  4827  	//
  4828  	// Name is a sensitive parameter and its value will be
  4829  	// replaced with "sensitive" in string returned by CreateChannelInput's
  4830  	// String and GoString methods.
  4831  	//
  4832  	// Name is a required field
  4833  	Name *string `min:"1" type:"string" required:"true" sensitive:"true"`
  4834  
  4835  	// The channel's privacy level: PUBLIC or PRIVATE. Private channels aren't discoverable
  4836  	// by users outside the channel. Public channels are discoverable by anyone
  4837  	// in the AppInstance.
  4838  	Privacy *string `type:"string" enum:"ChannelPrivacy"`
  4839  
  4840  	// The tags for the creation request.
  4841  	Tags []*Tag `min:"1" type:"list"`
  4842  }
  4843  
  4844  // String returns the string representation.
  4845  //
  4846  // API parameter values that are decorated as "sensitive" in the API will not
  4847  // be included in the string output. The member name will be present, but the
  4848  // value will be replaced with "sensitive".
  4849  func (s CreateChannelInput) String() string {
  4850  	return awsutil.Prettify(s)
  4851  }
  4852  
  4853  // GoString returns the string representation.
  4854  //
  4855  // API parameter values that are decorated as "sensitive" in the API will not
  4856  // be included in the string output. The member name will be present, but the
  4857  // value will be replaced with "sensitive".
  4858  func (s CreateChannelInput) GoString() string {
  4859  	return s.String()
  4860  }
  4861  
  4862  // Validate inspects the fields of the type to determine if they are valid.
  4863  func (s *CreateChannelInput) Validate() error {
  4864  	invalidParams := request.ErrInvalidParams{Context: "CreateChannelInput"}
  4865  	if s.AppInstanceArn == nil {
  4866  		invalidParams.Add(request.NewErrParamRequired("AppInstanceArn"))
  4867  	}
  4868  	if s.AppInstanceArn != nil && len(*s.AppInstanceArn) < 5 {
  4869  		invalidParams.Add(request.NewErrParamMinLen("AppInstanceArn", 5))
  4870  	}
  4871  	if s.ChimeBearer == nil {
  4872  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  4873  	}
  4874  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  4875  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  4876  	}
  4877  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 {
  4878  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2))
  4879  	}
  4880  	if s.Name == nil {
  4881  		invalidParams.Add(request.NewErrParamRequired("Name"))
  4882  	}
  4883  	if s.Name != nil && len(*s.Name) < 1 {
  4884  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  4885  	}
  4886  	if s.Tags != nil && len(s.Tags) < 1 {
  4887  		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
  4888  	}
  4889  	if s.Tags != nil {
  4890  		for i, v := range s.Tags {
  4891  			if v == nil {
  4892  				continue
  4893  			}
  4894  			if err := v.Validate(); err != nil {
  4895  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  4896  			}
  4897  		}
  4898  	}
  4899  
  4900  	if invalidParams.Len() > 0 {
  4901  		return invalidParams
  4902  	}
  4903  	return nil
  4904  }
  4905  
  4906  // SetAppInstanceArn sets the AppInstanceArn field's value.
  4907  func (s *CreateChannelInput) SetAppInstanceArn(v string) *CreateChannelInput {
  4908  	s.AppInstanceArn = &v
  4909  	return s
  4910  }
  4911  
  4912  // SetChimeBearer sets the ChimeBearer field's value.
  4913  func (s *CreateChannelInput) SetChimeBearer(v string) *CreateChannelInput {
  4914  	s.ChimeBearer = &v
  4915  	return s
  4916  }
  4917  
  4918  // SetClientRequestToken sets the ClientRequestToken field's value.
  4919  func (s *CreateChannelInput) SetClientRequestToken(v string) *CreateChannelInput {
  4920  	s.ClientRequestToken = &v
  4921  	return s
  4922  }
  4923  
  4924  // SetMetadata sets the Metadata field's value.
  4925  func (s *CreateChannelInput) SetMetadata(v string) *CreateChannelInput {
  4926  	s.Metadata = &v
  4927  	return s
  4928  }
  4929  
  4930  // SetMode sets the Mode field's value.
  4931  func (s *CreateChannelInput) SetMode(v string) *CreateChannelInput {
  4932  	s.Mode = &v
  4933  	return s
  4934  }
  4935  
  4936  // SetName sets the Name field's value.
  4937  func (s *CreateChannelInput) SetName(v string) *CreateChannelInput {
  4938  	s.Name = &v
  4939  	return s
  4940  }
  4941  
  4942  // SetPrivacy sets the Privacy field's value.
  4943  func (s *CreateChannelInput) SetPrivacy(v string) *CreateChannelInput {
  4944  	s.Privacy = &v
  4945  	return s
  4946  }
  4947  
  4948  // SetTags sets the Tags field's value.
  4949  func (s *CreateChannelInput) SetTags(v []*Tag) *CreateChannelInput {
  4950  	s.Tags = v
  4951  	return s
  4952  }
  4953  
  4954  type CreateChannelMembershipInput struct {
  4955  	_ struct{} `type:"structure"`
  4956  
  4957  	// The ARN of the channel to which you're adding users.
  4958  	//
  4959  	// ChannelArn is a required field
  4960  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  4961  
  4962  	// The AppInstanceUserArn of the user that makes the API call.
  4963  	//
  4964  	// ChimeBearer is a required field
  4965  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  4966  
  4967  	// The ARN of the member you want to add to the channel.
  4968  	//
  4969  	// MemberArn is a required field
  4970  	MemberArn *string `min:"5" type:"string" required:"true"`
  4971  
  4972  	// The membership type of a user, DEFAULT or HIDDEN. Default members are always
  4973  	// returned as part of ListChannelMemberships. Hidden members are only returned
  4974  	// if the type filter in ListChannelMemberships equals HIDDEN. Otherwise hidden
  4975  	// members are not returned. This is only supported by moderators.
  4976  	//
  4977  	// Type is a required field
  4978  	Type *string `type:"string" required:"true" enum:"ChannelMembershipType"`
  4979  }
  4980  
  4981  // String returns the string representation.
  4982  //
  4983  // API parameter values that are decorated as "sensitive" in the API will not
  4984  // be included in the string output. The member name will be present, but the
  4985  // value will be replaced with "sensitive".
  4986  func (s CreateChannelMembershipInput) String() string {
  4987  	return awsutil.Prettify(s)
  4988  }
  4989  
  4990  // GoString returns the string representation.
  4991  //
  4992  // API parameter values that are decorated as "sensitive" in the API will not
  4993  // be included in the string output. The member name will be present, but the
  4994  // value will be replaced with "sensitive".
  4995  func (s CreateChannelMembershipInput) GoString() string {
  4996  	return s.String()
  4997  }
  4998  
  4999  // Validate inspects the fields of the type to determine if they are valid.
  5000  func (s *CreateChannelMembershipInput) Validate() error {
  5001  	invalidParams := request.ErrInvalidParams{Context: "CreateChannelMembershipInput"}
  5002  	if s.ChannelArn == nil {
  5003  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5004  	}
  5005  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5006  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5007  	}
  5008  	if s.ChimeBearer == nil {
  5009  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5010  	}
  5011  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5012  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5013  	}
  5014  	if s.MemberArn == nil {
  5015  		invalidParams.Add(request.NewErrParamRequired("MemberArn"))
  5016  	}
  5017  	if s.MemberArn != nil && len(*s.MemberArn) < 5 {
  5018  		invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5))
  5019  	}
  5020  	if s.Type == nil {
  5021  		invalidParams.Add(request.NewErrParamRequired("Type"))
  5022  	}
  5023  
  5024  	if invalidParams.Len() > 0 {
  5025  		return invalidParams
  5026  	}
  5027  	return nil
  5028  }
  5029  
  5030  // SetChannelArn sets the ChannelArn field's value.
  5031  func (s *CreateChannelMembershipInput) SetChannelArn(v string) *CreateChannelMembershipInput {
  5032  	s.ChannelArn = &v
  5033  	return s
  5034  }
  5035  
  5036  // SetChimeBearer sets the ChimeBearer field's value.
  5037  func (s *CreateChannelMembershipInput) SetChimeBearer(v string) *CreateChannelMembershipInput {
  5038  	s.ChimeBearer = &v
  5039  	return s
  5040  }
  5041  
  5042  // SetMemberArn sets the MemberArn field's value.
  5043  func (s *CreateChannelMembershipInput) SetMemberArn(v string) *CreateChannelMembershipInput {
  5044  	s.MemberArn = &v
  5045  	return s
  5046  }
  5047  
  5048  // SetType sets the Type field's value.
  5049  func (s *CreateChannelMembershipInput) SetType(v string) *CreateChannelMembershipInput {
  5050  	s.Type = &v
  5051  	return s
  5052  }
  5053  
  5054  type CreateChannelMembershipOutput struct {
  5055  	_ struct{} `type:"structure"`
  5056  
  5057  	// The ARN of the channel.
  5058  	ChannelArn *string `min:"5" type:"string"`
  5059  
  5060  	// The ARN and metadata of the member being added.
  5061  	Member *Identity `type:"structure"`
  5062  }
  5063  
  5064  // String returns the string representation.
  5065  //
  5066  // API parameter values that are decorated as "sensitive" in the API will not
  5067  // be included in the string output. The member name will be present, but the
  5068  // value will be replaced with "sensitive".
  5069  func (s CreateChannelMembershipOutput) String() string {
  5070  	return awsutil.Prettify(s)
  5071  }
  5072  
  5073  // GoString returns the string representation.
  5074  //
  5075  // API parameter values that are decorated as "sensitive" in the API will not
  5076  // be included in the string output. The member name will be present, but the
  5077  // value will be replaced with "sensitive".
  5078  func (s CreateChannelMembershipOutput) GoString() string {
  5079  	return s.String()
  5080  }
  5081  
  5082  // SetChannelArn sets the ChannelArn field's value.
  5083  func (s *CreateChannelMembershipOutput) SetChannelArn(v string) *CreateChannelMembershipOutput {
  5084  	s.ChannelArn = &v
  5085  	return s
  5086  }
  5087  
  5088  // SetMember sets the Member field's value.
  5089  func (s *CreateChannelMembershipOutput) SetMember(v *Identity) *CreateChannelMembershipOutput {
  5090  	s.Member = v
  5091  	return s
  5092  }
  5093  
  5094  type CreateChannelModeratorInput struct {
  5095  	_ struct{} `type:"structure"`
  5096  
  5097  	// The ARN of the channel.
  5098  	//
  5099  	// ChannelArn is a required field
  5100  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5101  
  5102  	// The ARN of the moderator.
  5103  	//
  5104  	// ChannelModeratorArn is a required field
  5105  	ChannelModeratorArn *string `min:"5" type:"string" required:"true"`
  5106  
  5107  	// The AppInstanceUserArn of the user that makes the API call.
  5108  	//
  5109  	// ChimeBearer is a required field
  5110  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5111  }
  5112  
  5113  // String returns the string representation.
  5114  //
  5115  // API parameter values that are decorated as "sensitive" in the API will not
  5116  // be included in the string output. The member name will be present, but the
  5117  // value will be replaced with "sensitive".
  5118  func (s CreateChannelModeratorInput) String() string {
  5119  	return awsutil.Prettify(s)
  5120  }
  5121  
  5122  // GoString returns the string representation.
  5123  //
  5124  // API parameter values that are decorated as "sensitive" in the API will not
  5125  // be included in the string output. The member name will be present, but the
  5126  // value will be replaced with "sensitive".
  5127  func (s CreateChannelModeratorInput) GoString() string {
  5128  	return s.String()
  5129  }
  5130  
  5131  // Validate inspects the fields of the type to determine if they are valid.
  5132  func (s *CreateChannelModeratorInput) Validate() error {
  5133  	invalidParams := request.ErrInvalidParams{Context: "CreateChannelModeratorInput"}
  5134  	if s.ChannelArn == nil {
  5135  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5136  	}
  5137  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5138  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5139  	}
  5140  	if s.ChannelModeratorArn == nil {
  5141  		invalidParams.Add(request.NewErrParamRequired("ChannelModeratorArn"))
  5142  	}
  5143  	if s.ChannelModeratorArn != nil && len(*s.ChannelModeratorArn) < 5 {
  5144  		invalidParams.Add(request.NewErrParamMinLen("ChannelModeratorArn", 5))
  5145  	}
  5146  	if s.ChimeBearer == nil {
  5147  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5148  	}
  5149  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5150  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5151  	}
  5152  
  5153  	if invalidParams.Len() > 0 {
  5154  		return invalidParams
  5155  	}
  5156  	return nil
  5157  }
  5158  
  5159  // SetChannelArn sets the ChannelArn field's value.
  5160  func (s *CreateChannelModeratorInput) SetChannelArn(v string) *CreateChannelModeratorInput {
  5161  	s.ChannelArn = &v
  5162  	return s
  5163  }
  5164  
  5165  // SetChannelModeratorArn sets the ChannelModeratorArn field's value.
  5166  func (s *CreateChannelModeratorInput) SetChannelModeratorArn(v string) *CreateChannelModeratorInput {
  5167  	s.ChannelModeratorArn = &v
  5168  	return s
  5169  }
  5170  
  5171  // SetChimeBearer sets the ChimeBearer field's value.
  5172  func (s *CreateChannelModeratorInput) SetChimeBearer(v string) *CreateChannelModeratorInput {
  5173  	s.ChimeBearer = &v
  5174  	return s
  5175  }
  5176  
  5177  type CreateChannelModeratorOutput struct {
  5178  	_ struct{} `type:"structure"`
  5179  
  5180  	// The ARN of the channel.
  5181  	ChannelArn *string `min:"5" type:"string"`
  5182  
  5183  	// The ARNs of the channel and the moderator.
  5184  	ChannelModerator *Identity `type:"structure"`
  5185  }
  5186  
  5187  // String returns the string representation.
  5188  //
  5189  // API parameter values that are decorated as "sensitive" in the API will not
  5190  // be included in the string output. The member name will be present, but the
  5191  // value will be replaced with "sensitive".
  5192  func (s CreateChannelModeratorOutput) String() string {
  5193  	return awsutil.Prettify(s)
  5194  }
  5195  
  5196  // GoString returns the string representation.
  5197  //
  5198  // API parameter values that are decorated as "sensitive" in the API will not
  5199  // be included in the string output. The member name will be present, but the
  5200  // value will be replaced with "sensitive".
  5201  func (s CreateChannelModeratorOutput) GoString() string {
  5202  	return s.String()
  5203  }
  5204  
  5205  // SetChannelArn sets the ChannelArn field's value.
  5206  func (s *CreateChannelModeratorOutput) SetChannelArn(v string) *CreateChannelModeratorOutput {
  5207  	s.ChannelArn = &v
  5208  	return s
  5209  }
  5210  
  5211  // SetChannelModerator sets the ChannelModerator field's value.
  5212  func (s *CreateChannelModeratorOutput) SetChannelModerator(v *Identity) *CreateChannelModeratorOutput {
  5213  	s.ChannelModerator = v
  5214  	return s
  5215  }
  5216  
  5217  type CreateChannelOutput struct {
  5218  	_ struct{} `type:"structure"`
  5219  
  5220  	// The ARN of the channel.
  5221  	ChannelArn *string `min:"5" type:"string"`
  5222  }
  5223  
  5224  // String returns the string representation.
  5225  //
  5226  // API parameter values that are decorated as "sensitive" in the API will not
  5227  // be included in the string output. The member name will be present, but the
  5228  // value will be replaced with "sensitive".
  5229  func (s CreateChannelOutput) String() string {
  5230  	return awsutil.Prettify(s)
  5231  }
  5232  
  5233  // GoString returns the string representation.
  5234  //
  5235  // API parameter values that are decorated as "sensitive" in the API will not
  5236  // be included in the string output. The member name will be present, but the
  5237  // value will be replaced with "sensitive".
  5238  func (s CreateChannelOutput) GoString() string {
  5239  	return s.String()
  5240  }
  5241  
  5242  // SetChannelArn sets the ChannelArn field's value.
  5243  func (s *CreateChannelOutput) SetChannelArn(v string) *CreateChannelOutput {
  5244  	s.ChannelArn = &v
  5245  	return s
  5246  }
  5247  
  5248  type DeleteChannelBanInput struct {
  5249  	_ struct{} `type:"structure" nopayload:"true"`
  5250  
  5251  	// The ARN of the channel from which the AppInstanceUser was banned.
  5252  	//
  5253  	// ChannelArn is a required field
  5254  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5255  
  5256  	// The AppInstanceUserArn of the user that makes the API call.
  5257  	//
  5258  	// ChimeBearer is a required field
  5259  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5260  
  5261  	// The ARN of the AppInstanceUser that you want to reinstate.
  5262  	//
  5263  	// MemberArn is a required field
  5264  	MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"`
  5265  }
  5266  
  5267  // String returns the string representation.
  5268  //
  5269  // API parameter values that are decorated as "sensitive" in the API will not
  5270  // be included in the string output. The member name will be present, but the
  5271  // value will be replaced with "sensitive".
  5272  func (s DeleteChannelBanInput) String() string {
  5273  	return awsutil.Prettify(s)
  5274  }
  5275  
  5276  // GoString returns the string representation.
  5277  //
  5278  // API parameter values that are decorated as "sensitive" in the API will not
  5279  // be included in the string output. The member name will be present, but the
  5280  // value will be replaced with "sensitive".
  5281  func (s DeleteChannelBanInput) GoString() string {
  5282  	return s.String()
  5283  }
  5284  
  5285  // Validate inspects the fields of the type to determine if they are valid.
  5286  func (s *DeleteChannelBanInput) Validate() error {
  5287  	invalidParams := request.ErrInvalidParams{Context: "DeleteChannelBanInput"}
  5288  	if s.ChannelArn == nil {
  5289  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5290  	}
  5291  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5292  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5293  	}
  5294  	if s.ChimeBearer == nil {
  5295  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5296  	}
  5297  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5298  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5299  	}
  5300  	if s.MemberArn == nil {
  5301  		invalidParams.Add(request.NewErrParamRequired("MemberArn"))
  5302  	}
  5303  	if s.MemberArn != nil && len(*s.MemberArn) < 5 {
  5304  		invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5))
  5305  	}
  5306  
  5307  	if invalidParams.Len() > 0 {
  5308  		return invalidParams
  5309  	}
  5310  	return nil
  5311  }
  5312  
  5313  // SetChannelArn sets the ChannelArn field's value.
  5314  func (s *DeleteChannelBanInput) SetChannelArn(v string) *DeleteChannelBanInput {
  5315  	s.ChannelArn = &v
  5316  	return s
  5317  }
  5318  
  5319  // SetChimeBearer sets the ChimeBearer field's value.
  5320  func (s *DeleteChannelBanInput) SetChimeBearer(v string) *DeleteChannelBanInput {
  5321  	s.ChimeBearer = &v
  5322  	return s
  5323  }
  5324  
  5325  // SetMemberArn sets the MemberArn field's value.
  5326  func (s *DeleteChannelBanInput) SetMemberArn(v string) *DeleteChannelBanInput {
  5327  	s.MemberArn = &v
  5328  	return s
  5329  }
  5330  
  5331  type DeleteChannelBanOutput struct {
  5332  	_ struct{} `type:"structure" nopayload:"true"`
  5333  }
  5334  
  5335  // String returns the string representation.
  5336  //
  5337  // API parameter values that are decorated as "sensitive" in the API will not
  5338  // be included in the string output. The member name will be present, but the
  5339  // value will be replaced with "sensitive".
  5340  func (s DeleteChannelBanOutput) String() string {
  5341  	return awsutil.Prettify(s)
  5342  }
  5343  
  5344  // GoString returns the string representation.
  5345  //
  5346  // API parameter values that are decorated as "sensitive" in the API will not
  5347  // be included in the string output. The member name will be present, but the
  5348  // value will be replaced with "sensitive".
  5349  func (s DeleteChannelBanOutput) GoString() string {
  5350  	return s.String()
  5351  }
  5352  
  5353  type DeleteChannelInput struct {
  5354  	_ struct{} `type:"structure" nopayload:"true"`
  5355  
  5356  	// The ARN of the channel being deleted.
  5357  	//
  5358  	// ChannelArn is a required field
  5359  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5360  
  5361  	// The AppInstanceUserArn of the user that makes the API call.
  5362  	//
  5363  	// ChimeBearer is a required field
  5364  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5365  }
  5366  
  5367  // String returns the string representation.
  5368  //
  5369  // API parameter values that are decorated as "sensitive" in the API will not
  5370  // be included in the string output. The member name will be present, but the
  5371  // value will be replaced with "sensitive".
  5372  func (s DeleteChannelInput) String() string {
  5373  	return awsutil.Prettify(s)
  5374  }
  5375  
  5376  // GoString returns the string representation.
  5377  //
  5378  // API parameter values that are decorated as "sensitive" in the API will not
  5379  // be included in the string output. The member name will be present, but the
  5380  // value will be replaced with "sensitive".
  5381  func (s DeleteChannelInput) GoString() string {
  5382  	return s.String()
  5383  }
  5384  
  5385  // Validate inspects the fields of the type to determine if they are valid.
  5386  func (s *DeleteChannelInput) Validate() error {
  5387  	invalidParams := request.ErrInvalidParams{Context: "DeleteChannelInput"}
  5388  	if s.ChannelArn == nil {
  5389  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5390  	}
  5391  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5392  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5393  	}
  5394  	if s.ChimeBearer == nil {
  5395  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5396  	}
  5397  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5398  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5399  	}
  5400  
  5401  	if invalidParams.Len() > 0 {
  5402  		return invalidParams
  5403  	}
  5404  	return nil
  5405  }
  5406  
  5407  // SetChannelArn sets the ChannelArn field's value.
  5408  func (s *DeleteChannelInput) SetChannelArn(v string) *DeleteChannelInput {
  5409  	s.ChannelArn = &v
  5410  	return s
  5411  }
  5412  
  5413  // SetChimeBearer sets the ChimeBearer field's value.
  5414  func (s *DeleteChannelInput) SetChimeBearer(v string) *DeleteChannelInput {
  5415  	s.ChimeBearer = &v
  5416  	return s
  5417  }
  5418  
  5419  type DeleteChannelMembershipInput struct {
  5420  	_ struct{} `type:"structure" nopayload:"true"`
  5421  
  5422  	// The ARN of the channel from which you want to remove the user.
  5423  	//
  5424  	// ChannelArn is a required field
  5425  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5426  
  5427  	// The AppInstanceUserArn of the user that makes the API call.
  5428  	//
  5429  	// ChimeBearer is a required field
  5430  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5431  
  5432  	// The ARN of the member that you're removing from the channel.
  5433  	//
  5434  	// MemberArn is a required field
  5435  	MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"`
  5436  }
  5437  
  5438  // String returns the string representation.
  5439  //
  5440  // API parameter values that are decorated as "sensitive" in the API will not
  5441  // be included in the string output. The member name will be present, but the
  5442  // value will be replaced with "sensitive".
  5443  func (s DeleteChannelMembershipInput) String() string {
  5444  	return awsutil.Prettify(s)
  5445  }
  5446  
  5447  // GoString returns the string representation.
  5448  //
  5449  // API parameter values that are decorated as "sensitive" in the API will not
  5450  // be included in the string output. The member name will be present, but the
  5451  // value will be replaced with "sensitive".
  5452  func (s DeleteChannelMembershipInput) GoString() string {
  5453  	return s.String()
  5454  }
  5455  
  5456  // Validate inspects the fields of the type to determine if they are valid.
  5457  func (s *DeleteChannelMembershipInput) Validate() error {
  5458  	invalidParams := request.ErrInvalidParams{Context: "DeleteChannelMembershipInput"}
  5459  	if s.ChannelArn == nil {
  5460  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5461  	}
  5462  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5463  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5464  	}
  5465  	if s.ChimeBearer == nil {
  5466  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5467  	}
  5468  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5469  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5470  	}
  5471  	if s.MemberArn == nil {
  5472  		invalidParams.Add(request.NewErrParamRequired("MemberArn"))
  5473  	}
  5474  	if s.MemberArn != nil && len(*s.MemberArn) < 5 {
  5475  		invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5))
  5476  	}
  5477  
  5478  	if invalidParams.Len() > 0 {
  5479  		return invalidParams
  5480  	}
  5481  	return nil
  5482  }
  5483  
  5484  // SetChannelArn sets the ChannelArn field's value.
  5485  func (s *DeleteChannelMembershipInput) SetChannelArn(v string) *DeleteChannelMembershipInput {
  5486  	s.ChannelArn = &v
  5487  	return s
  5488  }
  5489  
  5490  // SetChimeBearer sets the ChimeBearer field's value.
  5491  func (s *DeleteChannelMembershipInput) SetChimeBearer(v string) *DeleteChannelMembershipInput {
  5492  	s.ChimeBearer = &v
  5493  	return s
  5494  }
  5495  
  5496  // SetMemberArn sets the MemberArn field's value.
  5497  func (s *DeleteChannelMembershipInput) SetMemberArn(v string) *DeleteChannelMembershipInput {
  5498  	s.MemberArn = &v
  5499  	return s
  5500  }
  5501  
  5502  type DeleteChannelMembershipOutput struct {
  5503  	_ struct{} `type:"structure" nopayload:"true"`
  5504  }
  5505  
  5506  // String returns the string representation.
  5507  //
  5508  // API parameter values that are decorated as "sensitive" in the API will not
  5509  // be included in the string output. The member name will be present, but the
  5510  // value will be replaced with "sensitive".
  5511  func (s DeleteChannelMembershipOutput) String() string {
  5512  	return awsutil.Prettify(s)
  5513  }
  5514  
  5515  // GoString returns the string representation.
  5516  //
  5517  // API parameter values that are decorated as "sensitive" in the API will not
  5518  // be included in the string output. The member name will be present, but the
  5519  // value will be replaced with "sensitive".
  5520  func (s DeleteChannelMembershipOutput) GoString() string {
  5521  	return s.String()
  5522  }
  5523  
  5524  type DeleteChannelMessageInput struct {
  5525  	_ struct{} `type:"structure" nopayload:"true"`
  5526  
  5527  	// The ARN of the channel.
  5528  	//
  5529  	// ChannelArn is a required field
  5530  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5531  
  5532  	// The AppInstanceUserArn of the user that makes the API call.
  5533  	//
  5534  	// ChimeBearer is a required field
  5535  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5536  
  5537  	// The ID of the message being deleted.
  5538  	//
  5539  	// MessageId is a required field
  5540  	MessageId *string `location:"uri" locationName:"messageId" min:"1" type:"string" required:"true"`
  5541  }
  5542  
  5543  // String returns the string representation.
  5544  //
  5545  // API parameter values that are decorated as "sensitive" in the API will not
  5546  // be included in the string output. The member name will be present, but the
  5547  // value will be replaced with "sensitive".
  5548  func (s DeleteChannelMessageInput) String() string {
  5549  	return awsutil.Prettify(s)
  5550  }
  5551  
  5552  // GoString returns the string representation.
  5553  //
  5554  // API parameter values that are decorated as "sensitive" in the API will not
  5555  // be included in the string output. The member name will be present, but the
  5556  // value will be replaced with "sensitive".
  5557  func (s DeleteChannelMessageInput) GoString() string {
  5558  	return s.String()
  5559  }
  5560  
  5561  // Validate inspects the fields of the type to determine if they are valid.
  5562  func (s *DeleteChannelMessageInput) Validate() error {
  5563  	invalidParams := request.ErrInvalidParams{Context: "DeleteChannelMessageInput"}
  5564  	if s.ChannelArn == nil {
  5565  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5566  	}
  5567  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5568  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5569  	}
  5570  	if s.ChimeBearer == nil {
  5571  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5572  	}
  5573  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5574  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5575  	}
  5576  	if s.MessageId == nil {
  5577  		invalidParams.Add(request.NewErrParamRequired("MessageId"))
  5578  	}
  5579  	if s.MessageId != nil && len(*s.MessageId) < 1 {
  5580  		invalidParams.Add(request.NewErrParamMinLen("MessageId", 1))
  5581  	}
  5582  
  5583  	if invalidParams.Len() > 0 {
  5584  		return invalidParams
  5585  	}
  5586  	return nil
  5587  }
  5588  
  5589  // SetChannelArn sets the ChannelArn field's value.
  5590  func (s *DeleteChannelMessageInput) SetChannelArn(v string) *DeleteChannelMessageInput {
  5591  	s.ChannelArn = &v
  5592  	return s
  5593  }
  5594  
  5595  // SetChimeBearer sets the ChimeBearer field's value.
  5596  func (s *DeleteChannelMessageInput) SetChimeBearer(v string) *DeleteChannelMessageInput {
  5597  	s.ChimeBearer = &v
  5598  	return s
  5599  }
  5600  
  5601  // SetMessageId sets the MessageId field's value.
  5602  func (s *DeleteChannelMessageInput) SetMessageId(v string) *DeleteChannelMessageInput {
  5603  	s.MessageId = &v
  5604  	return s
  5605  }
  5606  
  5607  type DeleteChannelMessageOutput struct {
  5608  	_ struct{} `type:"structure" nopayload:"true"`
  5609  }
  5610  
  5611  // String returns the string representation.
  5612  //
  5613  // API parameter values that are decorated as "sensitive" in the API will not
  5614  // be included in the string output. The member name will be present, but the
  5615  // value will be replaced with "sensitive".
  5616  func (s DeleteChannelMessageOutput) String() string {
  5617  	return awsutil.Prettify(s)
  5618  }
  5619  
  5620  // GoString returns the string representation.
  5621  //
  5622  // API parameter values that are decorated as "sensitive" in the API will not
  5623  // be included in the string output. The member name will be present, but the
  5624  // value will be replaced with "sensitive".
  5625  func (s DeleteChannelMessageOutput) GoString() string {
  5626  	return s.String()
  5627  }
  5628  
  5629  type DeleteChannelModeratorInput struct {
  5630  	_ struct{} `type:"structure" nopayload:"true"`
  5631  
  5632  	// The ARN of the channel.
  5633  	//
  5634  	// ChannelArn is a required field
  5635  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5636  
  5637  	// The ARN of the moderator being deleted.
  5638  	//
  5639  	// ChannelModeratorArn is a required field
  5640  	ChannelModeratorArn *string `location:"uri" locationName:"channelModeratorArn" min:"5" type:"string" required:"true"`
  5641  
  5642  	// The AppInstanceUserArn of the user that makes the API call.
  5643  	//
  5644  	// ChimeBearer is a required field
  5645  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5646  }
  5647  
  5648  // String returns the string representation.
  5649  //
  5650  // API parameter values that are decorated as "sensitive" in the API will not
  5651  // be included in the string output. The member name will be present, but the
  5652  // value will be replaced with "sensitive".
  5653  func (s DeleteChannelModeratorInput) String() string {
  5654  	return awsutil.Prettify(s)
  5655  }
  5656  
  5657  // GoString returns the string representation.
  5658  //
  5659  // API parameter values that are decorated as "sensitive" in the API will not
  5660  // be included in the string output. The member name will be present, but the
  5661  // value will be replaced with "sensitive".
  5662  func (s DeleteChannelModeratorInput) GoString() string {
  5663  	return s.String()
  5664  }
  5665  
  5666  // Validate inspects the fields of the type to determine if they are valid.
  5667  func (s *DeleteChannelModeratorInput) Validate() error {
  5668  	invalidParams := request.ErrInvalidParams{Context: "DeleteChannelModeratorInput"}
  5669  	if s.ChannelArn == nil {
  5670  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5671  	}
  5672  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5673  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5674  	}
  5675  	if s.ChannelModeratorArn == nil {
  5676  		invalidParams.Add(request.NewErrParamRequired("ChannelModeratorArn"))
  5677  	}
  5678  	if s.ChannelModeratorArn != nil && len(*s.ChannelModeratorArn) < 5 {
  5679  		invalidParams.Add(request.NewErrParamMinLen("ChannelModeratorArn", 5))
  5680  	}
  5681  	if s.ChimeBearer == nil {
  5682  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5683  	}
  5684  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5685  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5686  	}
  5687  
  5688  	if invalidParams.Len() > 0 {
  5689  		return invalidParams
  5690  	}
  5691  	return nil
  5692  }
  5693  
  5694  // SetChannelArn sets the ChannelArn field's value.
  5695  func (s *DeleteChannelModeratorInput) SetChannelArn(v string) *DeleteChannelModeratorInput {
  5696  	s.ChannelArn = &v
  5697  	return s
  5698  }
  5699  
  5700  // SetChannelModeratorArn sets the ChannelModeratorArn field's value.
  5701  func (s *DeleteChannelModeratorInput) SetChannelModeratorArn(v string) *DeleteChannelModeratorInput {
  5702  	s.ChannelModeratorArn = &v
  5703  	return s
  5704  }
  5705  
  5706  // SetChimeBearer sets the ChimeBearer field's value.
  5707  func (s *DeleteChannelModeratorInput) SetChimeBearer(v string) *DeleteChannelModeratorInput {
  5708  	s.ChimeBearer = &v
  5709  	return s
  5710  }
  5711  
  5712  type DeleteChannelModeratorOutput struct {
  5713  	_ struct{} `type:"structure" nopayload:"true"`
  5714  }
  5715  
  5716  // String returns the string representation.
  5717  //
  5718  // API parameter values that are decorated as "sensitive" in the API will not
  5719  // be included in the string output. The member name will be present, but the
  5720  // value will be replaced with "sensitive".
  5721  func (s DeleteChannelModeratorOutput) String() string {
  5722  	return awsutil.Prettify(s)
  5723  }
  5724  
  5725  // GoString returns the string representation.
  5726  //
  5727  // API parameter values that are decorated as "sensitive" in the API will not
  5728  // be included in the string output. The member name will be present, but the
  5729  // value will be replaced with "sensitive".
  5730  func (s DeleteChannelModeratorOutput) GoString() string {
  5731  	return s.String()
  5732  }
  5733  
  5734  type DeleteChannelOutput struct {
  5735  	_ struct{} `type:"structure" nopayload:"true"`
  5736  }
  5737  
  5738  // String returns the string representation.
  5739  //
  5740  // API parameter values that are decorated as "sensitive" in the API will not
  5741  // be included in the string output. The member name will be present, but the
  5742  // value will be replaced with "sensitive".
  5743  func (s DeleteChannelOutput) String() string {
  5744  	return awsutil.Prettify(s)
  5745  }
  5746  
  5747  // GoString returns the string representation.
  5748  //
  5749  // API parameter values that are decorated as "sensitive" in the API will not
  5750  // be included in the string output. The member name will be present, but the
  5751  // value will be replaced with "sensitive".
  5752  func (s DeleteChannelOutput) GoString() string {
  5753  	return s.String()
  5754  }
  5755  
  5756  type DescribeChannelBanInput struct {
  5757  	_ struct{} `type:"structure" nopayload:"true"`
  5758  
  5759  	// The ARN of the channel from which the user is banned.
  5760  	//
  5761  	// ChannelArn is a required field
  5762  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5763  
  5764  	// The AppInstanceUserArn of the user that makes the API call.
  5765  	//
  5766  	// ChimeBearer is a required field
  5767  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5768  
  5769  	// The ARN of the member being banned.
  5770  	//
  5771  	// MemberArn is a required field
  5772  	MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"`
  5773  }
  5774  
  5775  // String returns the string representation.
  5776  //
  5777  // API parameter values that are decorated as "sensitive" in the API will not
  5778  // be included in the string output. The member name will be present, but the
  5779  // value will be replaced with "sensitive".
  5780  func (s DescribeChannelBanInput) String() string {
  5781  	return awsutil.Prettify(s)
  5782  }
  5783  
  5784  // GoString returns the string representation.
  5785  //
  5786  // API parameter values that are decorated as "sensitive" in the API will not
  5787  // be included in the string output. The member name will be present, but the
  5788  // value will be replaced with "sensitive".
  5789  func (s DescribeChannelBanInput) GoString() string {
  5790  	return s.String()
  5791  }
  5792  
  5793  // Validate inspects the fields of the type to determine if they are valid.
  5794  func (s *DescribeChannelBanInput) Validate() error {
  5795  	invalidParams := request.ErrInvalidParams{Context: "DescribeChannelBanInput"}
  5796  	if s.ChannelArn == nil {
  5797  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5798  	}
  5799  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5800  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5801  	}
  5802  	if s.ChimeBearer == nil {
  5803  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5804  	}
  5805  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5806  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5807  	}
  5808  	if s.MemberArn == nil {
  5809  		invalidParams.Add(request.NewErrParamRequired("MemberArn"))
  5810  	}
  5811  	if s.MemberArn != nil && len(*s.MemberArn) < 5 {
  5812  		invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5))
  5813  	}
  5814  
  5815  	if invalidParams.Len() > 0 {
  5816  		return invalidParams
  5817  	}
  5818  	return nil
  5819  }
  5820  
  5821  // SetChannelArn sets the ChannelArn field's value.
  5822  func (s *DescribeChannelBanInput) SetChannelArn(v string) *DescribeChannelBanInput {
  5823  	s.ChannelArn = &v
  5824  	return s
  5825  }
  5826  
  5827  // SetChimeBearer sets the ChimeBearer field's value.
  5828  func (s *DescribeChannelBanInput) SetChimeBearer(v string) *DescribeChannelBanInput {
  5829  	s.ChimeBearer = &v
  5830  	return s
  5831  }
  5832  
  5833  // SetMemberArn sets the MemberArn field's value.
  5834  func (s *DescribeChannelBanInput) SetMemberArn(v string) *DescribeChannelBanInput {
  5835  	s.MemberArn = &v
  5836  	return s
  5837  }
  5838  
  5839  type DescribeChannelBanOutput struct {
  5840  	_ struct{} `type:"structure"`
  5841  
  5842  	// The details of the ban.
  5843  	ChannelBan *ChannelBan `type:"structure"`
  5844  }
  5845  
  5846  // String returns the string representation.
  5847  //
  5848  // API parameter values that are decorated as "sensitive" in the API will not
  5849  // be included in the string output. The member name will be present, but the
  5850  // value will be replaced with "sensitive".
  5851  func (s DescribeChannelBanOutput) String() string {
  5852  	return awsutil.Prettify(s)
  5853  }
  5854  
  5855  // GoString returns the string representation.
  5856  //
  5857  // API parameter values that are decorated as "sensitive" in the API will not
  5858  // be included in the string output. The member name will be present, but the
  5859  // value will be replaced with "sensitive".
  5860  func (s DescribeChannelBanOutput) GoString() string {
  5861  	return s.String()
  5862  }
  5863  
  5864  // SetChannelBan sets the ChannelBan field's value.
  5865  func (s *DescribeChannelBanOutput) SetChannelBan(v *ChannelBan) *DescribeChannelBanOutput {
  5866  	s.ChannelBan = v
  5867  	return s
  5868  }
  5869  
  5870  type DescribeChannelInput struct {
  5871  	_ struct{} `type:"structure" nopayload:"true"`
  5872  
  5873  	// The ARN of the channel.
  5874  	//
  5875  	// ChannelArn is a required field
  5876  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5877  
  5878  	// The AppInstanceUserArn of the user that makes the API call.
  5879  	//
  5880  	// ChimeBearer is a required field
  5881  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5882  }
  5883  
  5884  // String returns the string representation.
  5885  //
  5886  // API parameter values that are decorated as "sensitive" in the API will not
  5887  // be included in the string output. The member name will be present, but the
  5888  // value will be replaced with "sensitive".
  5889  func (s DescribeChannelInput) String() string {
  5890  	return awsutil.Prettify(s)
  5891  }
  5892  
  5893  // GoString returns the string representation.
  5894  //
  5895  // API parameter values that are decorated as "sensitive" in the API will not
  5896  // be included in the string output. The member name will be present, but the
  5897  // value will be replaced with "sensitive".
  5898  func (s DescribeChannelInput) GoString() string {
  5899  	return s.String()
  5900  }
  5901  
  5902  // Validate inspects the fields of the type to determine if they are valid.
  5903  func (s *DescribeChannelInput) Validate() error {
  5904  	invalidParams := request.ErrInvalidParams{Context: "DescribeChannelInput"}
  5905  	if s.ChannelArn == nil {
  5906  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5907  	}
  5908  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5909  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5910  	}
  5911  	if s.ChimeBearer == nil {
  5912  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5913  	}
  5914  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5915  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5916  	}
  5917  
  5918  	if invalidParams.Len() > 0 {
  5919  		return invalidParams
  5920  	}
  5921  	return nil
  5922  }
  5923  
  5924  // SetChannelArn sets the ChannelArn field's value.
  5925  func (s *DescribeChannelInput) SetChannelArn(v string) *DescribeChannelInput {
  5926  	s.ChannelArn = &v
  5927  	return s
  5928  }
  5929  
  5930  // SetChimeBearer sets the ChimeBearer field's value.
  5931  func (s *DescribeChannelInput) SetChimeBearer(v string) *DescribeChannelInput {
  5932  	s.ChimeBearer = &v
  5933  	return s
  5934  }
  5935  
  5936  type DescribeChannelMembershipForAppInstanceUserInput struct {
  5937  	_ struct{} `type:"structure" nopayload:"true"`
  5938  
  5939  	// The ARN of the user in a channel.
  5940  	//
  5941  	// AppInstanceUserArn is a required field
  5942  	AppInstanceUserArn *string `location:"querystring" locationName:"app-instance-user-arn" min:"5" type:"string" required:"true"`
  5943  
  5944  	// The ARN of the channel to which the user belongs.
  5945  	//
  5946  	// ChannelArn is a required field
  5947  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  5948  
  5949  	// The AppInstanceUserArn of the user that makes the API call.
  5950  	//
  5951  	// ChimeBearer is a required field
  5952  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  5953  }
  5954  
  5955  // String returns the string representation.
  5956  //
  5957  // API parameter values that are decorated as "sensitive" in the API will not
  5958  // be included in the string output. The member name will be present, but the
  5959  // value will be replaced with "sensitive".
  5960  func (s DescribeChannelMembershipForAppInstanceUserInput) String() string {
  5961  	return awsutil.Prettify(s)
  5962  }
  5963  
  5964  // GoString returns the string representation.
  5965  //
  5966  // API parameter values that are decorated as "sensitive" in the API will not
  5967  // be included in the string output. The member name will be present, but the
  5968  // value will be replaced with "sensitive".
  5969  func (s DescribeChannelMembershipForAppInstanceUserInput) GoString() string {
  5970  	return s.String()
  5971  }
  5972  
  5973  // Validate inspects the fields of the type to determine if they are valid.
  5974  func (s *DescribeChannelMembershipForAppInstanceUserInput) Validate() error {
  5975  	invalidParams := request.ErrInvalidParams{Context: "DescribeChannelMembershipForAppInstanceUserInput"}
  5976  	if s.AppInstanceUserArn == nil {
  5977  		invalidParams.Add(request.NewErrParamRequired("AppInstanceUserArn"))
  5978  	}
  5979  	if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 5 {
  5980  		invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 5))
  5981  	}
  5982  	if s.ChannelArn == nil {
  5983  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  5984  	}
  5985  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  5986  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  5987  	}
  5988  	if s.ChimeBearer == nil {
  5989  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  5990  	}
  5991  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  5992  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  5993  	}
  5994  
  5995  	if invalidParams.Len() > 0 {
  5996  		return invalidParams
  5997  	}
  5998  	return nil
  5999  }
  6000  
  6001  // SetAppInstanceUserArn sets the AppInstanceUserArn field's value.
  6002  func (s *DescribeChannelMembershipForAppInstanceUserInput) SetAppInstanceUserArn(v string) *DescribeChannelMembershipForAppInstanceUserInput {
  6003  	s.AppInstanceUserArn = &v
  6004  	return s
  6005  }
  6006  
  6007  // SetChannelArn sets the ChannelArn field's value.
  6008  func (s *DescribeChannelMembershipForAppInstanceUserInput) SetChannelArn(v string) *DescribeChannelMembershipForAppInstanceUserInput {
  6009  	s.ChannelArn = &v
  6010  	return s
  6011  }
  6012  
  6013  // SetChimeBearer sets the ChimeBearer field's value.
  6014  func (s *DescribeChannelMembershipForAppInstanceUserInput) SetChimeBearer(v string) *DescribeChannelMembershipForAppInstanceUserInput {
  6015  	s.ChimeBearer = &v
  6016  	return s
  6017  }
  6018  
  6019  type DescribeChannelMembershipForAppInstanceUserOutput struct {
  6020  	_ struct{} `type:"structure"`
  6021  
  6022  	// The channel to which a user belongs.
  6023  	ChannelMembership *ChannelMembershipForAppInstanceUserSummary `type:"structure"`
  6024  }
  6025  
  6026  // String returns the string representation.
  6027  //
  6028  // API parameter values that are decorated as "sensitive" in the API will not
  6029  // be included in the string output. The member name will be present, but the
  6030  // value will be replaced with "sensitive".
  6031  func (s DescribeChannelMembershipForAppInstanceUserOutput) String() string {
  6032  	return awsutil.Prettify(s)
  6033  }
  6034  
  6035  // GoString returns the string representation.
  6036  //
  6037  // API parameter values that are decorated as "sensitive" in the API will not
  6038  // be included in the string output. The member name will be present, but the
  6039  // value will be replaced with "sensitive".
  6040  func (s DescribeChannelMembershipForAppInstanceUserOutput) GoString() string {
  6041  	return s.String()
  6042  }
  6043  
  6044  // SetChannelMembership sets the ChannelMembership field's value.
  6045  func (s *DescribeChannelMembershipForAppInstanceUserOutput) SetChannelMembership(v *ChannelMembershipForAppInstanceUserSummary) *DescribeChannelMembershipForAppInstanceUserOutput {
  6046  	s.ChannelMembership = v
  6047  	return s
  6048  }
  6049  
  6050  type DescribeChannelMembershipInput struct {
  6051  	_ struct{} `type:"structure" nopayload:"true"`
  6052  
  6053  	// The ARN of the channel.
  6054  	//
  6055  	// ChannelArn is a required field
  6056  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  6057  
  6058  	// The AppInstanceUserArn of the user that makes the API call.
  6059  	//
  6060  	// ChimeBearer is a required field
  6061  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  6062  
  6063  	// The ARN of the member.
  6064  	//
  6065  	// MemberArn is a required field
  6066  	MemberArn *string `location:"uri" locationName:"memberArn" min:"5" type:"string" required:"true"`
  6067  }
  6068  
  6069  // String returns the string representation.
  6070  //
  6071  // API parameter values that are decorated as "sensitive" in the API will not
  6072  // be included in the string output. The member name will be present, but the
  6073  // value will be replaced with "sensitive".
  6074  func (s DescribeChannelMembershipInput) String() string {
  6075  	return awsutil.Prettify(s)
  6076  }
  6077  
  6078  // GoString returns the string representation.
  6079  //
  6080  // API parameter values that are decorated as "sensitive" in the API will not
  6081  // be included in the string output. The member name will be present, but the
  6082  // value will be replaced with "sensitive".
  6083  func (s DescribeChannelMembershipInput) GoString() string {
  6084  	return s.String()
  6085  }
  6086  
  6087  // Validate inspects the fields of the type to determine if they are valid.
  6088  func (s *DescribeChannelMembershipInput) Validate() error {
  6089  	invalidParams := request.ErrInvalidParams{Context: "DescribeChannelMembershipInput"}
  6090  	if s.ChannelArn == nil {
  6091  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  6092  	}
  6093  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  6094  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  6095  	}
  6096  	if s.ChimeBearer == nil {
  6097  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  6098  	}
  6099  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  6100  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  6101  	}
  6102  	if s.MemberArn == nil {
  6103  		invalidParams.Add(request.NewErrParamRequired("MemberArn"))
  6104  	}
  6105  	if s.MemberArn != nil && len(*s.MemberArn) < 5 {
  6106  		invalidParams.Add(request.NewErrParamMinLen("MemberArn", 5))
  6107  	}
  6108  
  6109  	if invalidParams.Len() > 0 {
  6110  		return invalidParams
  6111  	}
  6112  	return nil
  6113  }
  6114  
  6115  // SetChannelArn sets the ChannelArn field's value.
  6116  func (s *DescribeChannelMembershipInput) SetChannelArn(v string) *DescribeChannelMembershipInput {
  6117  	s.ChannelArn = &v
  6118  	return s
  6119  }
  6120  
  6121  // SetChimeBearer sets the ChimeBearer field's value.
  6122  func (s *DescribeChannelMembershipInput) SetChimeBearer(v string) *DescribeChannelMembershipInput {
  6123  	s.ChimeBearer = &v
  6124  	return s
  6125  }
  6126  
  6127  // SetMemberArn sets the MemberArn field's value.
  6128  func (s *DescribeChannelMembershipInput) SetMemberArn(v string) *DescribeChannelMembershipInput {
  6129  	s.MemberArn = &v
  6130  	return s
  6131  }
  6132  
  6133  type DescribeChannelMembershipOutput struct {
  6134  	_ struct{} `type:"structure"`
  6135  
  6136  	// The details of the membership.
  6137  	ChannelMembership *ChannelMembership `type:"structure"`
  6138  }
  6139  
  6140  // String returns the string representation.
  6141  //
  6142  // API parameter values that are decorated as "sensitive" in the API will not
  6143  // be included in the string output. The member name will be present, but the
  6144  // value will be replaced with "sensitive".
  6145  func (s DescribeChannelMembershipOutput) String() string {
  6146  	return awsutil.Prettify(s)
  6147  }
  6148  
  6149  // GoString returns the string representation.
  6150  //
  6151  // API parameter values that are decorated as "sensitive" in the API will not
  6152  // be included in the string output. The member name will be present, but the
  6153  // value will be replaced with "sensitive".
  6154  func (s DescribeChannelMembershipOutput) GoString() string {
  6155  	return s.String()
  6156  }
  6157  
  6158  // SetChannelMembership sets the ChannelMembership field's value.
  6159  func (s *DescribeChannelMembershipOutput) SetChannelMembership(v *ChannelMembership) *DescribeChannelMembershipOutput {
  6160  	s.ChannelMembership = v
  6161  	return s
  6162  }
  6163  
  6164  type DescribeChannelModeratedByAppInstanceUserInput struct {
  6165  	_ struct{} `type:"structure" nopayload:"true"`
  6166  
  6167  	// The ARN of the AppInstanceUser in the moderated channel.
  6168  	//
  6169  	// AppInstanceUserArn is a required field
  6170  	AppInstanceUserArn *string `location:"querystring" locationName:"app-instance-user-arn" min:"5" type:"string" required:"true"`
  6171  
  6172  	// The ARN of the moderated channel.
  6173  	//
  6174  	// ChannelArn is a required field
  6175  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  6176  
  6177  	// The AppInstanceUserArn of the user that makes the API call.
  6178  	//
  6179  	// ChimeBearer is a required field
  6180  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  6181  }
  6182  
  6183  // String returns the string representation.
  6184  //
  6185  // API parameter values that are decorated as "sensitive" in the API will not
  6186  // be included in the string output. The member name will be present, but the
  6187  // value will be replaced with "sensitive".
  6188  func (s DescribeChannelModeratedByAppInstanceUserInput) String() string {
  6189  	return awsutil.Prettify(s)
  6190  }
  6191  
  6192  // GoString returns the string representation.
  6193  //
  6194  // API parameter values that are decorated as "sensitive" in the API will not
  6195  // be included in the string output. The member name will be present, but the
  6196  // value will be replaced with "sensitive".
  6197  func (s DescribeChannelModeratedByAppInstanceUserInput) GoString() string {
  6198  	return s.String()
  6199  }
  6200  
  6201  // Validate inspects the fields of the type to determine if they are valid.
  6202  func (s *DescribeChannelModeratedByAppInstanceUserInput) Validate() error {
  6203  	invalidParams := request.ErrInvalidParams{Context: "DescribeChannelModeratedByAppInstanceUserInput"}
  6204  	if s.AppInstanceUserArn == nil {
  6205  		invalidParams.Add(request.NewErrParamRequired("AppInstanceUserArn"))
  6206  	}
  6207  	if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 5 {
  6208  		invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 5))
  6209  	}
  6210  	if s.ChannelArn == nil {
  6211  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  6212  	}
  6213  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  6214  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  6215  	}
  6216  	if s.ChimeBearer == nil {
  6217  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  6218  	}
  6219  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  6220  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  6221  	}
  6222  
  6223  	if invalidParams.Len() > 0 {
  6224  		return invalidParams
  6225  	}
  6226  	return nil
  6227  }
  6228  
  6229  // SetAppInstanceUserArn sets the AppInstanceUserArn field's value.
  6230  func (s *DescribeChannelModeratedByAppInstanceUserInput) SetAppInstanceUserArn(v string) *DescribeChannelModeratedByAppInstanceUserInput {
  6231  	s.AppInstanceUserArn = &v
  6232  	return s
  6233  }
  6234  
  6235  // SetChannelArn sets the ChannelArn field's value.
  6236  func (s *DescribeChannelModeratedByAppInstanceUserInput) SetChannelArn(v string) *DescribeChannelModeratedByAppInstanceUserInput {
  6237  	s.ChannelArn = &v
  6238  	return s
  6239  }
  6240  
  6241  // SetChimeBearer sets the ChimeBearer field's value.
  6242  func (s *DescribeChannelModeratedByAppInstanceUserInput) SetChimeBearer(v string) *DescribeChannelModeratedByAppInstanceUserInput {
  6243  	s.ChimeBearer = &v
  6244  	return s
  6245  }
  6246  
  6247  type DescribeChannelModeratedByAppInstanceUserOutput struct {
  6248  	_ struct{} `type:"structure"`
  6249  
  6250  	// The moderated channel.
  6251  	Channel *ChannelModeratedByAppInstanceUserSummary `type:"structure"`
  6252  }
  6253  
  6254  // String returns the string representation.
  6255  //
  6256  // API parameter values that are decorated as "sensitive" in the API will not
  6257  // be included in the string output. The member name will be present, but the
  6258  // value will be replaced with "sensitive".
  6259  func (s DescribeChannelModeratedByAppInstanceUserOutput) String() string {
  6260  	return awsutil.Prettify(s)
  6261  }
  6262  
  6263  // GoString returns the string representation.
  6264  //
  6265  // API parameter values that are decorated as "sensitive" in the API will not
  6266  // be included in the string output. The member name will be present, but the
  6267  // value will be replaced with "sensitive".
  6268  func (s DescribeChannelModeratedByAppInstanceUserOutput) GoString() string {
  6269  	return s.String()
  6270  }
  6271  
  6272  // SetChannel sets the Channel field's value.
  6273  func (s *DescribeChannelModeratedByAppInstanceUserOutput) SetChannel(v *ChannelModeratedByAppInstanceUserSummary) *DescribeChannelModeratedByAppInstanceUserOutput {
  6274  	s.Channel = v
  6275  	return s
  6276  }
  6277  
  6278  type DescribeChannelModeratorInput struct {
  6279  	_ struct{} `type:"structure" nopayload:"true"`
  6280  
  6281  	// The ARN of the channel.
  6282  	//
  6283  	// ChannelArn is a required field
  6284  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  6285  
  6286  	// The ARN of the channel moderator.
  6287  	//
  6288  	// ChannelModeratorArn is a required field
  6289  	ChannelModeratorArn *string `location:"uri" locationName:"channelModeratorArn" min:"5" type:"string" required:"true"`
  6290  
  6291  	// The AppInstanceUserArn of the user that makes the API call.
  6292  	//
  6293  	// ChimeBearer is a required field
  6294  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  6295  }
  6296  
  6297  // String returns the string representation.
  6298  //
  6299  // API parameter values that are decorated as "sensitive" in the API will not
  6300  // be included in the string output. The member name will be present, but the
  6301  // value will be replaced with "sensitive".
  6302  func (s DescribeChannelModeratorInput) String() string {
  6303  	return awsutil.Prettify(s)
  6304  }
  6305  
  6306  // GoString returns the string representation.
  6307  //
  6308  // API parameter values that are decorated as "sensitive" in the API will not
  6309  // be included in the string output. The member name will be present, but the
  6310  // value will be replaced with "sensitive".
  6311  func (s DescribeChannelModeratorInput) GoString() string {
  6312  	return s.String()
  6313  }
  6314  
  6315  // Validate inspects the fields of the type to determine if they are valid.
  6316  func (s *DescribeChannelModeratorInput) Validate() error {
  6317  	invalidParams := request.ErrInvalidParams{Context: "DescribeChannelModeratorInput"}
  6318  	if s.ChannelArn == nil {
  6319  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  6320  	}
  6321  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  6322  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  6323  	}
  6324  	if s.ChannelModeratorArn == nil {
  6325  		invalidParams.Add(request.NewErrParamRequired("ChannelModeratorArn"))
  6326  	}
  6327  	if s.ChannelModeratorArn != nil && len(*s.ChannelModeratorArn) < 5 {
  6328  		invalidParams.Add(request.NewErrParamMinLen("ChannelModeratorArn", 5))
  6329  	}
  6330  	if s.ChimeBearer == nil {
  6331  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  6332  	}
  6333  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  6334  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  6335  	}
  6336  
  6337  	if invalidParams.Len() > 0 {
  6338  		return invalidParams
  6339  	}
  6340  	return nil
  6341  }
  6342  
  6343  // SetChannelArn sets the ChannelArn field's value.
  6344  func (s *DescribeChannelModeratorInput) SetChannelArn(v string) *DescribeChannelModeratorInput {
  6345  	s.ChannelArn = &v
  6346  	return s
  6347  }
  6348  
  6349  // SetChannelModeratorArn sets the ChannelModeratorArn field's value.
  6350  func (s *DescribeChannelModeratorInput) SetChannelModeratorArn(v string) *DescribeChannelModeratorInput {
  6351  	s.ChannelModeratorArn = &v
  6352  	return s
  6353  }
  6354  
  6355  // SetChimeBearer sets the ChimeBearer field's value.
  6356  func (s *DescribeChannelModeratorInput) SetChimeBearer(v string) *DescribeChannelModeratorInput {
  6357  	s.ChimeBearer = &v
  6358  	return s
  6359  }
  6360  
  6361  type DescribeChannelModeratorOutput struct {
  6362  	_ struct{} `type:"structure"`
  6363  
  6364  	// The details of the channel moderator.
  6365  	ChannelModerator *ChannelModerator `type:"structure"`
  6366  }
  6367  
  6368  // String returns the string representation.
  6369  //
  6370  // API parameter values that are decorated as "sensitive" in the API will not
  6371  // be included in the string output. The member name will be present, but the
  6372  // value will be replaced with "sensitive".
  6373  func (s DescribeChannelModeratorOutput) String() string {
  6374  	return awsutil.Prettify(s)
  6375  }
  6376  
  6377  // GoString returns the string representation.
  6378  //
  6379  // API parameter values that are decorated as "sensitive" in the API will not
  6380  // be included in the string output. The member name will be present, but the
  6381  // value will be replaced with "sensitive".
  6382  func (s DescribeChannelModeratorOutput) GoString() string {
  6383  	return s.String()
  6384  }
  6385  
  6386  // SetChannelModerator sets the ChannelModerator field's value.
  6387  func (s *DescribeChannelModeratorOutput) SetChannelModerator(v *ChannelModerator) *DescribeChannelModeratorOutput {
  6388  	s.ChannelModerator = v
  6389  	return s
  6390  }
  6391  
  6392  type DescribeChannelOutput struct {
  6393  	_ struct{} `type:"structure"`
  6394  
  6395  	// The channel details.
  6396  	Channel *Channel `type:"structure"`
  6397  }
  6398  
  6399  // String returns the string representation.
  6400  //
  6401  // API parameter values that are decorated as "sensitive" in the API will not
  6402  // be included in the string output. The member name will be present, but the
  6403  // value will be replaced with "sensitive".
  6404  func (s DescribeChannelOutput) String() string {
  6405  	return awsutil.Prettify(s)
  6406  }
  6407  
  6408  // GoString returns the string representation.
  6409  //
  6410  // API parameter values that are decorated as "sensitive" in the API will not
  6411  // be included in the string output. The member name will be present, but the
  6412  // value will be replaced with "sensitive".
  6413  func (s DescribeChannelOutput) GoString() string {
  6414  	return s.String()
  6415  }
  6416  
  6417  // SetChannel sets the Channel field's value.
  6418  func (s *DescribeChannelOutput) SetChannel(v *Channel) *DescribeChannelOutput {
  6419  	s.Channel = v
  6420  	return s
  6421  }
  6422  
  6423  // The client is permanently forbidden from making the request.
  6424  type ForbiddenException struct {
  6425  	_            struct{}                  `type:"structure"`
  6426  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6427  
  6428  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  6429  
  6430  	Message_ *string `locationName:"Message" type:"string"`
  6431  }
  6432  
  6433  // String returns the string representation.
  6434  //
  6435  // API parameter values that are decorated as "sensitive" in the API will not
  6436  // be included in the string output. The member name will be present, but the
  6437  // value will be replaced with "sensitive".
  6438  func (s ForbiddenException) String() string {
  6439  	return awsutil.Prettify(s)
  6440  }
  6441  
  6442  // GoString returns the string representation.
  6443  //
  6444  // API parameter values that are decorated as "sensitive" in the API will not
  6445  // be included in the string output. The member name will be present, but the
  6446  // value will be replaced with "sensitive".
  6447  func (s ForbiddenException) GoString() string {
  6448  	return s.String()
  6449  }
  6450  
  6451  func newErrorForbiddenException(v protocol.ResponseMetadata) error {
  6452  	return &ForbiddenException{
  6453  		RespMetadata: v,
  6454  	}
  6455  }
  6456  
  6457  // Code returns the exception type name.
  6458  func (s *ForbiddenException) Code() string {
  6459  	return "ForbiddenException"
  6460  }
  6461  
  6462  // Message returns the exception's message.
  6463  func (s *ForbiddenException) Message() string {
  6464  	if s.Message_ != nil {
  6465  		return *s.Message_
  6466  	}
  6467  	return ""
  6468  }
  6469  
  6470  // OrigErr always returns nil, satisfies awserr.Error interface.
  6471  func (s *ForbiddenException) OrigErr() error {
  6472  	return nil
  6473  }
  6474  
  6475  func (s *ForbiddenException) Error() string {
  6476  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  6477  }
  6478  
  6479  // Status code returns the HTTP status code for the request's response error.
  6480  func (s *ForbiddenException) StatusCode() int {
  6481  	return s.RespMetadata.StatusCode
  6482  }
  6483  
  6484  // RequestID returns the service's response RequestID for request.
  6485  func (s *ForbiddenException) RequestID() string {
  6486  	return s.RespMetadata.RequestID
  6487  }
  6488  
  6489  type GetChannelMessageInput struct {
  6490  	_ struct{} `type:"structure" nopayload:"true"`
  6491  
  6492  	// The ARN of the channel.
  6493  	//
  6494  	// ChannelArn is a required field
  6495  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  6496  
  6497  	// The AppInstanceUserArn of the user that makes the API call.
  6498  	//
  6499  	// ChimeBearer is a required field
  6500  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  6501  
  6502  	// The ID of the message.
  6503  	//
  6504  	// MessageId is a required field
  6505  	MessageId *string `location:"uri" locationName:"messageId" min:"1" type:"string" required:"true"`
  6506  }
  6507  
  6508  // String returns the string representation.
  6509  //
  6510  // API parameter values that are decorated as "sensitive" in the API will not
  6511  // be included in the string output. The member name will be present, but the
  6512  // value will be replaced with "sensitive".
  6513  func (s GetChannelMessageInput) String() string {
  6514  	return awsutil.Prettify(s)
  6515  }
  6516  
  6517  // GoString returns the string representation.
  6518  //
  6519  // API parameter values that are decorated as "sensitive" in the API will not
  6520  // be included in the string output. The member name will be present, but the
  6521  // value will be replaced with "sensitive".
  6522  func (s GetChannelMessageInput) GoString() string {
  6523  	return s.String()
  6524  }
  6525  
  6526  // Validate inspects the fields of the type to determine if they are valid.
  6527  func (s *GetChannelMessageInput) Validate() error {
  6528  	invalidParams := request.ErrInvalidParams{Context: "GetChannelMessageInput"}
  6529  	if s.ChannelArn == nil {
  6530  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  6531  	}
  6532  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  6533  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  6534  	}
  6535  	if s.ChimeBearer == nil {
  6536  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  6537  	}
  6538  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  6539  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  6540  	}
  6541  	if s.MessageId == nil {
  6542  		invalidParams.Add(request.NewErrParamRequired("MessageId"))
  6543  	}
  6544  	if s.MessageId != nil && len(*s.MessageId) < 1 {
  6545  		invalidParams.Add(request.NewErrParamMinLen("MessageId", 1))
  6546  	}
  6547  
  6548  	if invalidParams.Len() > 0 {
  6549  		return invalidParams
  6550  	}
  6551  	return nil
  6552  }
  6553  
  6554  // SetChannelArn sets the ChannelArn field's value.
  6555  func (s *GetChannelMessageInput) SetChannelArn(v string) *GetChannelMessageInput {
  6556  	s.ChannelArn = &v
  6557  	return s
  6558  }
  6559  
  6560  // SetChimeBearer sets the ChimeBearer field's value.
  6561  func (s *GetChannelMessageInput) SetChimeBearer(v string) *GetChannelMessageInput {
  6562  	s.ChimeBearer = &v
  6563  	return s
  6564  }
  6565  
  6566  // SetMessageId sets the MessageId field's value.
  6567  func (s *GetChannelMessageInput) SetMessageId(v string) *GetChannelMessageInput {
  6568  	s.MessageId = &v
  6569  	return s
  6570  }
  6571  
  6572  type GetChannelMessageOutput struct {
  6573  	_ struct{} `type:"structure"`
  6574  
  6575  	// The details of and content in the message.
  6576  	ChannelMessage *ChannelMessage `type:"structure"`
  6577  }
  6578  
  6579  // String returns the string representation.
  6580  //
  6581  // API parameter values that are decorated as "sensitive" in the API will not
  6582  // be included in the string output. The member name will be present, but the
  6583  // value will be replaced with "sensitive".
  6584  func (s GetChannelMessageOutput) String() string {
  6585  	return awsutil.Prettify(s)
  6586  }
  6587  
  6588  // GoString returns the string representation.
  6589  //
  6590  // API parameter values that are decorated as "sensitive" in the API will not
  6591  // be included in the string output. The member name will be present, but the
  6592  // value will be replaced with "sensitive".
  6593  func (s GetChannelMessageOutput) GoString() string {
  6594  	return s.String()
  6595  }
  6596  
  6597  // SetChannelMessage sets the ChannelMessage field's value.
  6598  func (s *GetChannelMessageOutput) SetChannelMessage(v *ChannelMessage) *GetChannelMessageOutput {
  6599  	s.ChannelMessage = v
  6600  	return s
  6601  }
  6602  
  6603  type GetMessagingSessionEndpointInput struct {
  6604  	_ struct{} `type:"structure" nopayload:"true"`
  6605  }
  6606  
  6607  // String returns the string representation.
  6608  //
  6609  // API parameter values that are decorated as "sensitive" in the API will not
  6610  // be included in the string output. The member name will be present, but the
  6611  // value will be replaced with "sensitive".
  6612  func (s GetMessagingSessionEndpointInput) String() string {
  6613  	return awsutil.Prettify(s)
  6614  }
  6615  
  6616  // GoString returns the string representation.
  6617  //
  6618  // API parameter values that are decorated as "sensitive" in the API will not
  6619  // be included in the string output. The member name will be present, but the
  6620  // value will be replaced with "sensitive".
  6621  func (s GetMessagingSessionEndpointInput) GoString() string {
  6622  	return s.String()
  6623  }
  6624  
  6625  type GetMessagingSessionEndpointOutput struct {
  6626  	_ struct{} `type:"structure"`
  6627  
  6628  	// The endpoint returned in the response.
  6629  	Endpoint *MessagingSessionEndpoint `type:"structure"`
  6630  }
  6631  
  6632  // String returns the string representation.
  6633  //
  6634  // API parameter values that are decorated as "sensitive" in the API will not
  6635  // be included in the string output. The member name will be present, but the
  6636  // value will be replaced with "sensitive".
  6637  func (s GetMessagingSessionEndpointOutput) String() string {
  6638  	return awsutil.Prettify(s)
  6639  }
  6640  
  6641  // GoString returns the string representation.
  6642  //
  6643  // API parameter values that are decorated as "sensitive" in the API will not
  6644  // be included in the string output. The member name will be present, but the
  6645  // value will be replaced with "sensitive".
  6646  func (s GetMessagingSessionEndpointOutput) GoString() string {
  6647  	return s.String()
  6648  }
  6649  
  6650  // SetEndpoint sets the Endpoint field's value.
  6651  func (s *GetMessagingSessionEndpointOutput) SetEndpoint(v *MessagingSessionEndpoint) *GetMessagingSessionEndpointOutput {
  6652  	s.Endpoint = v
  6653  	return s
  6654  }
  6655  
  6656  // The details of a user.
  6657  type Identity struct {
  6658  	_ struct{} `type:"structure"`
  6659  
  6660  	// The ARN in an Identity.
  6661  	Arn *string `min:"5" type:"string"`
  6662  
  6663  	// The name in an Identity.
  6664  	//
  6665  	// Name is a sensitive parameter and its value will be
  6666  	// replaced with "sensitive" in string returned by Identity's
  6667  	// String and GoString methods.
  6668  	Name *string `type:"string" sensitive:"true"`
  6669  }
  6670  
  6671  // String returns the string representation.
  6672  //
  6673  // API parameter values that are decorated as "sensitive" in the API will not
  6674  // be included in the string output. The member name will be present, but the
  6675  // value will be replaced with "sensitive".
  6676  func (s Identity) String() string {
  6677  	return awsutil.Prettify(s)
  6678  }
  6679  
  6680  // GoString returns the string representation.
  6681  //
  6682  // API parameter values that are decorated as "sensitive" in the API will not
  6683  // be included in the string output. The member name will be present, but the
  6684  // value will be replaced with "sensitive".
  6685  func (s Identity) GoString() string {
  6686  	return s.String()
  6687  }
  6688  
  6689  // SetArn sets the Arn field's value.
  6690  func (s *Identity) SetArn(v string) *Identity {
  6691  	s.Arn = &v
  6692  	return s
  6693  }
  6694  
  6695  // SetName sets the Name field's value.
  6696  func (s *Identity) SetName(v string) *Identity {
  6697  	s.Name = &v
  6698  	return s
  6699  }
  6700  
  6701  type ListChannelBansInput struct {
  6702  	_ struct{} `type:"structure" nopayload:"true"`
  6703  
  6704  	// The ARN of the channel.
  6705  	//
  6706  	// ChannelArn is a required field
  6707  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  6708  
  6709  	// The AppInstanceUserArn of the user that makes the API call.
  6710  	//
  6711  	// ChimeBearer is a required field
  6712  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  6713  
  6714  	// The maximum number of bans that you want returned.
  6715  	MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"`
  6716  
  6717  	// The token passed by previous API calls until all requested bans are returned.
  6718  	//
  6719  	// NextToken is a sensitive parameter and its value will be
  6720  	// replaced with "sensitive" in string returned by ListChannelBansInput's
  6721  	// String and GoString methods.
  6722  	NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"`
  6723  }
  6724  
  6725  // String returns the string representation.
  6726  //
  6727  // API parameter values that are decorated as "sensitive" in the API will not
  6728  // be included in the string output. The member name will be present, but the
  6729  // value will be replaced with "sensitive".
  6730  func (s ListChannelBansInput) String() string {
  6731  	return awsutil.Prettify(s)
  6732  }
  6733  
  6734  // GoString returns the string representation.
  6735  //
  6736  // API parameter values that are decorated as "sensitive" in the API will not
  6737  // be included in the string output. The member name will be present, but the
  6738  // value will be replaced with "sensitive".
  6739  func (s ListChannelBansInput) GoString() string {
  6740  	return s.String()
  6741  }
  6742  
  6743  // Validate inspects the fields of the type to determine if they are valid.
  6744  func (s *ListChannelBansInput) Validate() error {
  6745  	invalidParams := request.ErrInvalidParams{Context: "ListChannelBansInput"}
  6746  	if s.ChannelArn == nil {
  6747  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  6748  	}
  6749  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  6750  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  6751  	}
  6752  	if s.ChimeBearer == nil {
  6753  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  6754  	}
  6755  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  6756  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  6757  	}
  6758  	if s.MaxResults != nil && *s.MaxResults < 1 {
  6759  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  6760  	}
  6761  
  6762  	if invalidParams.Len() > 0 {
  6763  		return invalidParams
  6764  	}
  6765  	return nil
  6766  }
  6767  
  6768  // SetChannelArn sets the ChannelArn field's value.
  6769  func (s *ListChannelBansInput) SetChannelArn(v string) *ListChannelBansInput {
  6770  	s.ChannelArn = &v
  6771  	return s
  6772  }
  6773  
  6774  // SetChimeBearer sets the ChimeBearer field's value.
  6775  func (s *ListChannelBansInput) SetChimeBearer(v string) *ListChannelBansInput {
  6776  	s.ChimeBearer = &v
  6777  	return s
  6778  }
  6779  
  6780  // SetMaxResults sets the MaxResults field's value.
  6781  func (s *ListChannelBansInput) SetMaxResults(v int64) *ListChannelBansInput {
  6782  	s.MaxResults = &v
  6783  	return s
  6784  }
  6785  
  6786  // SetNextToken sets the NextToken field's value.
  6787  func (s *ListChannelBansInput) SetNextToken(v string) *ListChannelBansInput {
  6788  	s.NextToken = &v
  6789  	return s
  6790  }
  6791  
  6792  type ListChannelBansOutput struct {
  6793  	_ struct{} `type:"structure"`
  6794  
  6795  	// The ARN of the channel.
  6796  	ChannelArn *string `min:"5" type:"string"`
  6797  
  6798  	// The information for each requested ban.
  6799  	ChannelBans []*ChannelBanSummary `type:"list"`
  6800  
  6801  	// The token passed by previous API calls until all requested bans are returned.
  6802  	//
  6803  	// NextToken is a sensitive parameter and its value will be
  6804  	// replaced with "sensitive" in string returned by ListChannelBansOutput's
  6805  	// String and GoString methods.
  6806  	NextToken *string `type:"string" sensitive:"true"`
  6807  }
  6808  
  6809  // String returns the string representation.
  6810  //
  6811  // API parameter values that are decorated as "sensitive" in the API will not
  6812  // be included in the string output. The member name will be present, but the
  6813  // value will be replaced with "sensitive".
  6814  func (s ListChannelBansOutput) String() string {
  6815  	return awsutil.Prettify(s)
  6816  }
  6817  
  6818  // GoString returns the string representation.
  6819  //
  6820  // API parameter values that are decorated as "sensitive" in the API will not
  6821  // be included in the string output. The member name will be present, but the
  6822  // value will be replaced with "sensitive".
  6823  func (s ListChannelBansOutput) GoString() string {
  6824  	return s.String()
  6825  }
  6826  
  6827  // SetChannelArn sets the ChannelArn field's value.
  6828  func (s *ListChannelBansOutput) SetChannelArn(v string) *ListChannelBansOutput {
  6829  	s.ChannelArn = &v
  6830  	return s
  6831  }
  6832  
  6833  // SetChannelBans sets the ChannelBans field's value.
  6834  func (s *ListChannelBansOutput) SetChannelBans(v []*ChannelBanSummary) *ListChannelBansOutput {
  6835  	s.ChannelBans = v
  6836  	return s
  6837  }
  6838  
  6839  // SetNextToken sets the NextToken field's value.
  6840  func (s *ListChannelBansOutput) SetNextToken(v string) *ListChannelBansOutput {
  6841  	s.NextToken = &v
  6842  	return s
  6843  }
  6844  
  6845  type ListChannelMembershipsForAppInstanceUserInput struct {
  6846  	_ struct{} `type:"structure" nopayload:"true"`
  6847  
  6848  	// The ARN of the AppInstanceUsers
  6849  	AppInstanceUserArn *string `location:"querystring" locationName:"app-instance-user-arn" min:"5" type:"string"`
  6850  
  6851  	// The AppInstanceUserArn of the user that makes the API call.
  6852  	//
  6853  	// ChimeBearer is a required field
  6854  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  6855  
  6856  	// The maximum number of users that you want returned.
  6857  	MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"`
  6858  
  6859  	// The token returned from previous API requests until the number of channel
  6860  	// memberships is reached.
  6861  	//
  6862  	// NextToken is a sensitive parameter and its value will be
  6863  	// replaced with "sensitive" in string returned by ListChannelMembershipsForAppInstanceUserInput's
  6864  	// String and GoString methods.
  6865  	NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"`
  6866  }
  6867  
  6868  // String returns the string representation.
  6869  //
  6870  // API parameter values that are decorated as "sensitive" in the API will not
  6871  // be included in the string output. The member name will be present, but the
  6872  // value will be replaced with "sensitive".
  6873  func (s ListChannelMembershipsForAppInstanceUserInput) String() string {
  6874  	return awsutil.Prettify(s)
  6875  }
  6876  
  6877  // GoString returns the string representation.
  6878  //
  6879  // API parameter values that are decorated as "sensitive" in the API will not
  6880  // be included in the string output. The member name will be present, but the
  6881  // value will be replaced with "sensitive".
  6882  func (s ListChannelMembershipsForAppInstanceUserInput) GoString() string {
  6883  	return s.String()
  6884  }
  6885  
  6886  // Validate inspects the fields of the type to determine if they are valid.
  6887  func (s *ListChannelMembershipsForAppInstanceUserInput) Validate() error {
  6888  	invalidParams := request.ErrInvalidParams{Context: "ListChannelMembershipsForAppInstanceUserInput"}
  6889  	if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 5 {
  6890  		invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 5))
  6891  	}
  6892  	if s.ChimeBearer == nil {
  6893  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  6894  	}
  6895  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  6896  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  6897  	}
  6898  	if s.MaxResults != nil && *s.MaxResults < 1 {
  6899  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  6900  	}
  6901  
  6902  	if invalidParams.Len() > 0 {
  6903  		return invalidParams
  6904  	}
  6905  	return nil
  6906  }
  6907  
  6908  // SetAppInstanceUserArn sets the AppInstanceUserArn field's value.
  6909  func (s *ListChannelMembershipsForAppInstanceUserInput) SetAppInstanceUserArn(v string) *ListChannelMembershipsForAppInstanceUserInput {
  6910  	s.AppInstanceUserArn = &v
  6911  	return s
  6912  }
  6913  
  6914  // SetChimeBearer sets the ChimeBearer field's value.
  6915  func (s *ListChannelMembershipsForAppInstanceUserInput) SetChimeBearer(v string) *ListChannelMembershipsForAppInstanceUserInput {
  6916  	s.ChimeBearer = &v
  6917  	return s
  6918  }
  6919  
  6920  // SetMaxResults sets the MaxResults field's value.
  6921  func (s *ListChannelMembershipsForAppInstanceUserInput) SetMaxResults(v int64) *ListChannelMembershipsForAppInstanceUserInput {
  6922  	s.MaxResults = &v
  6923  	return s
  6924  }
  6925  
  6926  // SetNextToken sets the NextToken field's value.
  6927  func (s *ListChannelMembershipsForAppInstanceUserInput) SetNextToken(v string) *ListChannelMembershipsForAppInstanceUserInput {
  6928  	s.NextToken = &v
  6929  	return s
  6930  }
  6931  
  6932  type ListChannelMembershipsForAppInstanceUserOutput struct {
  6933  	_ struct{} `type:"structure"`
  6934  
  6935  	// The token passed by previous API calls until all requested users are returned.
  6936  	ChannelMemberships []*ChannelMembershipForAppInstanceUserSummary `type:"list"`
  6937  
  6938  	// The token passed by previous API calls until all requested users are returned.
  6939  	//
  6940  	// NextToken is a sensitive parameter and its value will be
  6941  	// replaced with "sensitive" in string returned by ListChannelMembershipsForAppInstanceUserOutput's
  6942  	// String and GoString methods.
  6943  	NextToken *string `type:"string" sensitive:"true"`
  6944  }
  6945  
  6946  // String returns the string representation.
  6947  //
  6948  // API parameter values that are decorated as "sensitive" in the API will not
  6949  // be included in the string output. The member name will be present, but the
  6950  // value will be replaced with "sensitive".
  6951  func (s ListChannelMembershipsForAppInstanceUserOutput) String() string {
  6952  	return awsutil.Prettify(s)
  6953  }
  6954  
  6955  // GoString returns the string representation.
  6956  //
  6957  // API parameter values that are decorated as "sensitive" in the API will not
  6958  // be included in the string output. The member name will be present, but the
  6959  // value will be replaced with "sensitive".
  6960  func (s ListChannelMembershipsForAppInstanceUserOutput) GoString() string {
  6961  	return s.String()
  6962  }
  6963  
  6964  // SetChannelMemberships sets the ChannelMemberships field's value.
  6965  func (s *ListChannelMembershipsForAppInstanceUserOutput) SetChannelMemberships(v []*ChannelMembershipForAppInstanceUserSummary) *ListChannelMembershipsForAppInstanceUserOutput {
  6966  	s.ChannelMemberships = v
  6967  	return s
  6968  }
  6969  
  6970  // SetNextToken sets the NextToken field's value.
  6971  func (s *ListChannelMembershipsForAppInstanceUserOutput) SetNextToken(v string) *ListChannelMembershipsForAppInstanceUserOutput {
  6972  	s.NextToken = &v
  6973  	return s
  6974  }
  6975  
  6976  type ListChannelMembershipsInput struct {
  6977  	_ struct{} `type:"structure" nopayload:"true"`
  6978  
  6979  	// The maximum number of channel memberships that you want returned.
  6980  	//
  6981  	// ChannelArn is a required field
  6982  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  6983  
  6984  	// The AppInstanceUserArn of the user that makes the API call.
  6985  	//
  6986  	// ChimeBearer is a required field
  6987  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  6988  
  6989  	// The maximum number of channel memberships that you want returned.
  6990  	MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"`
  6991  
  6992  	// The token passed by previous API calls until all requested channel memberships
  6993  	// are returned.
  6994  	//
  6995  	// NextToken is a sensitive parameter and its value will be
  6996  	// replaced with "sensitive" in string returned by ListChannelMembershipsInput's
  6997  	// String and GoString methods.
  6998  	NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"`
  6999  
  7000  	// The membership type of a user, DEFAULT or HIDDEN. Default members are always
  7001  	// returned as part of ListChannelMemberships. Hidden members are only returned
  7002  	// if the type filter in ListChannelMemberships equals HIDDEN. Otherwise hidden
  7003  	// members are not returned.
  7004  	Type *string `location:"querystring" locationName:"type" type:"string" enum:"ChannelMembershipType"`
  7005  }
  7006  
  7007  // String returns the string representation.
  7008  //
  7009  // API parameter values that are decorated as "sensitive" in the API will not
  7010  // be included in the string output. The member name will be present, but the
  7011  // value will be replaced with "sensitive".
  7012  func (s ListChannelMembershipsInput) String() string {
  7013  	return awsutil.Prettify(s)
  7014  }
  7015  
  7016  // GoString returns the string representation.
  7017  //
  7018  // API parameter values that are decorated as "sensitive" in the API will not
  7019  // be included in the string output. The member name will be present, but the
  7020  // value will be replaced with "sensitive".
  7021  func (s ListChannelMembershipsInput) GoString() string {
  7022  	return s.String()
  7023  }
  7024  
  7025  // Validate inspects the fields of the type to determine if they are valid.
  7026  func (s *ListChannelMembershipsInput) Validate() error {
  7027  	invalidParams := request.ErrInvalidParams{Context: "ListChannelMembershipsInput"}
  7028  	if s.ChannelArn == nil {
  7029  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  7030  	}
  7031  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  7032  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  7033  	}
  7034  	if s.ChimeBearer == nil {
  7035  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  7036  	}
  7037  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  7038  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  7039  	}
  7040  	if s.MaxResults != nil && *s.MaxResults < 1 {
  7041  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  7042  	}
  7043  
  7044  	if invalidParams.Len() > 0 {
  7045  		return invalidParams
  7046  	}
  7047  	return nil
  7048  }
  7049  
  7050  // SetChannelArn sets the ChannelArn field's value.
  7051  func (s *ListChannelMembershipsInput) SetChannelArn(v string) *ListChannelMembershipsInput {
  7052  	s.ChannelArn = &v
  7053  	return s
  7054  }
  7055  
  7056  // SetChimeBearer sets the ChimeBearer field's value.
  7057  func (s *ListChannelMembershipsInput) SetChimeBearer(v string) *ListChannelMembershipsInput {
  7058  	s.ChimeBearer = &v
  7059  	return s
  7060  }
  7061  
  7062  // SetMaxResults sets the MaxResults field's value.
  7063  func (s *ListChannelMembershipsInput) SetMaxResults(v int64) *ListChannelMembershipsInput {
  7064  	s.MaxResults = &v
  7065  	return s
  7066  }
  7067  
  7068  // SetNextToken sets the NextToken field's value.
  7069  func (s *ListChannelMembershipsInput) SetNextToken(v string) *ListChannelMembershipsInput {
  7070  	s.NextToken = &v
  7071  	return s
  7072  }
  7073  
  7074  // SetType sets the Type field's value.
  7075  func (s *ListChannelMembershipsInput) SetType(v string) *ListChannelMembershipsInput {
  7076  	s.Type = &v
  7077  	return s
  7078  }
  7079  
  7080  type ListChannelMembershipsOutput struct {
  7081  	_ struct{} `type:"structure"`
  7082  
  7083  	// The ARN of the channel.
  7084  	ChannelArn *string `min:"5" type:"string"`
  7085  
  7086  	// The information for the requested channel memberships.
  7087  	ChannelMemberships []*ChannelMembershipSummary `type:"list"`
  7088  
  7089  	// The token passed by previous API calls until all requested channel memberships
  7090  	// are returned.
  7091  	//
  7092  	// NextToken is a sensitive parameter and its value will be
  7093  	// replaced with "sensitive" in string returned by ListChannelMembershipsOutput's
  7094  	// String and GoString methods.
  7095  	NextToken *string `type:"string" sensitive:"true"`
  7096  }
  7097  
  7098  // String returns the string representation.
  7099  //
  7100  // API parameter values that are decorated as "sensitive" in the API will not
  7101  // be included in the string output. The member name will be present, but the
  7102  // value will be replaced with "sensitive".
  7103  func (s ListChannelMembershipsOutput) String() string {
  7104  	return awsutil.Prettify(s)
  7105  }
  7106  
  7107  // GoString returns the string representation.
  7108  //
  7109  // API parameter values that are decorated as "sensitive" in the API will not
  7110  // be included in the string output. The member name will be present, but the
  7111  // value will be replaced with "sensitive".
  7112  func (s ListChannelMembershipsOutput) GoString() string {
  7113  	return s.String()
  7114  }
  7115  
  7116  // SetChannelArn sets the ChannelArn field's value.
  7117  func (s *ListChannelMembershipsOutput) SetChannelArn(v string) *ListChannelMembershipsOutput {
  7118  	s.ChannelArn = &v
  7119  	return s
  7120  }
  7121  
  7122  // SetChannelMemberships sets the ChannelMemberships field's value.
  7123  func (s *ListChannelMembershipsOutput) SetChannelMemberships(v []*ChannelMembershipSummary) *ListChannelMembershipsOutput {
  7124  	s.ChannelMemberships = v
  7125  	return s
  7126  }
  7127  
  7128  // SetNextToken sets the NextToken field's value.
  7129  func (s *ListChannelMembershipsOutput) SetNextToken(v string) *ListChannelMembershipsOutput {
  7130  	s.NextToken = &v
  7131  	return s
  7132  }
  7133  
  7134  type ListChannelMessagesInput struct {
  7135  	_ struct{} `type:"structure" nopayload:"true"`
  7136  
  7137  	// The ARN of the channel.
  7138  	//
  7139  	// ChannelArn is a required field
  7140  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  7141  
  7142  	// The AppInstanceUserArn of the user that makes the API call.
  7143  	//
  7144  	// ChimeBearer is a required field
  7145  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  7146  
  7147  	// The maximum number of messages that you want returned.
  7148  	MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"`
  7149  
  7150  	// The token passed by previous API calls until all requested messages are returned.
  7151  	//
  7152  	// NextToken is a sensitive parameter and its value will be
  7153  	// replaced with "sensitive" in string returned by ListChannelMessagesInput's
  7154  	// String and GoString methods.
  7155  	NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"`
  7156  
  7157  	// The final or ending time stamp for your requested messages.
  7158  	NotAfter *time.Time `location:"querystring" locationName:"not-after" type:"timestamp"`
  7159  
  7160  	// The initial or starting time stamp for your requested messages.
  7161  	NotBefore *time.Time `location:"querystring" locationName:"not-before" type:"timestamp"`
  7162  
  7163  	// The order in which you want messages sorted. Default is Descending, based
  7164  	// on time created.
  7165  	SortOrder *string `location:"querystring" locationName:"sort-order" type:"string" enum:"SortOrder"`
  7166  }
  7167  
  7168  // String returns the string representation.
  7169  //
  7170  // API parameter values that are decorated as "sensitive" in the API will not
  7171  // be included in the string output. The member name will be present, but the
  7172  // value will be replaced with "sensitive".
  7173  func (s ListChannelMessagesInput) String() string {
  7174  	return awsutil.Prettify(s)
  7175  }
  7176  
  7177  // GoString returns the string representation.
  7178  //
  7179  // API parameter values that are decorated as "sensitive" in the API will not
  7180  // be included in the string output. The member name will be present, but the
  7181  // value will be replaced with "sensitive".
  7182  func (s ListChannelMessagesInput) GoString() string {
  7183  	return s.String()
  7184  }
  7185  
  7186  // Validate inspects the fields of the type to determine if they are valid.
  7187  func (s *ListChannelMessagesInput) Validate() error {
  7188  	invalidParams := request.ErrInvalidParams{Context: "ListChannelMessagesInput"}
  7189  	if s.ChannelArn == nil {
  7190  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  7191  	}
  7192  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  7193  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  7194  	}
  7195  	if s.ChimeBearer == nil {
  7196  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  7197  	}
  7198  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  7199  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  7200  	}
  7201  	if s.MaxResults != nil && *s.MaxResults < 1 {
  7202  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  7203  	}
  7204  
  7205  	if invalidParams.Len() > 0 {
  7206  		return invalidParams
  7207  	}
  7208  	return nil
  7209  }
  7210  
  7211  // SetChannelArn sets the ChannelArn field's value.
  7212  func (s *ListChannelMessagesInput) SetChannelArn(v string) *ListChannelMessagesInput {
  7213  	s.ChannelArn = &v
  7214  	return s
  7215  }
  7216  
  7217  // SetChimeBearer sets the ChimeBearer field's value.
  7218  func (s *ListChannelMessagesInput) SetChimeBearer(v string) *ListChannelMessagesInput {
  7219  	s.ChimeBearer = &v
  7220  	return s
  7221  }
  7222  
  7223  // SetMaxResults sets the MaxResults field's value.
  7224  func (s *ListChannelMessagesInput) SetMaxResults(v int64) *ListChannelMessagesInput {
  7225  	s.MaxResults = &v
  7226  	return s
  7227  }
  7228  
  7229  // SetNextToken sets the NextToken field's value.
  7230  func (s *ListChannelMessagesInput) SetNextToken(v string) *ListChannelMessagesInput {
  7231  	s.NextToken = &v
  7232  	return s
  7233  }
  7234  
  7235  // SetNotAfter sets the NotAfter field's value.
  7236  func (s *ListChannelMessagesInput) SetNotAfter(v time.Time) *ListChannelMessagesInput {
  7237  	s.NotAfter = &v
  7238  	return s
  7239  }
  7240  
  7241  // SetNotBefore sets the NotBefore field's value.
  7242  func (s *ListChannelMessagesInput) SetNotBefore(v time.Time) *ListChannelMessagesInput {
  7243  	s.NotBefore = &v
  7244  	return s
  7245  }
  7246  
  7247  // SetSortOrder sets the SortOrder field's value.
  7248  func (s *ListChannelMessagesInput) SetSortOrder(v string) *ListChannelMessagesInput {
  7249  	s.SortOrder = &v
  7250  	return s
  7251  }
  7252  
  7253  type ListChannelMessagesOutput struct {
  7254  	_ struct{} `type:"structure"`
  7255  
  7256  	// The ARN of the channel containing the requested messages.
  7257  	ChannelArn *string `min:"5" type:"string"`
  7258  
  7259  	// The information about, and content of, each requested message.
  7260  	ChannelMessages []*ChannelMessageSummary `type:"list"`
  7261  
  7262  	// The token passed by previous API calls until all requested messages are returned.
  7263  	//
  7264  	// NextToken is a sensitive parameter and its value will be
  7265  	// replaced with "sensitive" in string returned by ListChannelMessagesOutput's
  7266  	// String and GoString methods.
  7267  	NextToken *string `type:"string" sensitive:"true"`
  7268  }
  7269  
  7270  // String returns the string representation.
  7271  //
  7272  // API parameter values that are decorated as "sensitive" in the API will not
  7273  // be included in the string output. The member name will be present, but the
  7274  // value will be replaced with "sensitive".
  7275  func (s ListChannelMessagesOutput) String() string {
  7276  	return awsutil.Prettify(s)
  7277  }
  7278  
  7279  // GoString returns the string representation.
  7280  //
  7281  // API parameter values that are decorated as "sensitive" in the API will not
  7282  // be included in the string output. The member name will be present, but the
  7283  // value will be replaced with "sensitive".
  7284  func (s ListChannelMessagesOutput) GoString() string {
  7285  	return s.String()
  7286  }
  7287  
  7288  // SetChannelArn sets the ChannelArn field's value.
  7289  func (s *ListChannelMessagesOutput) SetChannelArn(v string) *ListChannelMessagesOutput {
  7290  	s.ChannelArn = &v
  7291  	return s
  7292  }
  7293  
  7294  // SetChannelMessages sets the ChannelMessages field's value.
  7295  func (s *ListChannelMessagesOutput) SetChannelMessages(v []*ChannelMessageSummary) *ListChannelMessagesOutput {
  7296  	s.ChannelMessages = v
  7297  	return s
  7298  }
  7299  
  7300  // SetNextToken sets the NextToken field's value.
  7301  func (s *ListChannelMessagesOutput) SetNextToken(v string) *ListChannelMessagesOutput {
  7302  	s.NextToken = &v
  7303  	return s
  7304  }
  7305  
  7306  type ListChannelModeratorsInput struct {
  7307  	_ struct{} `type:"structure" nopayload:"true"`
  7308  
  7309  	// The ARN of the channel.
  7310  	//
  7311  	// ChannelArn is a required field
  7312  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  7313  
  7314  	// The AppInstanceUserArn of the user that makes the API call.
  7315  	//
  7316  	// ChimeBearer is a required field
  7317  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  7318  
  7319  	// The maximum number of moderators that you want returned.
  7320  	MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"`
  7321  
  7322  	// The token passed by previous API calls until all requested moderators are
  7323  	// returned.
  7324  	//
  7325  	// NextToken is a sensitive parameter and its value will be
  7326  	// replaced with "sensitive" in string returned by ListChannelModeratorsInput's
  7327  	// String and GoString methods.
  7328  	NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"`
  7329  }
  7330  
  7331  // String returns the string representation.
  7332  //
  7333  // API parameter values that are decorated as "sensitive" in the API will not
  7334  // be included in the string output. The member name will be present, but the
  7335  // value will be replaced with "sensitive".
  7336  func (s ListChannelModeratorsInput) String() string {
  7337  	return awsutil.Prettify(s)
  7338  }
  7339  
  7340  // GoString returns the string representation.
  7341  //
  7342  // API parameter values that are decorated as "sensitive" in the API will not
  7343  // be included in the string output. The member name will be present, but the
  7344  // value will be replaced with "sensitive".
  7345  func (s ListChannelModeratorsInput) GoString() string {
  7346  	return s.String()
  7347  }
  7348  
  7349  // Validate inspects the fields of the type to determine if they are valid.
  7350  func (s *ListChannelModeratorsInput) Validate() error {
  7351  	invalidParams := request.ErrInvalidParams{Context: "ListChannelModeratorsInput"}
  7352  	if s.ChannelArn == nil {
  7353  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  7354  	}
  7355  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  7356  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  7357  	}
  7358  	if s.ChimeBearer == nil {
  7359  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  7360  	}
  7361  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  7362  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  7363  	}
  7364  	if s.MaxResults != nil && *s.MaxResults < 1 {
  7365  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  7366  	}
  7367  
  7368  	if invalidParams.Len() > 0 {
  7369  		return invalidParams
  7370  	}
  7371  	return nil
  7372  }
  7373  
  7374  // SetChannelArn sets the ChannelArn field's value.
  7375  func (s *ListChannelModeratorsInput) SetChannelArn(v string) *ListChannelModeratorsInput {
  7376  	s.ChannelArn = &v
  7377  	return s
  7378  }
  7379  
  7380  // SetChimeBearer sets the ChimeBearer field's value.
  7381  func (s *ListChannelModeratorsInput) SetChimeBearer(v string) *ListChannelModeratorsInput {
  7382  	s.ChimeBearer = &v
  7383  	return s
  7384  }
  7385  
  7386  // SetMaxResults sets the MaxResults field's value.
  7387  func (s *ListChannelModeratorsInput) SetMaxResults(v int64) *ListChannelModeratorsInput {
  7388  	s.MaxResults = &v
  7389  	return s
  7390  }
  7391  
  7392  // SetNextToken sets the NextToken field's value.
  7393  func (s *ListChannelModeratorsInput) SetNextToken(v string) *ListChannelModeratorsInput {
  7394  	s.NextToken = &v
  7395  	return s
  7396  }
  7397  
  7398  type ListChannelModeratorsOutput struct {
  7399  	_ struct{} `type:"structure"`
  7400  
  7401  	// The ARN of the channel.
  7402  	ChannelArn *string `min:"5" type:"string"`
  7403  
  7404  	// The information about and names of each moderator.
  7405  	ChannelModerators []*ChannelModeratorSummary `type:"list"`
  7406  
  7407  	// The token passed by previous API calls until all requested moderators are
  7408  	// returned.
  7409  	//
  7410  	// NextToken is a sensitive parameter and its value will be
  7411  	// replaced with "sensitive" in string returned by ListChannelModeratorsOutput's
  7412  	// String and GoString methods.
  7413  	NextToken *string `type:"string" sensitive:"true"`
  7414  }
  7415  
  7416  // String returns the string representation.
  7417  //
  7418  // API parameter values that are decorated as "sensitive" in the API will not
  7419  // be included in the string output. The member name will be present, but the
  7420  // value will be replaced with "sensitive".
  7421  func (s ListChannelModeratorsOutput) String() string {
  7422  	return awsutil.Prettify(s)
  7423  }
  7424  
  7425  // GoString returns the string representation.
  7426  //
  7427  // API parameter values that are decorated as "sensitive" in the API will not
  7428  // be included in the string output. The member name will be present, but the
  7429  // value will be replaced with "sensitive".
  7430  func (s ListChannelModeratorsOutput) GoString() string {
  7431  	return s.String()
  7432  }
  7433  
  7434  // SetChannelArn sets the ChannelArn field's value.
  7435  func (s *ListChannelModeratorsOutput) SetChannelArn(v string) *ListChannelModeratorsOutput {
  7436  	s.ChannelArn = &v
  7437  	return s
  7438  }
  7439  
  7440  // SetChannelModerators sets the ChannelModerators field's value.
  7441  func (s *ListChannelModeratorsOutput) SetChannelModerators(v []*ChannelModeratorSummary) *ListChannelModeratorsOutput {
  7442  	s.ChannelModerators = v
  7443  	return s
  7444  }
  7445  
  7446  // SetNextToken sets the NextToken field's value.
  7447  func (s *ListChannelModeratorsOutput) SetNextToken(v string) *ListChannelModeratorsOutput {
  7448  	s.NextToken = &v
  7449  	return s
  7450  }
  7451  
  7452  type ListChannelsInput struct {
  7453  	_ struct{} `type:"structure" nopayload:"true"`
  7454  
  7455  	// The ARN of the AppInstance.
  7456  	//
  7457  	// AppInstanceArn is a required field
  7458  	AppInstanceArn *string `location:"querystring" locationName:"app-instance-arn" min:"5" type:"string" required:"true"`
  7459  
  7460  	// The AppInstanceUserArn of the user that makes the API call.
  7461  	//
  7462  	// ChimeBearer is a required field
  7463  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  7464  
  7465  	// The maximum number of channels that you want to return.
  7466  	MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"`
  7467  
  7468  	// The token passed by previous API calls until all requested channels are returned.
  7469  	//
  7470  	// NextToken is a sensitive parameter and its value will be
  7471  	// replaced with "sensitive" in string returned by ListChannelsInput's
  7472  	// String and GoString methods.
  7473  	NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"`
  7474  
  7475  	// The privacy setting. PUBLIC retrieves all the public channels. PRIVATE retrieves
  7476  	// private channels. Only an AppInstanceAdmin can retrieve private channels.
  7477  	Privacy *string `location:"querystring" locationName:"privacy" type:"string" enum:"ChannelPrivacy"`
  7478  }
  7479  
  7480  // String returns the string representation.
  7481  //
  7482  // API parameter values that are decorated as "sensitive" in the API will not
  7483  // be included in the string output. The member name will be present, but the
  7484  // value will be replaced with "sensitive".
  7485  func (s ListChannelsInput) String() string {
  7486  	return awsutil.Prettify(s)
  7487  }
  7488  
  7489  // GoString returns the string representation.
  7490  //
  7491  // API parameter values that are decorated as "sensitive" in the API will not
  7492  // be included in the string output. The member name will be present, but the
  7493  // value will be replaced with "sensitive".
  7494  func (s ListChannelsInput) GoString() string {
  7495  	return s.String()
  7496  }
  7497  
  7498  // Validate inspects the fields of the type to determine if they are valid.
  7499  func (s *ListChannelsInput) Validate() error {
  7500  	invalidParams := request.ErrInvalidParams{Context: "ListChannelsInput"}
  7501  	if s.AppInstanceArn == nil {
  7502  		invalidParams.Add(request.NewErrParamRequired("AppInstanceArn"))
  7503  	}
  7504  	if s.AppInstanceArn != nil && len(*s.AppInstanceArn) < 5 {
  7505  		invalidParams.Add(request.NewErrParamMinLen("AppInstanceArn", 5))
  7506  	}
  7507  	if s.ChimeBearer == nil {
  7508  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  7509  	}
  7510  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  7511  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  7512  	}
  7513  	if s.MaxResults != nil && *s.MaxResults < 1 {
  7514  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  7515  	}
  7516  
  7517  	if invalidParams.Len() > 0 {
  7518  		return invalidParams
  7519  	}
  7520  	return nil
  7521  }
  7522  
  7523  // SetAppInstanceArn sets the AppInstanceArn field's value.
  7524  func (s *ListChannelsInput) SetAppInstanceArn(v string) *ListChannelsInput {
  7525  	s.AppInstanceArn = &v
  7526  	return s
  7527  }
  7528  
  7529  // SetChimeBearer sets the ChimeBearer field's value.
  7530  func (s *ListChannelsInput) SetChimeBearer(v string) *ListChannelsInput {
  7531  	s.ChimeBearer = &v
  7532  	return s
  7533  }
  7534  
  7535  // SetMaxResults sets the MaxResults field's value.
  7536  func (s *ListChannelsInput) SetMaxResults(v int64) *ListChannelsInput {
  7537  	s.MaxResults = &v
  7538  	return s
  7539  }
  7540  
  7541  // SetNextToken sets the NextToken field's value.
  7542  func (s *ListChannelsInput) SetNextToken(v string) *ListChannelsInput {
  7543  	s.NextToken = &v
  7544  	return s
  7545  }
  7546  
  7547  // SetPrivacy sets the Privacy field's value.
  7548  func (s *ListChannelsInput) SetPrivacy(v string) *ListChannelsInput {
  7549  	s.Privacy = &v
  7550  	return s
  7551  }
  7552  
  7553  type ListChannelsModeratedByAppInstanceUserInput struct {
  7554  	_ struct{} `type:"structure" nopayload:"true"`
  7555  
  7556  	// The ARN of the user in the moderated channel.
  7557  	AppInstanceUserArn *string `location:"querystring" locationName:"app-instance-user-arn" min:"5" type:"string"`
  7558  
  7559  	// The AppInstanceUserArn of the user that makes the API call.
  7560  	//
  7561  	// ChimeBearer is a required field
  7562  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  7563  
  7564  	// The maximum number of channels in the request.
  7565  	MaxResults *int64 `location:"querystring" locationName:"max-results" min:"1" type:"integer"`
  7566  
  7567  	// The token returned from previous API requests until the number of channels
  7568  	// moderated by the user is reached.
  7569  	//
  7570  	// NextToken is a sensitive parameter and its value will be
  7571  	// replaced with "sensitive" in string returned by ListChannelsModeratedByAppInstanceUserInput's
  7572  	// String and GoString methods.
  7573  	NextToken *string `location:"querystring" locationName:"next-token" type:"string" sensitive:"true"`
  7574  }
  7575  
  7576  // String returns the string representation.
  7577  //
  7578  // API parameter values that are decorated as "sensitive" in the API will not
  7579  // be included in the string output. The member name will be present, but the
  7580  // value will be replaced with "sensitive".
  7581  func (s ListChannelsModeratedByAppInstanceUserInput) String() string {
  7582  	return awsutil.Prettify(s)
  7583  }
  7584  
  7585  // GoString returns the string representation.
  7586  //
  7587  // API parameter values that are decorated as "sensitive" in the API will not
  7588  // be included in the string output. The member name will be present, but the
  7589  // value will be replaced with "sensitive".
  7590  func (s ListChannelsModeratedByAppInstanceUserInput) GoString() string {
  7591  	return s.String()
  7592  }
  7593  
  7594  // Validate inspects the fields of the type to determine if they are valid.
  7595  func (s *ListChannelsModeratedByAppInstanceUserInput) Validate() error {
  7596  	invalidParams := request.ErrInvalidParams{Context: "ListChannelsModeratedByAppInstanceUserInput"}
  7597  	if s.AppInstanceUserArn != nil && len(*s.AppInstanceUserArn) < 5 {
  7598  		invalidParams.Add(request.NewErrParamMinLen("AppInstanceUserArn", 5))
  7599  	}
  7600  	if s.ChimeBearer == nil {
  7601  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  7602  	}
  7603  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  7604  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  7605  	}
  7606  	if s.MaxResults != nil && *s.MaxResults < 1 {
  7607  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  7608  	}
  7609  
  7610  	if invalidParams.Len() > 0 {
  7611  		return invalidParams
  7612  	}
  7613  	return nil
  7614  }
  7615  
  7616  // SetAppInstanceUserArn sets the AppInstanceUserArn field's value.
  7617  func (s *ListChannelsModeratedByAppInstanceUserInput) SetAppInstanceUserArn(v string) *ListChannelsModeratedByAppInstanceUserInput {
  7618  	s.AppInstanceUserArn = &v
  7619  	return s
  7620  }
  7621  
  7622  // SetChimeBearer sets the ChimeBearer field's value.
  7623  func (s *ListChannelsModeratedByAppInstanceUserInput) SetChimeBearer(v string) *ListChannelsModeratedByAppInstanceUserInput {
  7624  	s.ChimeBearer = &v
  7625  	return s
  7626  }
  7627  
  7628  // SetMaxResults sets the MaxResults field's value.
  7629  func (s *ListChannelsModeratedByAppInstanceUserInput) SetMaxResults(v int64) *ListChannelsModeratedByAppInstanceUserInput {
  7630  	s.MaxResults = &v
  7631  	return s
  7632  }
  7633  
  7634  // SetNextToken sets the NextToken field's value.
  7635  func (s *ListChannelsModeratedByAppInstanceUserInput) SetNextToken(v string) *ListChannelsModeratedByAppInstanceUserInput {
  7636  	s.NextToken = &v
  7637  	return s
  7638  }
  7639  
  7640  type ListChannelsModeratedByAppInstanceUserOutput struct {
  7641  	_ struct{} `type:"structure"`
  7642  
  7643  	// The moderated channels in the request.
  7644  	Channels []*ChannelModeratedByAppInstanceUserSummary `type:"list"`
  7645  
  7646  	// The token returned from previous API requests until the number of channels
  7647  	// moderated by the user is reached.
  7648  	//
  7649  	// NextToken is a sensitive parameter and its value will be
  7650  	// replaced with "sensitive" in string returned by ListChannelsModeratedByAppInstanceUserOutput's
  7651  	// String and GoString methods.
  7652  	NextToken *string `type:"string" sensitive:"true"`
  7653  }
  7654  
  7655  // String returns the string representation.
  7656  //
  7657  // API parameter values that are decorated as "sensitive" in the API will not
  7658  // be included in the string output. The member name will be present, but the
  7659  // value will be replaced with "sensitive".
  7660  func (s ListChannelsModeratedByAppInstanceUserOutput) String() string {
  7661  	return awsutil.Prettify(s)
  7662  }
  7663  
  7664  // GoString returns the string representation.
  7665  //
  7666  // API parameter values that are decorated as "sensitive" in the API will not
  7667  // be included in the string output. The member name will be present, but the
  7668  // value will be replaced with "sensitive".
  7669  func (s ListChannelsModeratedByAppInstanceUserOutput) GoString() string {
  7670  	return s.String()
  7671  }
  7672  
  7673  // SetChannels sets the Channels field's value.
  7674  func (s *ListChannelsModeratedByAppInstanceUserOutput) SetChannels(v []*ChannelModeratedByAppInstanceUserSummary) *ListChannelsModeratedByAppInstanceUserOutput {
  7675  	s.Channels = v
  7676  	return s
  7677  }
  7678  
  7679  // SetNextToken sets the NextToken field's value.
  7680  func (s *ListChannelsModeratedByAppInstanceUserOutput) SetNextToken(v string) *ListChannelsModeratedByAppInstanceUserOutput {
  7681  	s.NextToken = &v
  7682  	return s
  7683  }
  7684  
  7685  type ListChannelsOutput struct {
  7686  	_ struct{} `type:"structure"`
  7687  
  7688  	// The information about each channel.
  7689  	Channels []*ChannelSummary `type:"list"`
  7690  
  7691  	// The token returned from previous API requests until the number of channels
  7692  	// is reached.
  7693  	//
  7694  	// NextToken is a sensitive parameter and its value will be
  7695  	// replaced with "sensitive" in string returned by ListChannelsOutput's
  7696  	// String and GoString methods.
  7697  	NextToken *string `type:"string" sensitive:"true"`
  7698  }
  7699  
  7700  // String returns the string representation.
  7701  //
  7702  // API parameter values that are decorated as "sensitive" in the API will not
  7703  // be included in the string output. The member name will be present, but the
  7704  // value will be replaced with "sensitive".
  7705  func (s ListChannelsOutput) String() string {
  7706  	return awsutil.Prettify(s)
  7707  }
  7708  
  7709  // GoString returns the string representation.
  7710  //
  7711  // API parameter values that are decorated as "sensitive" in the API will not
  7712  // be included in the string output. The member name will be present, but the
  7713  // value will be replaced with "sensitive".
  7714  func (s ListChannelsOutput) GoString() string {
  7715  	return s.String()
  7716  }
  7717  
  7718  // SetChannels sets the Channels field's value.
  7719  func (s *ListChannelsOutput) SetChannels(v []*ChannelSummary) *ListChannelsOutput {
  7720  	s.Channels = v
  7721  	return s
  7722  }
  7723  
  7724  // SetNextToken sets the NextToken field's value.
  7725  func (s *ListChannelsOutput) SetNextToken(v string) *ListChannelsOutput {
  7726  	s.NextToken = &v
  7727  	return s
  7728  }
  7729  
  7730  // The websocket endpoint used to connect to Amazon Chime SDK messaging.
  7731  type MessagingSessionEndpoint struct {
  7732  	_ struct{} `type:"structure"`
  7733  
  7734  	// The endpoint to which you establish a websocket connection.
  7735  	Url *string `type:"string"`
  7736  }
  7737  
  7738  // String returns the string representation.
  7739  //
  7740  // API parameter values that are decorated as "sensitive" in the API will not
  7741  // be included in the string output. The member name will be present, but the
  7742  // value will be replaced with "sensitive".
  7743  func (s MessagingSessionEndpoint) String() string {
  7744  	return awsutil.Prettify(s)
  7745  }
  7746  
  7747  // GoString returns the string representation.
  7748  //
  7749  // API parameter values that are decorated as "sensitive" in the API will not
  7750  // be included in the string output. The member name will be present, but the
  7751  // value will be replaced with "sensitive".
  7752  func (s MessagingSessionEndpoint) GoString() string {
  7753  	return s.String()
  7754  }
  7755  
  7756  // SetUrl sets the Url field's value.
  7757  func (s *MessagingSessionEndpoint) SetUrl(v string) *MessagingSessionEndpoint {
  7758  	s.Url = &v
  7759  	return s
  7760  }
  7761  
  7762  // One or more of the resources in the request does not exist in the system.
  7763  type NotFoundException struct {
  7764  	_            struct{}                  `type:"structure"`
  7765  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7766  
  7767  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  7768  
  7769  	Message_ *string `locationName:"Message" type:"string"`
  7770  }
  7771  
  7772  // String returns the string representation.
  7773  //
  7774  // API parameter values that are decorated as "sensitive" in the API will not
  7775  // be included in the string output. The member name will be present, but the
  7776  // value will be replaced with "sensitive".
  7777  func (s NotFoundException) String() string {
  7778  	return awsutil.Prettify(s)
  7779  }
  7780  
  7781  // GoString returns the string representation.
  7782  //
  7783  // API parameter values that are decorated as "sensitive" in the API will not
  7784  // be included in the string output. The member name will be present, but the
  7785  // value will be replaced with "sensitive".
  7786  func (s NotFoundException) GoString() string {
  7787  	return s.String()
  7788  }
  7789  
  7790  func newErrorNotFoundException(v protocol.ResponseMetadata) error {
  7791  	return &NotFoundException{
  7792  		RespMetadata: v,
  7793  	}
  7794  }
  7795  
  7796  // Code returns the exception type name.
  7797  func (s *NotFoundException) Code() string {
  7798  	return "NotFoundException"
  7799  }
  7800  
  7801  // Message returns the exception's message.
  7802  func (s *NotFoundException) Message() string {
  7803  	if s.Message_ != nil {
  7804  		return *s.Message_
  7805  	}
  7806  	return ""
  7807  }
  7808  
  7809  // OrigErr always returns nil, satisfies awserr.Error interface.
  7810  func (s *NotFoundException) OrigErr() error {
  7811  	return nil
  7812  }
  7813  
  7814  func (s *NotFoundException) Error() string {
  7815  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  7816  }
  7817  
  7818  // Status code returns the HTTP status code for the request's response error.
  7819  func (s *NotFoundException) StatusCode() int {
  7820  	return s.RespMetadata.StatusCode
  7821  }
  7822  
  7823  // RequestID returns the service's response RequestID for request.
  7824  func (s *NotFoundException) RequestID() string {
  7825  	return s.RespMetadata.RequestID
  7826  }
  7827  
  7828  type RedactChannelMessageInput struct {
  7829  	_ struct{} `type:"structure" nopayload:"true"`
  7830  
  7831  	// The ARN of the channel containing the messages that you want to redact.
  7832  	//
  7833  	// ChannelArn is a required field
  7834  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  7835  
  7836  	// The AppInstanceUserArn of the user that makes the API call.
  7837  	//
  7838  	// ChimeBearer is a required field
  7839  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  7840  
  7841  	// The ID of the message being redacted.
  7842  	//
  7843  	// MessageId is a required field
  7844  	MessageId *string `location:"uri" locationName:"messageId" min:"1" type:"string" required:"true"`
  7845  }
  7846  
  7847  // String returns the string representation.
  7848  //
  7849  // API parameter values that are decorated as "sensitive" in the API will not
  7850  // be included in the string output. The member name will be present, but the
  7851  // value will be replaced with "sensitive".
  7852  func (s RedactChannelMessageInput) String() string {
  7853  	return awsutil.Prettify(s)
  7854  }
  7855  
  7856  // GoString returns the string representation.
  7857  //
  7858  // API parameter values that are decorated as "sensitive" in the API will not
  7859  // be included in the string output. The member name will be present, but the
  7860  // value will be replaced with "sensitive".
  7861  func (s RedactChannelMessageInput) GoString() string {
  7862  	return s.String()
  7863  }
  7864  
  7865  // Validate inspects the fields of the type to determine if they are valid.
  7866  func (s *RedactChannelMessageInput) Validate() error {
  7867  	invalidParams := request.ErrInvalidParams{Context: "RedactChannelMessageInput"}
  7868  	if s.ChannelArn == nil {
  7869  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  7870  	}
  7871  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  7872  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  7873  	}
  7874  	if s.ChimeBearer == nil {
  7875  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  7876  	}
  7877  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  7878  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  7879  	}
  7880  	if s.MessageId == nil {
  7881  		invalidParams.Add(request.NewErrParamRequired("MessageId"))
  7882  	}
  7883  	if s.MessageId != nil && len(*s.MessageId) < 1 {
  7884  		invalidParams.Add(request.NewErrParamMinLen("MessageId", 1))
  7885  	}
  7886  
  7887  	if invalidParams.Len() > 0 {
  7888  		return invalidParams
  7889  	}
  7890  	return nil
  7891  }
  7892  
  7893  // SetChannelArn sets the ChannelArn field's value.
  7894  func (s *RedactChannelMessageInput) SetChannelArn(v string) *RedactChannelMessageInput {
  7895  	s.ChannelArn = &v
  7896  	return s
  7897  }
  7898  
  7899  // SetChimeBearer sets the ChimeBearer field's value.
  7900  func (s *RedactChannelMessageInput) SetChimeBearer(v string) *RedactChannelMessageInput {
  7901  	s.ChimeBearer = &v
  7902  	return s
  7903  }
  7904  
  7905  // SetMessageId sets the MessageId field's value.
  7906  func (s *RedactChannelMessageInput) SetMessageId(v string) *RedactChannelMessageInput {
  7907  	s.MessageId = &v
  7908  	return s
  7909  }
  7910  
  7911  type RedactChannelMessageOutput struct {
  7912  	_ struct{} `type:"structure"`
  7913  
  7914  	// The ARN of the channel containing the messages that you want to redact.
  7915  	ChannelArn *string `min:"5" type:"string"`
  7916  
  7917  	// The ID of the message being redacted.
  7918  	MessageId *string `min:"1" type:"string"`
  7919  }
  7920  
  7921  // String returns the string representation.
  7922  //
  7923  // API parameter values that are decorated as "sensitive" in the API will not
  7924  // be included in the string output. The member name will be present, but the
  7925  // value will be replaced with "sensitive".
  7926  func (s RedactChannelMessageOutput) String() string {
  7927  	return awsutil.Prettify(s)
  7928  }
  7929  
  7930  // GoString returns the string representation.
  7931  //
  7932  // API parameter values that are decorated as "sensitive" in the API will not
  7933  // be included in the string output. The member name will be present, but the
  7934  // value will be replaced with "sensitive".
  7935  func (s RedactChannelMessageOutput) GoString() string {
  7936  	return s.String()
  7937  }
  7938  
  7939  // SetChannelArn sets the ChannelArn field's value.
  7940  func (s *RedactChannelMessageOutput) SetChannelArn(v string) *RedactChannelMessageOutput {
  7941  	s.ChannelArn = &v
  7942  	return s
  7943  }
  7944  
  7945  // SetMessageId sets the MessageId field's value.
  7946  func (s *RedactChannelMessageOutput) SetMessageId(v string) *RedactChannelMessageOutput {
  7947  	s.MessageId = &v
  7948  	return s
  7949  }
  7950  
  7951  // The request exceeds the resource limit.
  7952  type ResourceLimitExceededException struct {
  7953  	_            struct{}                  `type:"structure"`
  7954  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7955  
  7956  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  7957  
  7958  	Message_ *string `locationName:"Message" type:"string"`
  7959  }
  7960  
  7961  // String returns the string representation.
  7962  //
  7963  // API parameter values that are decorated as "sensitive" in the API will not
  7964  // be included in the string output. The member name will be present, but the
  7965  // value will be replaced with "sensitive".
  7966  func (s ResourceLimitExceededException) String() string {
  7967  	return awsutil.Prettify(s)
  7968  }
  7969  
  7970  // GoString returns the string representation.
  7971  //
  7972  // API parameter values that are decorated as "sensitive" in the API will not
  7973  // be included in the string output. The member name will be present, but the
  7974  // value will be replaced with "sensitive".
  7975  func (s ResourceLimitExceededException) GoString() string {
  7976  	return s.String()
  7977  }
  7978  
  7979  func newErrorResourceLimitExceededException(v protocol.ResponseMetadata) error {
  7980  	return &ResourceLimitExceededException{
  7981  		RespMetadata: v,
  7982  	}
  7983  }
  7984  
  7985  // Code returns the exception type name.
  7986  func (s *ResourceLimitExceededException) Code() string {
  7987  	return "ResourceLimitExceededException"
  7988  }
  7989  
  7990  // Message returns the exception's message.
  7991  func (s *ResourceLimitExceededException) Message() string {
  7992  	if s.Message_ != nil {
  7993  		return *s.Message_
  7994  	}
  7995  	return ""
  7996  }
  7997  
  7998  // OrigErr always returns nil, satisfies awserr.Error interface.
  7999  func (s *ResourceLimitExceededException) OrigErr() error {
  8000  	return nil
  8001  }
  8002  
  8003  func (s *ResourceLimitExceededException) Error() string {
  8004  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8005  }
  8006  
  8007  // Status code returns the HTTP status code for the request's response error.
  8008  func (s *ResourceLimitExceededException) StatusCode() int {
  8009  	return s.RespMetadata.StatusCode
  8010  }
  8011  
  8012  // RequestID returns the service's response RequestID for request.
  8013  func (s *ResourceLimitExceededException) RequestID() string {
  8014  	return s.RespMetadata.RequestID
  8015  }
  8016  
  8017  type SendChannelMessageInput struct {
  8018  	_ struct{} `type:"structure"`
  8019  
  8020  	// The ARN of the channel.
  8021  	//
  8022  	// ChannelArn is a required field
  8023  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  8024  
  8025  	// The AppInstanceUserArn of the user that makes the API call.
  8026  	//
  8027  	// ChimeBearer is a required field
  8028  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  8029  
  8030  	// The Idempotency token for each client request.
  8031  	//
  8032  	// ClientRequestToken is a sensitive parameter and its value will be
  8033  	// replaced with "sensitive" in string returned by SendChannelMessageInput's
  8034  	// String and GoString methods.
  8035  	ClientRequestToken *string `min:"2" type:"string" idempotencyToken:"true" sensitive:"true"`
  8036  
  8037  	// The content of the message.
  8038  	//
  8039  	// Content is a sensitive parameter and its value will be
  8040  	// replaced with "sensitive" in string returned by SendChannelMessageInput's
  8041  	// String and GoString methods.
  8042  	//
  8043  	// Content is a required field
  8044  	Content *string `min:"1" type:"string" required:"true" sensitive:"true"`
  8045  
  8046  	// The optional metadata for each message.
  8047  	//
  8048  	// Metadata is a sensitive parameter and its value will be
  8049  	// replaced with "sensitive" in string returned by SendChannelMessageInput's
  8050  	// String and GoString methods.
  8051  	Metadata *string `type:"string" sensitive:"true"`
  8052  
  8053  	// Boolean that controls whether the message is persisted on the back end. Required.
  8054  	//
  8055  	// Persistence is a required field
  8056  	Persistence *string `type:"string" required:"true" enum:"ChannelMessagePersistenceType"`
  8057  
  8058  	// The type of message, STANDARD or CONTROL.
  8059  	//
  8060  	// Type is a required field
  8061  	Type *string `type:"string" required:"true" enum:"ChannelMessageType"`
  8062  }
  8063  
  8064  // String returns the string representation.
  8065  //
  8066  // API parameter values that are decorated as "sensitive" in the API will not
  8067  // be included in the string output. The member name will be present, but the
  8068  // value will be replaced with "sensitive".
  8069  func (s SendChannelMessageInput) String() string {
  8070  	return awsutil.Prettify(s)
  8071  }
  8072  
  8073  // GoString returns the string representation.
  8074  //
  8075  // API parameter values that are decorated as "sensitive" in the API will not
  8076  // be included in the string output. The member name will be present, but the
  8077  // value will be replaced with "sensitive".
  8078  func (s SendChannelMessageInput) GoString() string {
  8079  	return s.String()
  8080  }
  8081  
  8082  // Validate inspects the fields of the type to determine if they are valid.
  8083  func (s *SendChannelMessageInput) Validate() error {
  8084  	invalidParams := request.ErrInvalidParams{Context: "SendChannelMessageInput"}
  8085  	if s.ChannelArn == nil {
  8086  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  8087  	}
  8088  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  8089  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  8090  	}
  8091  	if s.ChimeBearer == nil {
  8092  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  8093  	}
  8094  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  8095  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  8096  	}
  8097  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 2 {
  8098  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 2))
  8099  	}
  8100  	if s.Content == nil {
  8101  		invalidParams.Add(request.NewErrParamRequired("Content"))
  8102  	}
  8103  	if s.Content != nil && len(*s.Content) < 1 {
  8104  		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
  8105  	}
  8106  	if s.Persistence == nil {
  8107  		invalidParams.Add(request.NewErrParamRequired("Persistence"))
  8108  	}
  8109  	if s.Type == nil {
  8110  		invalidParams.Add(request.NewErrParamRequired("Type"))
  8111  	}
  8112  
  8113  	if invalidParams.Len() > 0 {
  8114  		return invalidParams
  8115  	}
  8116  	return nil
  8117  }
  8118  
  8119  // SetChannelArn sets the ChannelArn field's value.
  8120  func (s *SendChannelMessageInput) SetChannelArn(v string) *SendChannelMessageInput {
  8121  	s.ChannelArn = &v
  8122  	return s
  8123  }
  8124  
  8125  // SetChimeBearer sets the ChimeBearer field's value.
  8126  func (s *SendChannelMessageInput) SetChimeBearer(v string) *SendChannelMessageInput {
  8127  	s.ChimeBearer = &v
  8128  	return s
  8129  }
  8130  
  8131  // SetClientRequestToken sets the ClientRequestToken field's value.
  8132  func (s *SendChannelMessageInput) SetClientRequestToken(v string) *SendChannelMessageInput {
  8133  	s.ClientRequestToken = &v
  8134  	return s
  8135  }
  8136  
  8137  // SetContent sets the Content field's value.
  8138  func (s *SendChannelMessageInput) SetContent(v string) *SendChannelMessageInput {
  8139  	s.Content = &v
  8140  	return s
  8141  }
  8142  
  8143  // SetMetadata sets the Metadata field's value.
  8144  func (s *SendChannelMessageInput) SetMetadata(v string) *SendChannelMessageInput {
  8145  	s.Metadata = &v
  8146  	return s
  8147  }
  8148  
  8149  // SetPersistence sets the Persistence field's value.
  8150  func (s *SendChannelMessageInput) SetPersistence(v string) *SendChannelMessageInput {
  8151  	s.Persistence = &v
  8152  	return s
  8153  }
  8154  
  8155  // SetType sets the Type field's value.
  8156  func (s *SendChannelMessageInput) SetType(v string) *SendChannelMessageInput {
  8157  	s.Type = &v
  8158  	return s
  8159  }
  8160  
  8161  type SendChannelMessageOutput struct {
  8162  	_ struct{} `type:"structure"`
  8163  
  8164  	// The ARN of the channel.
  8165  	ChannelArn *string `min:"5" type:"string"`
  8166  
  8167  	// The ID string assigned to each message.
  8168  	MessageId *string `min:"1" type:"string"`
  8169  }
  8170  
  8171  // String returns the string representation.
  8172  //
  8173  // API parameter values that are decorated as "sensitive" in the API will not
  8174  // be included in the string output. The member name will be present, but the
  8175  // value will be replaced with "sensitive".
  8176  func (s SendChannelMessageOutput) String() string {
  8177  	return awsutil.Prettify(s)
  8178  }
  8179  
  8180  // GoString returns the string representation.
  8181  //
  8182  // API parameter values that are decorated as "sensitive" in the API will not
  8183  // be included in the string output. The member name will be present, but the
  8184  // value will be replaced with "sensitive".
  8185  func (s SendChannelMessageOutput) GoString() string {
  8186  	return s.String()
  8187  }
  8188  
  8189  // SetChannelArn sets the ChannelArn field's value.
  8190  func (s *SendChannelMessageOutput) SetChannelArn(v string) *SendChannelMessageOutput {
  8191  	s.ChannelArn = &v
  8192  	return s
  8193  }
  8194  
  8195  // SetMessageId sets the MessageId field's value.
  8196  func (s *SendChannelMessageOutput) SetMessageId(v string) *SendChannelMessageOutput {
  8197  	s.MessageId = &v
  8198  	return s
  8199  }
  8200  
  8201  // The service encountered an unexpected error.
  8202  type ServiceFailureException struct {
  8203  	_            struct{}                  `type:"structure"`
  8204  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8205  
  8206  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  8207  
  8208  	Message_ *string `locationName:"Message" type:"string"`
  8209  }
  8210  
  8211  // String returns the string representation.
  8212  //
  8213  // API parameter values that are decorated as "sensitive" in the API will not
  8214  // be included in the string output. The member name will be present, but the
  8215  // value will be replaced with "sensitive".
  8216  func (s ServiceFailureException) String() string {
  8217  	return awsutil.Prettify(s)
  8218  }
  8219  
  8220  // GoString returns the string representation.
  8221  //
  8222  // API parameter values that are decorated as "sensitive" in the API will not
  8223  // be included in the string output. The member name will be present, but the
  8224  // value will be replaced with "sensitive".
  8225  func (s ServiceFailureException) GoString() string {
  8226  	return s.String()
  8227  }
  8228  
  8229  func newErrorServiceFailureException(v protocol.ResponseMetadata) error {
  8230  	return &ServiceFailureException{
  8231  		RespMetadata: v,
  8232  	}
  8233  }
  8234  
  8235  // Code returns the exception type name.
  8236  func (s *ServiceFailureException) Code() string {
  8237  	return "ServiceFailureException"
  8238  }
  8239  
  8240  // Message returns the exception's message.
  8241  func (s *ServiceFailureException) Message() string {
  8242  	if s.Message_ != nil {
  8243  		return *s.Message_
  8244  	}
  8245  	return ""
  8246  }
  8247  
  8248  // OrigErr always returns nil, satisfies awserr.Error interface.
  8249  func (s *ServiceFailureException) OrigErr() error {
  8250  	return nil
  8251  }
  8252  
  8253  func (s *ServiceFailureException) Error() string {
  8254  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8255  }
  8256  
  8257  // Status code returns the HTTP status code for the request's response error.
  8258  func (s *ServiceFailureException) StatusCode() int {
  8259  	return s.RespMetadata.StatusCode
  8260  }
  8261  
  8262  // RequestID returns the service's response RequestID for request.
  8263  func (s *ServiceFailureException) RequestID() string {
  8264  	return s.RespMetadata.RequestID
  8265  }
  8266  
  8267  // The service is currently unavailable.
  8268  type ServiceUnavailableException struct {
  8269  	_            struct{}                  `type:"structure"`
  8270  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8271  
  8272  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  8273  
  8274  	Message_ *string `locationName:"Message" type:"string"`
  8275  }
  8276  
  8277  // String returns the string representation.
  8278  //
  8279  // API parameter values that are decorated as "sensitive" in the API will not
  8280  // be included in the string output. The member name will be present, but the
  8281  // value will be replaced with "sensitive".
  8282  func (s ServiceUnavailableException) String() string {
  8283  	return awsutil.Prettify(s)
  8284  }
  8285  
  8286  // GoString returns the string representation.
  8287  //
  8288  // API parameter values that are decorated as "sensitive" in the API will not
  8289  // be included in the string output. The member name will be present, but the
  8290  // value will be replaced with "sensitive".
  8291  func (s ServiceUnavailableException) GoString() string {
  8292  	return s.String()
  8293  }
  8294  
  8295  func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error {
  8296  	return &ServiceUnavailableException{
  8297  		RespMetadata: v,
  8298  	}
  8299  }
  8300  
  8301  // Code returns the exception type name.
  8302  func (s *ServiceUnavailableException) Code() string {
  8303  	return "ServiceUnavailableException"
  8304  }
  8305  
  8306  // Message returns the exception's message.
  8307  func (s *ServiceUnavailableException) Message() string {
  8308  	if s.Message_ != nil {
  8309  		return *s.Message_
  8310  	}
  8311  	return ""
  8312  }
  8313  
  8314  // OrigErr always returns nil, satisfies awserr.Error interface.
  8315  func (s *ServiceUnavailableException) OrigErr() error {
  8316  	return nil
  8317  }
  8318  
  8319  func (s *ServiceUnavailableException) Error() string {
  8320  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8321  }
  8322  
  8323  // Status code returns the HTTP status code for the request's response error.
  8324  func (s *ServiceUnavailableException) StatusCode() int {
  8325  	return s.RespMetadata.StatusCode
  8326  }
  8327  
  8328  // RequestID returns the service's response RequestID for request.
  8329  func (s *ServiceUnavailableException) RequestID() string {
  8330  	return s.RespMetadata.RequestID
  8331  }
  8332  
  8333  // Describes a tag applied to a resource.
  8334  type Tag struct {
  8335  	_ struct{} `type:"structure"`
  8336  
  8337  	// The key of the tag.
  8338  	//
  8339  	// Key is a sensitive parameter and its value will be
  8340  	// replaced with "sensitive" in string returned by Tag's
  8341  	// String and GoString methods.
  8342  	//
  8343  	// Key is a required field
  8344  	Key *string `min:"1" type:"string" required:"true" sensitive:"true"`
  8345  
  8346  	// The value of the tag.
  8347  	//
  8348  	// Value is a sensitive parameter and its value will be
  8349  	// replaced with "sensitive" in string returned by Tag's
  8350  	// String and GoString methods.
  8351  	//
  8352  	// Value is a required field
  8353  	Value *string `min:"1" type:"string" required:"true" sensitive:"true"`
  8354  }
  8355  
  8356  // String returns the string representation.
  8357  //
  8358  // API parameter values that are decorated as "sensitive" in the API will not
  8359  // be included in the string output. The member name will be present, but the
  8360  // value will be replaced with "sensitive".
  8361  func (s Tag) String() string {
  8362  	return awsutil.Prettify(s)
  8363  }
  8364  
  8365  // GoString returns the string representation.
  8366  //
  8367  // API parameter values that are decorated as "sensitive" in the API will not
  8368  // be included in the string output. The member name will be present, but the
  8369  // value will be replaced with "sensitive".
  8370  func (s Tag) GoString() string {
  8371  	return s.String()
  8372  }
  8373  
  8374  // Validate inspects the fields of the type to determine if they are valid.
  8375  func (s *Tag) Validate() error {
  8376  	invalidParams := request.ErrInvalidParams{Context: "Tag"}
  8377  	if s.Key == nil {
  8378  		invalidParams.Add(request.NewErrParamRequired("Key"))
  8379  	}
  8380  	if s.Key != nil && len(*s.Key) < 1 {
  8381  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
  8382  	}
  8383  	if s.Value == nil {
  8384  		invalidParams.Add(request.NewErrParamRequired("Value"))
  8385  	}
  8386  	if s.Value != nil && len(*s.Value) < 1 {
  8387  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
  8388  	}
  8389  
  8390  	if invalidParams.Len() > 0 {
  8391  		return invalidParams
  8392  	}
  8393  	return nil
  8394  }
  8395  
  8396  // SetKey sets the Key field's value.
  8397  func (s *Tag) SetKey(v string) *Tag {
  8398  	s.Key = &v
  8399  	return s
  8400  }
  8401  
  8402  // SetValue sets the Value field's value.
  8403  func (s *Tag) SetValue(v string) *Tag {
  8404  	s.Value = &v
  8405  	return s
  8406  }
  8407  
  8408  // The client exceeded its request rate limit.
  8409  type ThrottledClientException struct {
  8410  	_            struct{}                  `type:"structure"`
  8411  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8412  
  8413  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  8414  
  8415  	Message_ *string `locationName:"Message" type:"string"`
  8416  }
  8417  
  8418  // String returns the string representation.
  8419  //
  8420  // API parameter values that are decorated as "sensitive" in the API will not
  8421  // be included in the string output. The member name will be present, but the
  8422  // value will be replaced with "sensitive".
  8423  func (s ThrottledClientException) String() string {
  8424  	return awsutil.Prettify(s)
  8425  }
  8426  
  8427  // GoString returns the string representation.
  8428  //
  8429  // API parameter values that are decorated as "sensitive" in the API will not
  8430  // be included in the string output. The member name will be present, but the
  8431  // value will be replaced with "sensitive".
  8432  func (s ThrottledClientException) GoString() string {
  8433  	return s.String()
  8434  }
  8435  
  8436  func newErrorThrottledClientException(v protocol.ResponseMetadata) error {
  8437  	return &ThrottledClientException{
  8438  		RespMetadata: v,
  8439  	}
  8440  }
  8441  
  8442  // Code returns the exception type name.
  8443  func (s *ThrottledClientException) Code() string {
  8444  	return "ThrottledClientException"
  8445  }
  8446  
  8447  // Message returns the exception's message.
  8448  func (s *ThrottledClientException) Message() string {
  8449  	if s.Message_ != nil {
  8450  		return *s.Message_
  8451  	}
  8452  	return ""
  8453  }
  8454  
  8455  // OrigErr always returns nil, satisfies awserr.Error interface.
  8456  func (s *ThrottledClientException) OrigErr() error {
  8457  	return nil
  8458  }
  8459  
  8460  func (s *ThrottledClientException) Error() string {
  8461  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8462  }
  8463  
  8464  // Status code returns the HTTP status code for the request's response error.
  8465  func (s *ThrottledClientException) StatusCode() int {
  8466  	return s.RespMetadata.StatusCode
  8467  }
  8468  
  8469  // RequestID returns the service's response RequestID for request.
  8470  func (s *ThrottledClientException) RequestID() string {
  8471  	return s.RespMetadata.RequestID
  8472  }
  8473  
  8474  // The client is not currently authorized to make the request.
  8475  type UnauthorizedClientException struct {
  8476  	_            struct{}                  `type:"structure"`
  8477  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8478  
  8479  	Code_ *string `locationName:"Code" type:"string" enum:"ErrorCode"`
  8480  
  8481  	Message_ *string `locationName:"Message" type:"string"`
  8482  }
  8483  
  8484  // String returns the string representation.
  8485  //
  8486  // API parameter values that are decorated as "sensitive" in the API will not
  8487  // be included in the string output. The member name will be present, but the
  8488  // value will be replaced with "sensitive".
  8489  func (s UnauthorizedClientException) String() string {
  8490  	return awsutil.Prettify(s)
  8491  }
  8492  
  8493  // GoString returns the string representation.
  8494  //
  8495  // API parameter values that are decorated as "sensitive" in the API will not
  8496  // be included in the string output. The member name will be present, but the
  8497  // value will be replaced with "sensitive".
  8498  func (s UnauthorizedClientException) GoString() string {
  8499  	return s.String()
  8500  }
  8501  
  8502  func newErrorUnauthorizedClientException(v protocol.ResponseMetadata) error {
  8503  	return &UnauthorizedClientException{
  8504  		RespMetadata: v,
  8505  	}
  8506  }
  8507  
  8508  // Code returns the exception type name.
  8509  func (s *UnauthorizedClientException) Code() string {
  8510  	return "UnauthorizedClientException"
  8511  }
  8512  
  8513  // Message returns the exception's message.
  8514  func (s *UnauthorizedClientException) Message() string {
  8515  	if s.Message_ != nil {
  8516  		return *s.Message_
  8517  	}
  8518  	return ""
  8519  }
  8520  
  8521  // OrigErr always returns nil, satisfies awserr.Error interface.
  8522  func (s *UnauthorizedClientException) OrigErr() error {
  8523  	return nil
  8524  }
  8525  
  8526  func (s *UnauthorizedClientException) Error() string {
  8527  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8528  }
  8529  
  8530  // Status code returns the HTTP status code for the request's response error.
  8531  func (s *UnauthorizedClientException) StatusCode() int {
  8532  	return s.RespMetadata.StatusCode
  8533  }
  8534  
  8535  // RequestID returns the service's response RequestID for request.
  8536  func (s *UnauthorizedClientException) RequestID() string {
  8537  	return s.RespMetadata.RequestID
  8538  }
  8539  
  8540  type UpdateChannelInput struct {
  8541  	_ struct{} `type:"structure"`
  8542  
  8543  	// The ARN of the channel.
  8544  	//
  8545  	// ChannelArn is a required field
  8546  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  8547  
  8548  	// The AppInstanceUserArn of the user that makes the API call.
  8549  	//
  8550  	// ChimeBearer is a required field
  8551  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  8552  
  8553  	// The metadata for the update request.
  8554  	//
  8555  	// Metadata is a sensitive parameter and its value will be
  8556  	// replaced with "sensitive" in string returned by UpdateChannelInput's
  8557  	// String and GoString methods.
  8558  	Metadata *string `type:"string" sensitive:"true"`
  8559  
  8560  	// The mode of the update request.
  8561  	//
  8562  	// Mode is a required field
  8563  	Mode *string `type:"string" required:"true" enum:"ChannelMode"`
  8564  
  8565  	// The name of the channel.
  8566  	//
  8567  	// Name is a sensitive parameter and its value will be
  8568  	// replaced with "sensitive" in string returned by UpdateChannelInput's
  8569  	// String and GoString methods.
  8570  	//
  8571  	// Name is a required field
  8572  	Name *string `min:"1" type:"string" required:"true" sensitive:"true"`
  8573  }
  8574  
  8575  // String returns the string representation.
  8576  //
  8577  // API parameter values that are decorated as "sensitive" in the API will not
  8578  // be included in the string output. The member name will be present, but the
  8579  // value will be replaced with "sensitive".
  8580  func (s UpdateChannelInput) String() string {
  8581  	return awsutil.Prettify(s)
  8582  }
  8583  
  8584  // GoString returns the string representation.
  8585  //
  8586  // API parameter values that are decorated as "sensitive" in the API will not
  8587  // be included in the string output. The member name will be present, but the
  8588  // value will be replaced with "sensitive".
  8589  func (s UpdateChannelInput) GoString() string {
  8590  	return s.String()
  8591  }
  8592  
  8593  // Validate inspects the fields of the type to determine if they are valid.
  8594  func (s *UpdateChannelInput) Validate() error {
  8595  	invalidParams := request.ErrInvalidParams{Context: "UpdateChannelInput"}
  8596  	if s.ChannelArn == nil {
  8597  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  8598  	}
  8599  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  8600  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  8601  	}
  8602  	if s.ChimeBearer == nil {
  8603  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  8604  	}
  8605  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  8606  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  8607  	}
  8608  	if s.Mode == nil {
  8609  		invalidParams.Add(request.NewErrParamRequired("Mode"))
  8610  	}
  8611  	if s.Name == nil {
  8612  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8613  	}
  8614  	if s.Name != nil && len(*s.Name) < 1 {
  8615  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8616  	}
  8617  
  8618  	if invalidParams.Len() > 0 {
  8619  		return invalidParams
  8620  	}
  8621  	return nil
  8622  }
  8623  
  8624  // SetChannelArn sets the ChannelArn field's value.
  8625  func (s *UpdateChannelInput) SetChannelArn(v string) *UpdateChannelInput {
  8626  	s.ChannelArn = &v
  8627  	return s
  8628  }
  8629  
  8630  // SetChimeBearer sets the ChimeBearer field's value.
  8631  func (s *UpdateChannelInput) SetChimeBearer(v string) *UpdateChannelInput {
  8632  	s.ChimeBearer = &v
  8633  	return s
  8634  }
  8635  
  8636  // SetMetadata sets the Metadata field's value.
  8637  func (s *UpdateChannelInput) SetMetadata(v string) *UpdateChannelInput {
  8638  	s.Metadata = &v
  8639  	return s
  8640  }
  8641  
  8642  // SetMode sets the Mode field's value.
  8643  func (s *UpdateChannelInput) SetMode(v string) *UpdateChannelInput {
  8644  	s.Mode = &v
  8645  	return s
  8646  }
  8647  
  8648  // SetName sets the Name field's value.
  8649  func (s *UpdateChannelInput) SetName(v string) *UpdateChannelInput {
  8650  	s.Name = &v
  8651  	return s
  8652  }
  8653  
  8654  type UpdateChannelMessageInput struct {
  8655  	_ struct{} `type:"structure"`
  8656  
  8657  	// The ARN of the channel.
  8658  	//
  8659  	// ChannelArn is a required field
  8660  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  8661  
  8662  	// The AppInstanceUserArn of the user that makes the API call.
  8663  	//
  8664  	// ChimeBearer is a required field
  8665  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  8666  
  8667  	// The content of the message being updated.
  8668  	//
  8669  	// Content is a sensitive parameter and its value will be
  8670  	// replaced with "sensitive" in string returned by UpdateChannelMessageInput's
  8671  	// String and GoString methods.
  8672  	Content *string `type:"string" sensitive:"true"`
  8673  
  8674  	// The ID string of the message being updated.
  8675  	//
  8676  	// MessageId is a required field
  8677  	MessageId *string `location:"uri" locationName:"messageId" min:"1" type:"string" required:"true"`
  8678  
  8679  	// The metadata of the message being updated.
  8680  	//
  8681  	// Metadata is a sensitive parameter and its value will be
  8682  	// replaced with "sensitive" in string returned by UpdateChannelMessageInput's
  8683  	// String and GoString methods.
  8684  	Metadata *string `type:"string" sensitive:"true"`
  8685  }
  8686  
  8687  // String returns the string representation.
  8688  //
  8689  // API parameter values that are decorated as "sensitive" in the API will not
  8690  // be included in the string output. The member name will be present, but the
  8691  // value will be replaced with "sensitive".
  8692  func (s UpdateChannelMessageInput) String() string {
  8693  	return awsutil.Prettify(s)
  8694  }
  8695  
  8696  // GoString returns the string representation.
  8697  //
  8698  // API parameter values that are decorated as "sensitive" in the API will not
  8699  // be included in the string output. The member name will be present, but the
  8700  // value will be replaced with "sensitive".
  8701  func (s UpdateChannelMessageInput) GoString() string {
  8702  	return s.String()
  8703  }
  8704  
  8705  // Validate inspects the fields of the type to determine if they are valid.
  8706  func (s *UpdateChannelMessageInput) Validate() error {
  8707  	invalidParams := request.ErrInvalidParams{Context: "UpdateChannelMessageInput"}
  8708  	if s.ChannelArn == nil {
  8709  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  8710  	}
  8711  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  8712  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  8713  	}
  8714  	if s.ChimeBearer == nil {
  8715  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  8716  	}
  8717  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  8718  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  8719  	}
  8720  	if s.MessageId == nil {
  8721  		invalidParams.Add(request.NewErrParamRequired("MessageId"))
  8722  	}
  8723  	if s.MessageId != nil && len(*s.MessageId) < 1 {
  8724  		invalidParams.Add(request.NewErrParamMinLen("MessageId", 1))
  8725  	}
  8726  
  8727  	if invalidParams.Len() > 0 {
  8728  		return invalidParams
  8729  	}
  8730  	return nil
  8731  }
  8732  
  8733  // SetChannelArn sets the ChannelArn field's value.
  8734  func (s *UpdateChannelMessageInput) SetChannelArn(v string) *UpdateChannelMessageInput {
  8735  	s.ChannelArn = &v
  8736  	return s
  8737  }
  8738  
  8739  // SetChimeBearer sets the ChimeBearer field's value.
  8740  func (s *UpdateChannelMessageInput) SetChimeBearer(v string) *UpdateChannelMessageInput {
  8741  	s.ChimeBearer = &v
  8742  	return s
  8743  }
  8744  
  8745  // SetContent sets the Content field's value.
  8746  func (s *UpdateChannelMessageInput) SetContent(v string) *UpdateChannelMessageInput {
  8747  	s.Content = &v
  8748  	return s
  8749  }
  8750  
  8751  // SetMessageId sets the MessageId field's value.
  8752  func (s *UpdateChannelMessageInput) SetMessageId(v string) *UpdateChannelMessageInput {
  8753  	s.MessageId = &v
  8754  	return s
  8755  }
  8756  
  8757  // SetMetadata sets the Metadata field's value.
  8758  func (s *UpdateChannelMessageInput) SetMetadata(v string) *UpdateChannelMessageInput {
  8759  	s.Metadata = &v
  8760  	return s
  8761  }
  8762  
  8763  type UpdateChannelMessageOutput struct {
  8764  	_ struct{} `type:"structure"`
  8765  
  8766  	// The ARN of the channel.
  8767  	ChannelArn *string `min:"5" type:"string"`
  8768  
  8769  	// The ID string of the message being updated.
  8770  	MessageId *string `min:"1" type:"string"`
  8771  }
  8772  
  8773  // String returns the string representation.
  8774  //
  8775  // API parameter values that are decorated as "sensitive" in the API will not
  8776  // be included in the string output. The member name will be present, but the
  8777  // value will be replaced with "sensitive".
  8778  func (s UpdateChannelMessageOutput) String() string {
  8779  	return awsutil.Prettify(s)
  8780  }
  8781  
  8782  // GoString returns the string representation.
  8783  //
  8784  // API parameter values that are decorated as "sensitive" in the API will not
  8785  // be included in the string output. The member name will be present, but the
  8786  // value will be replaced with "sensitive".
  8787  func (s UpdateChannelMessageOutput) GoString() string {
  8788  	return s.String()
  8789  }
  8790  
  8791  // SetChannelArn sets the ChannelArn field's value.
  8792  func (s *UpdateChannelMessageOutput) SetChannelArn(v string) *UpdateChannelMessageOutput {
  8793  	s.ChannelArn = &v
  8794  	return s
  8795  }
  8796  
  8797  // SetMessageId sets the MessageId field's value.
  8798  func (s *UpdateChannelMessageOutput) SetMessageId(v string) *UpdateChannelMessageOutput {
  8799  	s.MessageId = &v
  8800  	return s
  8801  }
  8802  
  8803  type UpdateChannelOutput struct {
  8804  	_ struct{} `type:"structure"`
  8805  
  8806  	// The ARN of the channel.
  8807  	ChannelArn *string `min:"5" type:"string"`
  8808  }
  8809  
  8810  // String returns the string representation.
  8811  //
  8812  // API parameter values that are decorated as "sensitive" in the API will not
  8813  // be included in the string output. The member name will be present, but the
  8814  // value will be replaced with "sensitive".
  8815  func (s UpdateChannelOutput) String() string {
  8816  	return awsutil.Prettify(s)
  8817  }
  8818  
  8819  // GoString returns the string representation.
  8820  //
  8821  // API parameter values that are decorated as "sensitive" in the API will not
  8822  // be included in the string output. The member name will be present, but the
  8823  // value will be replaced with "sensitive".
  8824  func (s UpdateChannelOutput) GoString() string {
  8825  	return s.String()
  8826  }
  8827  
  8828  // SetChannelArn sets the ChannelArn field's value.
  8829  func (s *UpdateChannelOutput) SetChannelArn(v string) *UpdateChannelOutput {
  8830  	s.ChannelArn = &v
  8831  	return s
  8832  }
  8833  
  8834  type UpdateChannelReadMarkerInput struct {
  8835  	_ struct{} `type:"structure" nopayload:"true"`
  8836  
  8837  	// The ARN of the channel.
  8838  	//
  8839  	// ChannelArn is a required field
  8840  	ChannelArn *string `location:"uri" locationName:"channelArn" min:"5" type:"string" required:"true"`
  8841  
  8842  	// The AppInstanceUserArn of the user that makes the API call.
  8843  	//
  8844  	// ChimeBearer is a required field
  8845  	ChimeBearer *string `location:"header" locationName:"x-amz-chime-bearer" min:"5" type:"string" required:"true"`
  8846  }
  8847  
  8848  // String returns the string representation.
  8849  //
  8850  // API parameter values that are decorated as "sensitive" in the API will not
  8851  // be included in the string output. The member name will be present, but the
  8852  // value will be replaced with "sensitive".
  8853  func (s UpdateChannelReadMarkerInput) String() string {
  8854  	return awsutil.Prettify(s)
  8855  }
  8856  
  8857  // GoString returns the string representation.
  8858  //
  8859  // API parameter values that are decorated as "sensitive" in the API will not
  8860  // be included in the string output. The member name will be present, but the
  8861  // value will be replaced with "sensitive".
  8862  func (s UpdateChannelReadMarkerInput) GoString() string {
  8863  	return s.String()
  8864  }
  8865  
  8866  // Validate inspects the fields of the type to determine if they are valid.
  8867  func (s *UpdateChannelReadMarkerInput) Validate() error {
  8868  	invalidParams := request.ErrInvalidParams{Context: "UpdateChannelReadMarkerInput"}
  8869  	if s.ChannelArn == nil {
  8870  		invalidParams.Add(request.NewErrParamRequired("ChannelArn"))
  8871  	}
  8872  	if s.ChannelArn != nil && len(*s.ChannelArn) < 5 {
  8873  		invalidParams.Add(request.NewErrParamMinLen("ChannelArn", 5))
  8874  	}
  8875  	if s.ChimeBearer == nil {
  8876  		invalidParams.Add(request.NewErrParamRequired("ChimeBearer"))
  8877  	}
  8878  	if s.ChimeBearer != nil && len(*s.ChimeBearer) < 5 {
  8879  		invalidParams.Add(request.NewErrParamMinLen("ChimeBearer", 5))
  8880  	}
  8881  
  8882  	if invalidParams.Len() > 0 {
  8883  		return invalidParams
  8884  	}
  8885  	return nil
  8886  }
  8887  
  8888  // SetChannelArn sets the ChannelArn field's value.
  8889  func (s *UpdateChannelReadMarkerInput) SetChannelArn(v string) *UpdateChannelReadMarkerInput {
  8890  	s.ChannelArn = &v
  8891  	return s
  8892  }
  8893  
  8894  // SetChimeBearer sets the ChimeBearer field's value.
  8895  func (s *UpdateChannelReadMarkerInput) SetChimeBearer(v string) *UpdateChannelReadMarkerInput {
  8896  	s.ChimeBearer = &v
  8897  	return s
  8898  }
  8899  
  8900  type UpdateChannelReadMarkerOutput struct {
  8901  	_ struct{} `type:"structure"`
  8902  
  8903  	// The ARN of the channel.
  8904  	ChannelArn *string `min:"5" type:"string"`
  8905  }
  8906  
  8907  // String returns the string representation.
  8908  //
  8909  // API parameter values that are decorated as "sensitive" in the API will not
  8910  // be included in the string output. The member name will be present, but the
  8911  // value will be replaced with "sensitive".
  8912  func (s UpdateChannelReadMarkerOutput) String() string {
  8913  	return awsutil.Prettify(s)
  8914  }
  8915  
  8916  // GoString returns the string representation.
  8917  //
  8918  // API parameter values that are decorated as "sensitive" in the API will not
  8919  // be included in the string output. The member name will be present, but the
  8920  // value will be replaced with "sensitive".
  8921  func (s UpdateChannelReadMarkerOutput) GoString() string {
  8922  	return s.String()
  8923  }
  8924  
  8925  // SetChannelArn sets the ChannelArn field's value.
  8926  func (s *UpdateChannelReadMarkerOutput) SetChannelArn(v string) *UpdateChannelReadMarkerOutput {
  8927  	s.ChannelArn = &v
  8928  	return s
  8929  }
  8930  
  8931  const (
  8932  	// ChannelMembershipTypeDefault is a ChannelMembershipType enum value
  8933  	ChannelMembershipTypeDefault = "DEFAULT"
  8934  
  8935  	// ChannelMembershipTypeHidden is a ChannelMembershipType enum value
  8936  	ChannelMembershipTypeHidden = "HIDDEN"
  8937  )
  8938  
  8939  // ChannelMembershipType_Values returns all elements of the ChannelMembershipType enum
  8940  func ChannelMembershipType_Values() []string {
  8941  	return []string{
  8942  		ChannelMembershipTypeDefault,
  8943  		ChannelMembershipTypeHidden,
  8944  	}
  8945  }
  8946  
  8947  const (
  8948  	// ChannelMessagePersistenceTypePersistent is a ChannelMessagePersistenceType enum value
  8949  	ChannelMessagePersistenceTypePersistent = "PERSISTENT"
  8950  
  8951  	// ChannelMessagePersistenceTypeNonPersistent is a ChannelMessagePersistenceType enum value
  8952  	ChannelMessagePersistenceTypeNonPersistent = "NON_PERSISTENT"
  8953  )
  8954  
  8955  // ChannelMessagePersistenceType_Values returns all elements of the ChannelMessagePersistenceType enum
  8956  func ChannelMessagePersistenceType_Values() []string {
  8957  	return []string{
  8958  		ChannelMessagePersistenceTypePersistent,
  8959  		ChannelMessagePersistenceTypeNonPersistent,
  8960  	}
  8961  }
  8962  
  8963  const (
  8964  	// ChannelMessageTypeStandard is a ChannelMessageType enum value
  8965  	ChannelMessageTypeStandard = "STANDARD"
  8966  
  8967  	// ChannelMessageTypeControl is a ChannelMessageType enum value
  8968  	ChannelMessageTypeControl = "CONTROL"
  8969  )
  8970  
  8971  // ChannelMessageType_Values returns all elements of the ChannelMessageType enum
  8972  func ChannelMessageType_Values() []string {
  8973  	return []string{
  8974  		ChannelMessageTypeStandard,
  8975  		ChannelMessageTypeControl,
  8976  	}
  8977  }
  8978  
  8979  const (
  8980  	// ChannelModeUnrestricted is a ChannelMode enum value
  8981  	ChannelModeUnrestricted = "UNRESTRICTED"
  8982  
  8983  	// ChannelModeRestricted is a ChannelMode enum value
  8984  	ChannelModeRestricted = "RESTRICTED"
  8985  )
  8986  
  8987  // ChannelMode_Values returns all elements of the ChannelMode enum
  8988  func ChannelMode_Values() []string {
  8989  	return []string{
  8990  		ChannelModeUnrestricted,
  8991  		ChannelModeRestricted,
  8992  	}
  8993  }
  8994  
  8995  const (
  8996  	// ChannelPrivacyPublic is a ChannelPrivacy enum value
  8997  	ChannelPrivacyPublic = "PUBLIC"
  8998  
  8999  	// ChannelPrivacyPrivate is a ChannelPrivacy enum value
  9000  	ChannelPrivacyPrivate = "PRIVATE"
  9001  )
  9002  
  9003  // ChannelPrivacy_Values returns all elements of the ChannelPrivacy enum
  9004  func ChannelPrivacy_Values() []string {
  9005  	return []string{
  9006  		ChannelPrivacyPublic,
  9007  		ChannelPrivacyPrivate,
  9008  	}
  9009  }
  9010  
  9011  const (
  9012  	// ErrorCodeBadRequest is a ErrorCode enum value
  9013  	ErrorCodeBadRequest = "BadRequest"
  9014  
  9015  	// ErrorCodeConflict is a ErrorCode enum value
  9016  	ErrorCodeConflict = "Conflict"
  9017  
  9018  	// ErrorCodeForbidden is a ErrorCode enum value
  9019  	ErrorCodeForbidden = "Forbidden"
  9020  
  9021  	// ErrorCodeNotFound is a ErrorCode enum value
  9022  	ErrorCodeNotFound = "NotFound"
  9023  
  9024  	// ErrorCodePreconditionFailed is a ErrorCode enum value
  9025  	ErrorCodePreconditionFailed = "PreconditionFailed"
  9026  
  9027  	// ErrorCodeResourceLimitExceeded is a ErrorCode enum value
  9028  	ErrorCodeResourceLimitExceeded = "ResourceLimitExceeded"
  9029  
  9030  	// ErrorCodeServiceFailure is a ErrorCode enum value
  9031  	ErrorCodeServiceFailure = "ServiceFailure"
  9032  
  9033  	// ErrorCodeAccessDenied is a ErrorCode enum value
  9034  	ErrorCodeAccessDenied = "AccessDenied"
  9035  
  9036  	// ErrorCodeServiceUnavailable is a ErrorCode enum value
  9037  	ErrorCodeServiceUnavailable = "ServiceUnavailable"
  9038  
  9039  	// ErrorCodeThrottled is a ErrorCode enum value
  9040  	ErrorCodeThrottled = "Throttled"
  9041  
  9042  	// ErrorCodeThrottling is a ErrorCode enum value
  9043  	ErrorCodeThrottling = "Throttling"
  9044  
  9045  	// ErrorCodeUnauthorized is a ErrorCode enum value
  9046  	ErrorCodeUnauthorized = "Unauthorized"
  9047  
  9048  	// ErrorCodeUnprocessable is a ErrorCode enum value
  9049  	ErrorCodeUnprocessable = "Unprocessable"
  9050  
  9051  	// ErrorCodeVoiceConnectorGroupAssociationsExist is a ErrorCode enum value
  9052  	ErrorCodeVoiceConnectorGroupAssociationsExist = "VoiceConnectorGroupAssociationsExist"
  9053  
  9054  	// ErrorCodePhoneNumberAssociationsExist is a ErrorCode enum value
  9055  	ErrorCodePhoneNumberAssociationsExist = "PhoneNumberAssociationsExist"
  9056  )
  9057  
  9058  // ErrorCode_Values returns all elements of the ErrorCode enum
  9059  func ErrorCode_Values() []string {
  9060  	return []string{
  9061  		ErrorCodeBadRequest,
  9062  		ErrorCodeConflict,
  9063  		ErrorCodeForbidden,
  9064  		ErrorCodeNotFound,
  9065  		ErrorCodePreconditionFailed,
  9066  		ErrorCodeResourceLimitExceeded,
  9067  		ErrorCodeServiceFailure,
  9068  		ErrorCodeAccessDenied,
  9069  		ErrorCodeServiceUnavailable,
  9070  		ErrorCodeThrottled,
  9071  		ErrorCodeThrottling,
  9072  		ErrorCodeUnauthorized,
  9073  		ErrorCodeUnprocessable,
  9074  		ErrorCodeVoiceConnectorGroupAssociationsExist,
  9075  		ErrorCodePhoneNumberAssociationsExist,
  9076  	}
  9077  }
  9078  
  9079  const (
  9080  	// SortOrderAscending is a SortOrder enum value
  9081  	SortOrderAscending = "ASCENDING"
  9082  
  9083  	// SortOrderDescending is a SortOrder enum value
  9084  	SortOrderDescending = "DESCENDING"
  9085  )
  9086  
  9087  // SortOrder_Values returns all elements of the SortOrder enum
  9088  func SortOrder_Values() []string {
  9089  	return []string{
  9090  		SortOrderAscending,
  9091  		SortOrderDescending,
  9092  	}
  9093  }