// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`DescribeUsageLimits`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder) operation.
/// This operation supports pagination; See [`into_paginator()`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::into_paginator).
///
/// - The fluent builder is configurable:
/// - [`usage_limit_id(impl Into<String>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::usage_limit_id) / [`set_usage_limit_id(Option<String>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::set_usage_limit_id):<br>required: **false**<br><p>The identifier of the usage limit to describe.</p><br>
/// - [`cluster_identifier(impl Into<String>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::cluster_identifier) / [`set_cluster_identifier(Option<String>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::set_cluster_identifier):<br>required: **false**<br><p>The identifier of the cluster for which you want to describe usage limits.</p><br>
/// - [`feature_type(UsageLimitFeatureType)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::feature_type) / [`set_feature_type(Option<UsageLimitFeatureType>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::set_feature_type):<br>required: **false**<br><p>The feature type for which you want to describe usage limits.</p><br>
/// - [`max_records(i32)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::max_records) / [`set_max_records(Option<i32>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::set_max_records):<br>required: **false**<br><p>The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified <code>MaxRecords</code> value, a value is returned in a <code>marker</code> field of the response. You can retrieve the next set of records by retrying the command with the returned marker value. </p> <p>Default: <code>100</code> </p> <p>Constraints: minimum 20, maximum 100.</p><br>
/// - [`marker(impl Into<String>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::marker) / [`set_marker(Option<String>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::set_marker):<br>required: **false**<br><p>An optional parameter that specifies the starting point to return a set of response records. When the results of a <code>DescribeUsageLimits</code> request exceed the value specified in <code>MaxRecords</code>, Amazon Web Services returns a value in the <code>Marker</code> field of the response. You can retrieve the next set of response records by providing the returned marker value in the <code>Marker</code> parameter and retrying the request. </p><br>
/// - [`tag_keys(impl Into<String>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::tag_keys) / [`set_tag_keys(Option<Vec::<String>>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::set_tag_keys):<br>required: **false**<br><p>A tag key or keys for which you want to return all matching usage limit objects that are associated with the specified key or keys. For example, suppose that you have parameter groups that are tagged with keys called <code>owner</code> and <code>environment</code>. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the usage limit objects have either or both of these tag keys associated with them.</p><br>
/// - [`tag_values(impl Into<String>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::tag_values) / [`set_tag_values(Option<Vec::<String>>)`](crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::set_tag_values):<br>required: **false**<br><p>A tag value or values for which you want to return all matching usage limit objects that are associated with the specified tag value or values. For example, suppose that you have parameter groups that are tagged with values called <code>admin</code> and <code>test</code>. If you specify both of these tag values in the request, Amazon Redshift returns a response with the usage limit objects that have either or both of these tag values associated with them.</p><br>
/// - On success, responds with [`DescribeUsageLimitsOutput`](crate::operation::describe_usage_limits::DescribeUsageLimitsOutput) with field(s):
/// - [`usage_limits(Option<Vec::<UsageLimit>>)`](crate::operation::describe_usage_limits::DescribeUsageLimitsOutput::usage_limits): <p>Contains the output from the <code>DescribeUsageLimits</code> action. </p>
/// - [`marker(Option<String>)`](crate::operation::describe_usage_limits::DescribeUsageLimitsOutput::marker): <p>A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the <code>Marker</code> parameter and retrying the command. If the <code>Marker</code> field is empty, all response records have been retrieved for the request. </p>
/// - On failure, responds with [`SdkError<DescribeUsageLimitsError>`](crate::operation::describe_usage_limits::DescribeUsageLimitsError)
pub fn describe_usage_limits(&self) -> crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder {
crate::operation::describe_usage_limits::builders::DescribeUsageLimitsFluentBuilder::new(self.handle.clone())
}
}