listCertificates method

Future<ListCertificatesResponse> listCertificates({
  1. List<CertificateKeyPairOrigin>? certificateKeyPairOrigins,
  2. List<CertificateStatus>? certificateStatuses,
  3. Filters? includes,
  4. int? maxItems,
  5. String? nextToken,
  6. SortBy? sortBy,
  7. SortOrder? sortOrder,
})

Retrieves a list of certificate ARNs and domain names. You can request that only certificates that match a specific status be listed. You can also filter by specific attributes of the certificate. Default filtering returns only RSA_2048 certificates. For more information, see Filters.

May throw InvalidArgsException. May throw ValidationException.

Parameter certificateKeyPairOrigins : Filter the certificate list by certificate key pair origin. Specify one or more CertificateKeyPairOrigin values. Default filtering returns only certificates with key pair origin of AWS_MANAGED and CUSTOMER_PROVIDED.

Parameter certificateStatuses : Filter the certificate list by status value.

Parameter includes : Filter the certificate list. For more information, see the Filters structure.

Parameter maxItems : Use this parameter when paginating results to specify the maximum number of items to return in the response. If additional items exist beyond the number you specify, the NextToken element is sent in the response. Use this NextToken value in a subsequent request to retrieve additional items.

Parameter nextToken : Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of NextToken from the response you just received.

Parameter sortBy : Specifies the field to sort results by. If you specify SortBy, you must also specify SortOrder.

Parameter sortOrder : Specifies the order of sorted results. If you specify SortOrder, you must also specify SortBy.

Implementation

Future<ListCertificatesResponse> listCertificates({
  List<CertificateKeyPairOrigin>? certificateKeyPairOrigins,
  List<CertificateStatus>? certificateStatuses,
  Filters? includes,
  int? maxItems,
  String? nextToken,
  SortBy? sortBy,
  SortOrder? sortOrder,
}) async {
  _s.validateNumRange(
    'maxItems',
    maxItems,
    1,
    1000,
  );
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'CertificateManager.ListCertificates'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      if (certificateKeyPairOrigins != null)
        'CertificateKeyPairOrigins':
            certificateKeyPairOrigins.map((e) => e.value).toList(),
      if (certificateStatuses != null)
        'CertificateStatuses':
            certificateStatuses.map((e) => e.value).toList(),
      if (includes != null) 'Includes': includes,
      if (maxItems != null) 'MaxItems': maxItems,
      if (nextToken != null) 'NextToken': nextToken,
      if (sortBy != null) 'SortBy': sortBy.value,
      if (sortOrder != null) 'SortOrder': sortOrder.value,
    },
    endpoint: _resolveEndpoint(
      serviceType: 'ACM',
    ),
  );

  return ListCertificatesResponse.fromJson(jsonResponse.body);
}