startResourceScan method

Future<StartResourceScanOutput> startResourceScan({
  1. String? clientRequestToken,
  2. List<ScanFilter>? scanFilters,
})

Starts a scan of the resources in this account in this Region. You can the status of a scan using the ListResourceScans API action.

May throw ResourceScanInProgressException. May throw ResourceScanLimitExceededException.

Parameter clientRequestToken : A unique identifier for this StartResourceScan request. Specify this token if you plan to retry requests so that CloudFormation knows that you're not attempting to start a new resource scan.

Parameter scanFilters : The scan filters to use.

Implementation

Future<StartResourceScanOutput> startResourceScan({
  String? clientRequestToken,
  List<ScanFilter>? scanFilters,
}) async {
  final $request = <String, String>{
    if (clientRequestToken != null) 'ClientRequestToken': clientRequestToken,
    if (scanFilters != null)
      if (scanFilters.isEmpty)
        'ScanFilters': ''
      else
        for (var i1 = 0; i1 < scanFilters.length; i1++)
          for (var e3 in scanFilters[i1].toQueryMap().entries)
            'ScanFilters.member.${i1 + 1}.${e3.key}': e3.value,
  };
  final $result = await _protocol.send(
    $request,
    action: 'StartResourceScan',
    version: '2010-05-15',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    resultWrapper: 'StartResourceScanResult',
  );
  return StartResourceScanOutput.fromXml($result);
}