getInsightSelectors method

Future<GetInsightSelectorsResponse> getInsightSelectors({
  1. required String trailName,
})

Describes the settings for the Insights event selectors that you configured for your trail. GetInsightSelectors shows if CloudTrail Insights event logging is enabled on the trail, and if it is, which insight types are enabled. If you run GetInsightSelectors on a trail that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException

For more information, see Logging CloudTrail Insights Events for Trails in the AWS CloudTrail User Guide.

May throw TrailNotFoundException. May throw InvalidTrailNameException. May throw UnsupportedOperationException. May throw OperationNotPermittedException. May throw InsightNotEnabledException.

Parameter trailName : Specifies the name of the trail or trail ARN. If you specify a trail name, the string must meet the following requirements:

  • Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)
  • Start with a letter or number, and end with a letter or number
  • Be between 3 and 128 characters
  • Have no adjacent periods, underscores or dashes. Names like my-_namespace and my--namespace are not valid.
  • Not be in IP address format (for example, 192.168.5.4)
If you specify a trail ARN, it must be in the format:

arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail

Implementation

Future<GetInsightSelectorsResponse> getInsightSelectors({
  required String trailName,
}) async {
  ArgumentError.checkNotNull(trailName, 'trailName');
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target':
        'com.amazonaws.cloudtrail.v20131101.CloudTrail_20131101.GetInsightSelectors'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'TrailName': trailName,
    },
  );

  return GetInsightSelectorsResponse.fromJson(jsonResponse.body);
}