listProtectionGroups method
Retrieves ProtectionGroup objects for the account. You can retrieve all protection groups or you can provide filtering criteria and retrieve just the subset of protection groups that match the criteria.
May throw InternalErrorException.
May throw InvalidPaginationTokenException.
May throw ResourceNotFoundException.
Parameter inclusionFilters :
Narrows the set of protection groups that the call retrieves. You can
retrieve a single protection group by its name and you can retrieve all
protection groups that are configured with specific pattern or aggregation
settings. You can provide up to one criteria per filter type. Shield
Advanced returns the protection groups that exactly match all of the
search criteria that you provide.
Parameter maxResults :
The greatest number of objects that you want Shield Advanced to return to
the list request. Shield Advanced might return fewer objects than you
indicate in this setting, even if more objects are available. If there are
more objects remaining, Shield Advanced will always also return a
NextToken value in the response.
The default setting is 20.
Parameter nextToken :
When you request a list of objects from Shield Advanced, if the response
does not include all of the remaining available objects, Shield Advanced
includes a NextToken value in the response. You can retrieve
the next batch of objects by requesting the list again and providing the
token that was returned by the prior call in your request.
You can indicate the maximum number of objects that you want Shield
Advanced to return for a single call with the MaxResults
setting. Shield Advanced will not return more than MaxResults
objects, but may return fewer, even if more objects are still available.
Whenever more objects remain that Shield Advanced has not yet returned to
you, the response will include a NextToken value.
On your first call to a list operation, leave this setting empty.
Implementation
Future<ListProtectionGroupsResponse> listProtectionGroups({
InclusionProtectionGroupFilters? inclusionFilters,
int? maxResults,
String? nextToken,
}) async {
_s.validateNumRange(
'maxResults',
maxResults,
0,
10000,
);
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'AWSShield_20160616.ListProtectionGroups'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
if (inclusionFilters != null) 'InclusionFilters': inclusionFilters,
if (maxResults != null) 'MaxResults': maxResults,
if (nextToken != null) 'NextToken': nextToken,
},
);
return ListProtectionGroupsResponse.fromJson(jsonResponse.body);
}