describeConformancePackCompliance method

Future<DescribeConformancePackComplianceResponse> describeConformancePackCompliance({
  1. required String conformancePackName,
  2. ConformancePackComplianceFilters? filters,
  3. int? limit,
  4. String? nextToken,
})

Returns compliance details for each rule in that conformance pack.

May throw InvalidLimitException. May throw InvalidNextTokenException. May throw InvalidParameterValueException. May throw NoSuchConfigRuleInConformancePackException. May throw NoSuchConformancePackException.

Parameter conformancePackName : Name of the conformance pack.

Parameter filters : A ConformancePackComplianceFilters object.

Parameter limit : The maximum number of AWS Config rules within a conformance pack are returned on each page.

Parameter nextToken : The nextToken string returned in a previous request that you use to request the next page of results in a paginated response.

Implementation

Future<DescribeConformancePackComplianceResponse>
    describeConformancePackCompliance({
  required String conformancePackName,
  ConformancePackComplianceFilters? filters,
  int? limit,
  String? nextToken,
}) async {
  ArgumentError.checkNotNull(conformancePackName, 'conformancePackName');
  _s.validateStringLength(
    'conformancePackName',
    conformancePackName,
    1,
    256,
    isRequired: true,
  );
  _s.validateNumRange(
    'limit',
    limit,
    0,
    1000,
  );
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'StarlingDoveService.DescribeConformancePackCompliance'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'ConformancePackName': conformancePackName,
      if (filters != null) 'Filters': filters,
      if (limit != null) 'Limit': limit,
      if (nextToken != null) 'NextToken': nextToken,
    },
  );

  return DescribeConformancePackComplianceResponse.fromJson(
      jsonResponse.body);
}