

# Recommendation
<a name="API_Recommendation"></a>

A Recommendation for an Account

## Contents
<a name="API_Recommendation_Contents"></a>

 ** arn **   <a name="ta-Type-Recommendation-arn"></a>
The ARN of the Recommendation  
Type: String  
Length Constraints: Minimum length of 20. Maximum length of 2048.  
Pattern: `arn:[\w-]+:trustedadvisor::\d{12}:recommendation\/[\w-]+`   
Required: Yes

 ** description **   <a name="ta-Type-Recommendation-description"></a>
A description for AWS Trusted Advisor recommendations  
Type: String  
Required: Yes

 ** id **   <a name="ta-Type-Recommendation-id"></a>
The ID which identifies where the Recommendation was produced  
Type: String  
Required: Yes

 ** name **   <a name="ta-Type-Recommendation-name"></a>
The name of the AWS Trusted Advisor Recommendation  
Type: String  
Required: Yes

 ** pillars **   <a name="ta-Type-Recommendation-pillars"></a>
The Pillars that the Recommendation is optimizing  
Type: Array of strings  
Array Members: Minimum number of 1 item. Maximum number of 50 items.  
Valid Values: `cost_optimizing | performance | security | service_limits | fault_tolerance | operational_excellence`   
Required: Yes

 ** resourcesAggregates **   <a name="ta-Type-Recommendation-resourcesAggregates"></a>
An aggregation of all resources  
Type: [RecommendationResourcesAggregates](API_RecommendationResourcesAggregates.md) object  
Required: Yes

 ** source **   <a name="ta-Type-Recommendation-source"></a>
The source of the Recommendation  
Type: String  
Valid Values: `aws_config | compute_optimizer | cost_explorer | lse | manual | pse | rds | resilience | resilience_hub | security_hub | stir | ta_check | well_architected | cost_optimization_hub`   
Required: Yes

 ** status **   <a name="ta-Type-Recommendation-status"></a>
The status of the Recommendation  
Type: String  
Valid Values: `ok | warning | error`   
Required: Yes

 ** type **   <a name="ta-Type-Recommendation-type"></a>
Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority  
Type: String  
Valid Values: `standard | priority`   
Required: Yes

 ** awsServices **   <a name="ta-Type-Recommendation-awsServices"></a>
The AWS Services that the Recommendation applies to  
Type: Array of strings  
Length Constraints: Minimum length of 2. Maximum length of 30.  
Required: No

 ** checkArn **   <a name="ta-Type-Recommendation-checkArn"></a>
The AWS Trusted Advisor Check ARN that relates to the Recommendation  
Type: String  
Required: No

 ** createdAt **   <a name="ta-Type-Recommendation-createdAt"></a>
When the Recommendation was created, if created by AWS Trusted Advisor Priority  
Type: Timestamp  
Required: No

 ** createdBy **   <a name="ta-Type-Recommendation-createdBy"></a>
The creator, if created by AWS Trusted Advisor Priority  
Type: String  
Required: No

 ** lastUpdatedAt **   <a name="ta-Type-Recommendation-lastUpdatedAt"></a>
When the Recommendation was last updated  
Type: Timestamp  
Required: No

 ** lifecycleStage **   <a name="ta-Type-Recommendation-lifecycleStage"></a>
The lifecycle stage from AWS Trusted Advisor Priority  
Type: String  
Valid Values: `in_progress | pending_response | dismissed | resolved`   
Required: No

 ** pillarSpecificAggregates **   <a name="ta-Type-Recommendation-pillarSpecificAggregates"></a>
The pillar aggregations for cost savings  
Type: [RecommendationPillarSpecificAggregates](API_RecommendationPillarSpecificAggregates.md) object  
Required: No

 ** resolvedAt **   <a name="ta-Type-Recommendation-resolvedAt"></a>
When the Recommendation was resolved  
Type: Timestamp  
Required: No

 ** statusReason **   <a name="ta-Type-Recommendation-statusReason"></a>
This attribute provides additional details about potential discrepancies in check status determination.  
Type: String  
Valid Values: `no_data_ok`   
Required: No

 ** updatedOnBehalfOf **   <a name="ta-Type-Recommendation-updatedOnBehalfOf"></a>
The person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority   
Type: String  
Required: No

 ** updatedOnBehalfOfJobTitle **   <a name="ta-Type-Recommendation-updatedOnBehalfOfJobTitle"></a>
The job title of the person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority   
Type: String  
Required: No

 ** updateReason **   <a name="ta-Type-Recommendation-updateReason"></a>
Reason for the lifecycle stage change  
Type: String  
Length Constraints: Minimum length of 10. Maximum length of 4096.  
Pattern: `[\s\S]*`   
Required: No

 ** updateReasonCode **   <a name="ta-Type-Recommendation-updateReasonCode"></a>
Reason code for the lifecycle state change  
Type: String  
Valid Values: `non_critical_account | temporary_account | valid_business_case | other_methods_available | low_priority | not_applicable | other`   
Required: No

## See Also
<a name="API_Recommendation_SeeAlso"></a>

For more information about using this API in one of the language-specific AWS SDKs, see the following:
+  [AWS SDK for C\+\+](https://docs.aws.amazon.com/goto/SdkForCpp/trustedadvisor-2022-09-15/Recommendation) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/trustedadvisor-2022-09-15/Recommendation) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/trustedadvisor-2022-09-15/Recommendation) 