aws_sdk_costoptimizationhub/client/
get_recommendation.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`GetRecommendation`](crate::operation::get_recommendation::builders::GetRecommendationFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`recommendation_id(impl Into<String>)`](crate::operation::get_recommendation::builders::GetRecommendationFluentBuilder::recommendation_id) / [`set_recommendation_id(Option<String>)`](crate::operation::get_recommendation::builders::GetRecommendationFluentBuilder::set_recommendation_id):<br>required: **true**<br><p>The ID for the recommendation.</p><br>
7    /// - On success, responds with [`GetRecommendationOutput`](crate::operation::get_recommendation::GetRecommendationOutput) with field(s):
8    ///   - [`recommendation_id(Option<String>)`](crate::operation::get_recommendation::GetRecommendationOutput::recommendation_id): <p>The ID for the recommendation.</p>
9    ///   - [`resource_id(Option<String>)`](crate::operation::get_recommendation::GetRecommendationOutput::resource_id): <p>The unique identifier for the resource. This is the same as the Amazon Resource Name (ARN), if available.</p>
10    ///   - [`resource_arn(Option<String>)`](crate::operation::get_recommendation::GetRecommendationOutput::resource_arn): <p>The Amazon Resource Name (ARN) of the resource.</p>
11    ///   - [`account_id(Option<String>)`](crate::operation::get_recommendation::GetRecommendationOutput::account_id): <p>The account to which the recommendation applies.</p>
12    ///   - [`currency_code(Option<String>)`](crate::operation::get_recommendation::GetRecommendationOutput::currency_code): <p>The currency code used for the recommendation.</p>
13    ///   - [`recommendation_lookback_period_in_days(Option<i32>)`](crate::operation::get_recommendation::GetRecommendationOutput::recommendation_lookback_period_in_days): <p>The lookback period that's used to generate the recommendation.</p>
14    ///   - [`cost_calculation_lookback_period_in_days(Option<i32>)`](crate::operation::get_recommendation::GetRecommendationOutput::cost_calculation_lookback_period_in_days): <p>The lookback period used to calculate cost impact for a recommendation.</p>
15    ///   - [`estimated_savings_percentage(Option<f64>)`](crate::operation::get_recommendation::GetRecommendationOutput::estimated_savings_percentage): <p>The estimated savings percentage relative to the total cost over the cost calculation lookback period.</p>
16    ///   - [`estimated_savings_over_cost_calculation_lookback_period(Option<f64>)`](crate::operation::get_recommendation::GetRecommendationOutput::estimated_savings_over_cost_calculation_lookback_period): <p>The estimated savings amount over the lookback period used to calculate cost impact for a recommendation.</p>
17    ///   - [`current_resource_type(Option<ResourceType>)`](crate::operation::get_recommendation::GetRecommendationOutput::current_resource_type): <p>The type of resource.</p>
18    ///   - [`recommended_resource_type(Option<ResourceType>)`](crate::operation::get_recommendation::GetRecommendationOutput::recommended_resource_type): <p>The resource type of the recommendation.</p>
19    ///   - [`region(Option<String>)`](crate::operation::get_recommendation::GetRecommendationOutput::region): <p>The Amazon Web Services Region of the resource.</p>
20    ///   - [`source(Option<Source>)`](crate::operation::get_recommendation::GetRecommendationOutput::source): <p>The source of the recommendation.</p>
21    ///   - [`last_refresh_timestamp(Option<DateTime>)`](crate::operation::get_recommendation::GetRecommendationOutput::last_refresh_timestamp): <p>The time when the recommendation was last generated.</p>
22    ///   - [`estimated_monthly_savings(Option<f64>)`](crate::operation::get_recommendation::GetRecommendationOutput::estimated_monthly_savings): <p>The estimated monthly savings amount for the recommendation.</p>
23    ///   - [`estimated_monthly_cost(Option<f64>)`](crate::operation::get_recommendation::GetRecommendationOutput::estimated_monthly_cost): <p>The estimated monthly cost of the current resource. For Reserved Instances and Savings Plans, it refers to the cost for eligible usage.</p>
24    ///   - [`implementation_effort(Option<ImplementationEffort>)`](crate::operation::get_recommendation::GetRecommendationOutput::implementation_effort): <p>The effort required to implement the recommendation.</p>
25    ///   - [`restart_needed(Option<bool>)`](crate::operation::get_recommendation::GetRecommendationOutput::restart_needed): <p>Whether or not implementing the recommendation requires a restart.</p>
26    ///   - [`action_type(Option<ActionType>)`](crate::operation::get_recommendation::GetRecommendationOutput::action_type): <p>The type of action you can take by adopting the recommendation.</p>
27    ///   - [`rollback_possible(Option<bool>)`](crate::operation::get_recommendation::GetRecommendationOutput::rollback_possible): <p>Whether or not implementing the recommendation can be rolled back.</p>
28    ///   - [`current_resource_details(Option<ResourceDetails>)`](crate::operation::get_recommendation::GetRecommendationOutput::current_resource_details): <p>The details for the resource.</p>
29    ///   - [`recommended_resource_details(Option<ResourceDetails>)`](crate::operation::get_recommendation::GetRecommendationOutput::recommended_resource_details): <p>The details about the recommended resource.</p>
30    ///   - [`tags(Option<Vec::<Tag>>)`](crate::operation::get_recommendation::GetRecommendationOutput::tags): <p>A list of tags associated with the resource for which the recommendation exists.</p>
31    /// - On failure, responds with [`SdkError<GetRecommendationError>`](crate::operation::get_recommendation::GetRecommendationError)
32    pub fn get_recommendation(&self) -> crate::operation::get_recommendation::builders::GetRecommendationFluentBuilder {
33        crate::operation::get_recommendation::builders::GetRecommendationFluentBuilder::new(self.handle.clone())
34    }
35}