aws_sdk_costexplorer/client/get_savings_plans_utilization_details.rs
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`GetSavingsPlansUtilizationDetails`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder) operation.
/// This operation supports pagination; See [`into_paginator()`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::into_paginator).
///
/// - The fluent builder is configurable:
/// - [`time_period(DateInterval)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::time_period) / [`set_time_period(Option<DateInterval>)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::set_time_period):<br>required: **true**<br><p>The time period that you want the usage and costs for. The <code>Start</code> date must be within 13 months. The <code>End</code> date must be after the <code>Start</code> date, and before the current date. Future dates can't be used as an <code>End</code> date.</p><br>
/// - [`filter(Expression)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::filter) / [`set_filter(Option<Expression>)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::set_filter):<br>required: **false**<br><p>Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:</p> <ul> <li> <p><code>LINKED_ACCOUNT</code></p></li> <li> <p><code>SAVINGS_PLAN_ARN</code></p></li> <li> <p><code>REGION</code></p></li> <li> <p><code>PAYMENT_OPTION</code></p></li> <li> <p><code>INSTANCE_TYPE_FAMILY</code></p></li> </ul> <p><code>GetSavingsPlansUtilizationDetails</code> uses the same <a href="https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html">Expression</a> object as the other operations, but only <code>AND</code> is supported among each dimension.</p><br>
/// - [`data_type(SavingsPlansDataType)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::data_type) / [`set_data_type(Option<Vec::<SavingsPlansDataType>>)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::set_data_type):<br>required: **false**<br><p>The data type.</p><br>
/// - [`next_token(impl Into<String>)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::next_token) / [`set_next_token(Option<String>)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::set_next_token):<br>required: **false**<br><p>The token to retrieve the next set of results. Amazon Web Services provides the token when the response from a previous call has more results than the maximum page size.</p><br>
/// - [`max_results(i32)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::max_results) / [`set_max_results(Option<i32>)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::set_max_results):<br>required: **false**<br><p>The number of items to be returned in a response. The default is <code>20</code>, with a minimum value of <code>1</code>.</p><br>
/// - [`sort_by(SortDefinition)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::sort_by) / [`set_sort_by(Option<SortDefinition>)`](crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::set_sort_by):<br>required: **false**<br><p>The value that you want to sort the data by.</p> <p>The following values are supported for <code>Key</code>:</p> <ul> <li> <p><code>UtilizationPercentage</code></p></li> <li> <p><code>TotalCommitment</code></p></li> <li> <p><code>UsedCommitment</code></p></li> <li> <p><code>UnusedCommitment</code></p></li> <li> <p><code>NetSavings</code></p></li> <li> <p><code>AmortizedRecurringCommitment</code></p></li> <li> <p><code>AmortizedUpfrontCommitment</code></p></li> </ul> <p>The supported values for <code>SortOrder</code> are <code>ASCENDING</code> and <code>DESCENDING</code>.</p><br>
/// - On success, responds with [`GetSavingsPlansUtilizationDetailsOutput`](crate::operation::get_savings_plans_utilization_details::GetSavingsPlansUtilizationDetailsOutput) with field(s):
/// - [`savings_plans_utilization_details(Vec::<SavingsPlansUtilizationDetail>)`](crate::operation::get_savings_plans_utilization_details::GetSavingsPlansUtilizationDetailsOutput::savings_plans_utilization_details): <p>Retrieves a single daily or monthly Savings Plans utilization rate and details for your account.</p>
/// - [`total(Option<SavingsPlansUtilizationAggregates>)`](crate::operation::get_savings_plans_utilization_details::GetSavingsPlansUtilizationDetailsOutput::total): <p>The total Savings Plans utilization, regardless of time period.</p>
/// - [`time_period(Option<DateInterval>)`](crate::operation::get_savings_plans_utilization_details::GetSavingsPlansUtilizationDetailsOutput::time_period): <p>The time period of the request.</p>
/// - [`next_token(Option<String>)`](crate::operation::get_savings_plans_utilization_details::GetSavingsPlansUtilizationDetailsOutput::next_token): <p>The token to retrieve the next set of results. Amazon Web Services provides the token when the response from a previous call has more results than the maximum page size.</p>
/// - On failure, responds with [`SdkError<GetSavingsPlansUtilizationDetailsError>`](crate::operation::get_savings_plans_utilization_details::GetSavingsPlansUtilizationDetailsError)
pub fn get_savings_plans_utilization_details(
&self,
) -> crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder {
crate::operation::get_savings_plans_utilization_details::builders::GetSavingsPlansUtilizationDetailsFluentBuilder::new(self.handle.clone())
}
}