describeOrganizationConfigRules method

Future<DescribeOrganizationConfigRulesResponse> describeOrganizationConfigRules({
  1. int? limit,
  2. String? nextToken,
  3. List<String>? organizationConfigRuleNames,
})

Returns a list of organization Config rules.

Limit and next token are not applicable if you specify organization Config rule names. It is only applicable, when you request all the organization Config rules.

For accounts within an organization

If you deploy an organizational rule or conformance pack in an organization administrator account, and then establish a delegated administrator and deploy an organizational rule or conformance pack in the delegated administrator account, you won't be able to see the organizational rule or conformance pack in the organization administrator account from the delegated administrator account or see the organizational rule or conformance pack in the delegated administrator account from organization administrator account. The DescribeOrganizationConfigRules and DescribeOrganizationConformancePacks APIs can only see and interact with the organization-related resource that were deployed from within the account calling those APIs.

May throw InvalidLimitException. May throw InvalidNextTokenException. May throw NoSuchOrganizationConfigRuleException. May throw OrganizationAccessDeniedException.

Parameter limit : The maximum number of organization Config rules returned on each page. If you do no specify a number, Config uses the default. The default is 100.

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

Parameter organizationConfigRuleNames : The names of organization Config rules for which you want details. If you do not specify any names, Config returns details for all your organization Config rules.

Implementation

Future<DescribeOrganizationConfigRulesResponse>
    describeOrganizationConfigRules({
  int? limit,
  String? nextToken,
  List<String>? organizationConfigRuleNames,
}) async {
  _s.validateNumRange(
    'limit',
    limit,
    0,
    100,
  );
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'StarlingDoveService.DescribeOrganizationConfigRules'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      if (limit != null) 'Limit': limit,
      if (nextToken != null) 'NextToken': nextToken,
      if (organizationConfigRuleNames != null)
        'OrganizationConfigRuleNames': organizationConfigRuleNames,
    },
  );

  return DescribeOrganizationConfigRulesResponse.fromJson(jsonResponse.body);
}