View a markdown version of this page

GetAgentRecommendation - AWS Well-Architected

GetAgentRecommendation

Note

AWS Well-Architected Agent is in preview release and is subject to change.

Important

Application-level recommendations are a new recommendation format currently in beta. We are actively seeking customer feedback to improve their quality and relevance. As with any AI-generated content, please thoroughly review each recommendation before taking any action based on it.

Retrieves detailed information about a specific optimization recommendation, including its impact analysis, content, and implementation guidance.

Request Syntax

GET /api/v1/agent-recommendations/recommendationArn?remediationType=remediationType HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

recommendationArn

The Amazon Resource Name (ARN) of the recommendation to retrieve.

Length Constraints: Minimum length of 0. Maximum length of 2048.

Pattern: arn:aws([a-z0-9-]+)?:wellarchitected:[a-z0-9-]{6,64}:\d{12}:agent-recommendation/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}

Required: Yes

remediationType

Optional filter on remediation type.

Valid Values: AUTO_REMEDIATION | CONSOLE | CLI | SDK | IAC | MCP

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200 Content-type: application/json { "applications": [ "string" ], "awsServices": [ "string" ], "businessUnits": [ "string" ], "createdAt": "string", "createdBy": "string", "crossPillarBenefits": [ { "description": "string", "impact": "string", "pillar": "string", "title": "string" } ], "description": "string", "effort": "string", "generationId": "string", "goals": [ { "title": "string" } ], "highlights": [ "string" ], "impact": "string", "impactDetails": [ "string" ], "insights": [ { "signalsDetected": "string", "usagePattern": "string" } ], "lastModifiedAt": "string", "lastModifiedBy": "string", "numberOfResources": number, "pillar": "string", "priority": "string", "profileArn": "string", "recommendationArn": "string", "remediations": [ { "createdAt": "string", "createdBy": "string", "lastModifiedAt": "string", "lastModifiedBy": "string", "recommendationArn": "string", "resourceLinks": [ { "title": "string", "url": "string" } ], "steps": [ { "content": "string", "title": "string" } ], "type": "string" } ], "remediationSummary": { "recommendation": "string", "steps": [ "string" ] }, "roi": { "detail": "string", "estimate": "string" }, "sources": [ "string" ], "state": "string", "status": "string", "tags": [ { "key": "string", "value": "string" } ], "title": "string", "tradeOffs": [ { "description": "string", "mitigation": "string", "pillar": "string", "risk": "string", "riskExplanation": "string", "title": "string" } ], "type": "string", "updateReason": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

applications

The applications that the recommendation targets.

Type: Array of strings

awsServices

The AWS services that the recommendation applies to.

Type: Array of strings

businessUnits

The business units that own the affected resources.

Type: Array of strings

createdAt

The timestamp when the recommendation was created.

Type: Timestamp

createdBy

The identifier of the user or system that created this recommendation.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

crossPillarBenefits

Cross-pillar benefits of acting on the recommendation.

Type: Array of CrossPillarBenefit objects

description

A description of the recommendation.

Type: String

Length Constraints: Minimum length of 80. Maximum length of 500.

effort

The effort required to implement the recommendation.

Type: String

Valid Values: LARGE | MEDIUM | SMALL

generationId

The identifier of the generation that produced this recommendation.

Type: String

Pattern: [0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}

goals

Goals that this recommendation targets.

Type: Array of RecommendationGoal objects

highlights

Highlights describing what was detected.

Type: Array of strings

Array Members: Minimum number of 1 item. Maximum number of 5 items.

Length Constraints: Minimum length of 20. Maximum length of 250.

impact

The severity of the recommendation's impact.

Type: String

Valid Values: HIGH | MEDIUM | LOW

impactDetails

Detailed impact information for the recommendation.

Type: Array of strings

Array Members: Minimum number of 2 items. Maximum number of 3 items.

Length Constraints: Minimum length of 10. Maximum length of 100.

insights

A list of insights about the recommendation.

Type: Array of Insight objects

Array Members: Minimum number of 1 item. Maximum number of 5 items.

lastModifiedAt

The timestamp when the recommendation was last modified.

Type: Timestamp

lastModifiedBy

The identifier of the user or system that last modified this recommendation.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

numberOfResources

The number of AWS resources this recommendation affects.

Type: Integer

pillar

The AWS Well-Architected Framework pillar that the recommendation addresses.

Type: String

Valid Values: COST_OPTIMIZATION | SECURITY | RESILIENCE | PERFORMANCE | OPERATIONAL_EXCELLENCE

priority

The priority of the recommendation.

Type: String

Valid Values: HIGH | MEDIUM | LOW

profileArn

The Amazon Resource Name (ARN) of the associated profile.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 2048.

Pattern: arn:aws([a-z0-9-]+)?:wellarchitected:[a-z0-9-]{6,64}:\d{12}:agent-profile/([a-zA-Z0-9_-]+)

recommendationArn

The Amazon Resource Name (ARN) of the recommendation.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 2048.

Pattern: arn:aws([a-z0-9-]+)?:wellarchitected:[a-z0-9-]{6,64}:\d{12}:agent-recommendation/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}

remediations

A list of remediations for the recommendation.

Type: Array of AgentRecommendationRemediation objects

remediationSummary

A high-level summary of the recommended remediation.

Type: RemediationSummary object

roi

The return on investment estimate for the recommendation.

Type: Roi object

sources

Sources that generated this recommendation.

Type: Array of strings

Valid Values: TRUSTED_ADVISOR | COST_EXPLORER | CLOUDWATCH | WELL_ARCHITECTED_TOOL | WELL_ARCHITECTED_AGENT | CUSTOMER_IAC

state

The current state of the recommendation.

Type: String

Valid Values: OPEN | CLOSED

status

The current status of the recommendation.

Type: String

Valid Values: ACTIVE | SUPPRESSED | COMPLETED

tags

A set of key-value pairs associated with the recommendation, used for cost allocation and access control.

Type: Array of Tag objects

title

The title of the recommendation.

Type: String

Length Constraints: Minimum length of 3. Maximum length of 120.

tradeOffs

Trade-offs of acting on the recommendation.

Type: Array of TradeOff objects

type

The type of the recommendation.

Type: String

Valid Values: RESOURCE | ARCHITECTURE | APPLICATION

updateReason

The free-text reason associated with the recommendation's most recent status update.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 4096.

Errors

For information about the errors that are common to all actions, see Common Error Types.

AccessDeniedException

User does not have sufficient access to perform this action.

Message

Description of the error.

HTTP Status Code: 403

InternalServerException

There is a problem with the AWS Well-Architected Tool API service.

Message

Description of the error.

HTTP Status Code: 500

ResourceNotFoundException

The requested resource was not found.

Message

Description of the error.

ResourceId

Identifier of the resource affected.

ResourceType

Type of the resource affected.

HTTP Status Code: 404

ThrottlingException

Request was denied due to request throttling.

Message

Description of the error.

QuotaCode

Service Quotas requirement to identify originating quota.

ServiceCode

Service Quotas requirement to identify originating service.

HTTP Status Code: 429

ValidationException

The user input is not valid.

Fields

The fields that caused the error, if applicable.

Message

Description of the error.

Reason

The reason why the request failed validation.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: