updateMicrosoftTeamsChannelConfiguration method

Future<UpdateTeamsChannelConfigurationResult> updateMicrosoftTeamsChannelConfiguration({
  1. required String channelId,
  2. required String chatConfigurationArn,
  3. String? channelName,
  4. List<String>? guardrailPolicyArns,
  5. String? iamRoleArn,
  6. String? loggingLevel,
  7. List<String>? snsTopicArns,
  8. bool? userAuthorizationRequired,
})

Updates an Microsoft Teams channel configuration.

May throw InvalidParameterException. May throw InvalidRequestException. May throw ResourceNotFoundException. May throw UpdateTeamsChannelConfigurationException.

Parameter channelId : The ID of the Microsoft Teams channel.

Parameter chatConfigurationArn : The Amazon Resource Name (ARN) of the TeamsChannelConfiguration to update.

Parameter channelName : The name of the Microsoft Teams channel.

Parameter guardrailPolicyArns : The list of IAM policy ARNs that are applied as channel guardrails. The AWS managed AdministratorAccess policy is applied by default if this is not set.

Parameter iamRoleArn : A user-defined role that AWS Chatbot assumes. This is not the service-linked role.

For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide.

Parameter loggingLevel : Logging levels include ERROR, INFO, or NONE.

Parameter snsTopicArns : The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications to AWS Chatbot.

Parameter userAuthorizationRequired : Enables use of a user role requirement in your chat configuration.

Implementation

Future<UpdateTeamsChannelConfigurationResult>
    updateMicrosoftTeamsChannelConfiguration({
  required String channelId,
  required String chatConfigurationArn,
  String? channelName,
  List<String>? guardrailPolicyArns,
  String? iamRoleArn,
  String? loggingLevel,
  List<String>? snsTopicArns,
  bool? userAuthorizationRequired,
}) async {
  final $payload = <String, dynamic>{
    'ChannelId': channelId,
    'ChatConfigurationArn': chatConfigurationArn,
    if (channelName != null) 'ChannelName': channelName,
    if (guardrailPolicyArns != null)
      'GuardrailPolicyArns': guardrailPolicyArns,
    if (iamRoleArn != null) 'IamRoleArn': iamRoleArn,
    if (loggingLevel != null) 'LoggingLevel': loggingLevel,
    if (snsTopicArns != null) 'SnsTopicArns': snsTopicArns,
    if (userAuthorizationRequired != null)
      'UserAuthorizationRequired': userAuthorizationRequired,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/update-ms-teams-channel-configuration',
    exceptionFnMap: _exceptionFns,
  );
  return UpdateTeamsChannelConfigurationResult.fromJson(response);
}