listDirectoryBuckets method

Future<ListDirectoryBucketsOutput> listDirectoryBuckets({
  1. String? continuationToken,
  2. int? maxDirectoryBuckets,
})

Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the request. For more information about directory buckets, see Directory buckets in the Amazon S3 User Guide.

Permissions
You must have the s3express:ListAllMyDirectoryBuckets permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

HTTP Host header syntax
Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

Parameter continuationToken : ContinuationToken indicates to Amazon S3 that the list is being continued on buckets in this account with a token. ContinuationToken is obfuscated and is not a real bucket name. You can use this ContinuationToken for the pagination of the list results.

Parameter maxDirectoryBuckets : Maximum number of buckets to be returned in response. When the number is more than the count of buckets that are owned by an Amazon Web Services account, return all the buckets in response.

Implementation

Future<ListDirectoryBucketsOutput> listDirectoryBuckets({
  String? continuationToken,
  int? maxDirectoryBuckets,
}) async {
  _s.validateNumRange(
    'maxDirectoryBuckets',
    maxDirectoryBuckets,
    0,
    1000,
  );
  final $query = <String, List<String>>{
    if (continuationToken != null) 'continuation-token': [continuationToken],
    if (maxDirectoryBuckets != null)
      'max-directory-buckets': [maxDirectoryBuckets.toString()],
  };
  final $result = await _protocol.send(
    method: 'GET',
    requestUri: '/?x-id=ListDirectoryBuckets',
    queryParams: $query,
    exceptionFnMap: _exceptionFns,
  );
  return ListDirectoryBucketsOutput.fromXml($result.body);
}