---
title: "GET /v1/recommendations/{recommendationIdentifier}"
method: GET
path: "/v1/recommendations/{recommendationIdentifier}"
---

# GET /v1/recommendations/{recommendationIdentifier}

`GET /v1/recommendations/{recommendationIdentifier}`

Get a specific Recommendation. This API provides global recommendations, eliminating the need to call the API in each AWS Region.

## Path parameters

- `recommendationIdentifier` string, required

## Query parameters

- `language` 'en' | 'ja' | 'zh' | 'fr' | 'de' | 'ko' | 'zh_TW' | 'it' | 'es' | 'pt_BR' | 'id'

## Response `200`

Success

- GetRecommendationResponse
  - `recommendation` object — The Recommendation
    - `id` string, required — The ID which identifies where the Recommendation was produced
    - `type` 'standard' | 'priority', required — Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority
    - `checkArn` string — The AWS Trusted Advisor Check ARN that relates to the Recommendation
    - `status` 'ok' | 'warning' | 'error', required — The status of the Recommendation
    - `lifecycleStage` 'in_progress' | 'pending_response' | 'dismissed' | 'resolved' — The lifecycle stage from AWS Trusted Advisor Priority
    - `pillars` RecommendationPillar[], required — The Pillars that the Recommendation is optimizing
    - `source` 'aws_config' | 'compute_optimizer' | 'cost_explorer' | 'lse' | 'manual' | 'pse' | 'rds' | 'resilience' | 'resilience_hub' | 'security_hub' | 'stir' | 'ta_check' | 'well_architected' | 'cost_optimization_hub', required — The source of the Recommendation
    - `awsServices` RecommendationAwsService[] — The AWS Services that the Recommendation applies to
    - `name` string, required — The name of the AWS Trusted Advisor Recommendation
    - `resourcesAggregates` object, required — An aggregation of all resources
      - `okCount` integer, required — The number of AWS resources that were flagged to be OK according to the Trusted Advisor check
      - `warningCount` integer, required — The number of AWS resources that were flagged to have warning according to the Trusted Advisor check
      - `errorCount` integer, required — The number of AWS resources that were flagged to have errors according to the Trusted Advisor check
      - `excludedCount` integer — The number of AWS resources belonging to this Trusted Advisor check that were excluded by the customer
    - `pillarSpecificAggregates` object — The pillar aggregations for cost savings
      - `costOptimizing` object — Cost optimizing aggregates
        - `estimatedMonthlySavings` number, double, required — The estimated monthly savings
        - `estimatedPercentMonthlySavings` number, double, required — The estimated percently monthly savings
    - `createdAt` string, date-time — When the Recommendation was created, if created by AWS Trusted Advisor Priority
    - `lastUpdatedAt` string, date-time — When the Recommendation was last updated
    - `arn` string, required — The ARN of the Recommendation
    - `statusReason` 'no_data_ok' — This attribute provides additional details about potential discrepancies in check status determination.
    - `description` string, required — A description for AWS Trusted Advisor recommendations
    - `createdBy` string — The creator, if created by AWS Trusted Advisor Priority
    - `updatedOnBehalfOf` string — 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
    - `updatedOnBehalfOfJobTitle` string — 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
    - `updateReason` string, password — Reason for the lifecycle stage change
    - `updateReasonCode` 'non_critical_account' | 'temporary_account' | 'valid_business_case' | 'other_methods_available' | 'low_priority' | 'not_applicable' | 'other' — Reason code for the lifecycle state change
    - `resolvedAt` string, date-time — When the Recommendation was resolved

## Other responses

- `480` — AccessDeniedException
- `481` — InternalServerException
- `482` — ValidationException
- `483` — ThrottlingException
- `484` — ResourceNotFoundException

---

[API](https://skmtc.net/aws/apis/trustedadvisor.md) · [All operations](https://skmtc.net/aws/apis/trustedadvisor/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aws/trustedadvisor/versions/1c71cc4b8ee0/schema)
