listAccountsWithInvalidEffectivePolicy method

Future<ListAccountsWithInvalidEffectivePolicyResponse> listAccountsWithInvalidEffectivePolicy({
  1. required EffectivePolicyType policyType,
  2. int? maxResults,
  3. String? nextToken,
})

Lists all the accounts in an organization that have invalid effective policies. An invalid effective policy is an effective policy that fails validation checks, resulting in the effective policy not being fully enforced on all the intended accounts within an organization.

You can only call this operation from the management account or a member account that is a delegated administrator.

May throw AccessDeniedException. May throw AWSOrganizationsNotInUseException. May throw ConstraintViolationException. May throw EffectivePolicyNotFoundException. May throw InvalidInputException. May throw ServiceException. May throw TooManyRequestsException. May throw UnsupportedAPIEndpointException.

Parameter policyType : The type of policy that you want information about. You can specify one of the following values:

Parameter maxResults : The maximum number of items to return in the response. If more results exist than the specified MaxResults value, a token is included in the response so that you can retrieve the remaining results.

Parameter nextToken : The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value of the previous call's NextToken response to indicate where the output should continue from.

Implementation

Future<ListAccountsWithInvalidEffectivePolicyResponse>
    listAccountsWithInvalidEffectivePolicy({
  required EffectivePolicyType policyType,
  int? maxResults,
  String? nextToken,
}) async {
  _s.validateNumRange(
    'maxResults',
    maxResults,
    1,
    20,
  );
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target':
        'AWSOrganizationsV20161128.ListAccountsWithInvalidEffectivePolicy'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'PolicyType': policyType.value,
      if (maxResults != null) 'MaxResults': maxResults,
      if (nextToken != null) 'NextToken': nextToken,
    },
  );

  return ListAccountsWithInvalidEffectivePolicyResponse.fromJson(
      jsonResponse.body);
}