Skip to content

list_namespaces async

list_namespaces(
    table_bucket_arn: TableBucketARN,
    *,
    config_overrides: Optional[AsyncS3TablesClientConfig] = None,
    prefix: Optional[str] = None,
    continuation_token: Optional[NextToken] = None,
    max_namespaces: Optional[ListNamespacesLimit] = None,
) -> ListNamespacesResponse

Lists the namespaces within a table bucket. For more information, see Table namespaces in the Amazon Simple Storage Service User Guide.

Permissions

You must have the s3tables:ListNamespaces permission to use this operation.

Parameters:

  • table_bucket_arn (TableBucketARN) –

    The Amazon Resource Name (ARN) of the table bucket.

  • prefix (Optional[str], default: None ) –

    The prefix of the namespaces.

  • continuation_token (Optional[NextToken], default: None ) –

    ContinuationToken indicates to Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key. You can use this ContinuationToken for pagination of the list results.

  • max_namespaces (Optional[ListNamespacesLimit], default: None ) –

    The maximum number of namespaces to return in the list.

Raises:

Source code in docs_src/capo_s3tables/_services/async_s3_tables.py
async def list_namespaces(
    self,
    table_bucket_arn: "capo_s3tables.types.table_bucket_arn.TableBucketARN",
    *,
    config_overrides: Optional[AsyncS3TablesClientConfig] = None,
    prefix: Optional[str] = None,
    continuation_token: Optional["capo_s3tables.types.next_token.NextToken"] = None,
    max_namespaces: Optional[
        "capo_s3tables.types.list_namespaces_limit.ListNamespacesLimit"
    ] = None,
) -> "capo_s3tables.types.list_namespaces_response.ListNamespacesResponse":
    """<p>Lists the namespaces within a table bucket. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-namespace.html">Table namespaces</a> in the <i>Amazon Simple Storage Service User Guide</i>.</p> <dl> <dt>Permissions</dt> <dd> <p>You must have the <code>s3tables:ListNamespaces</code> permission to use this operation. </p> </dd> </dl>

    Args:
        table_bucket_arn: <p>The Amazon Resource Name (ARN) of the table bucket.</p>
        prefix: <p>The prefix of the namespaces.</p>
        continuation_token: <p> <code>ContinuationToken</code> indicates to Amazon S3 that the list is being continued on this bucket with a token. <code>ContinuationToken</code> is obfuscated and is not a real key. You can use this <code>ContinuationToken</code> for pagination of the list results.</p>
        max_namespaces: <p>The maximum number of namespaces to return in the list.</p>

    Raises:
        capo_s3tables.errors.access_denied_exception.AccessDeniedException: <p>The action cannot be performed because you do not have the required permission.</p>
        capo_s3tables.errors.bad_request_exception.BadRequestException: <p>The request is invalid or malformed.</p>
        capo_s3tables.errors.conflict_exception.ConflictException: <p>The request failed because there is a conflict with a previous write. You can retry the request.</p>
        capo_s3tables.errors.forbidden_exception.ForbiddenException: <p>The caller isn't authorized to make the request.</p>
        capo_s3tables.errors.internal_server_error_exception.InternalServerErrorException: <p>The request failed due to an internal server error.</p>
        capo_s3tables.errors.not_found_exception.NotFoundException: <p>The request was rejected because the specified resource could not be found.</p>
        capo_s3tables.errors.too_many_requests_exception.TooManyRequestsException: <p>The limit on the number of requests per second was exceeded.</p>
        capo_s3tables.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_s3tables.types.list_namespaces_request.ListNamespacesRequest]",
    ) -> AsyncOperationResponse[
        "capo_s3tables.types.list_namespaces_response.ListNamespacesResponse"
    ]:
        import capo_s3tables._operations.s3_table_buckets.list_namespaces

        (
            output,
            http_response,
        ) = await capo_s3tables._operations.s3_table_buckets.list_namespaces.async_list_namespaces(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("ListNamespaces")
    )
    input_: capo_s3tables.types.list_namespaces_request.ListNamespacesRequest = {
        "table_bucket_arn": table_bucket_arn
    }
    if prefix is not None:
        input_["prefix"] = prefix
    if continuation_token is not None:
        input_["continuation_token"] = continuation_token
    if max_namespaces is not None:
        input_["max_namespaces"] = max_namespaces

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output