2026/08/12 - AWS Well-Architected Tool - 23 new api methods
Changes This change releases the Well-Architected Agent, a generative AI service that analyzes a customer's AWS environment and delivers personalized, prioritized recommendations across cost, security, performance, and resilience.
Deletes an optimization profile and its associated configuration. This action cannot be undone.
See also: AWS API Documentation
Request Syntax
client.delete_agent_profile(
profileArn='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile to delete.
dict
Response Syntax
{}
Response Structure
(dict) --
Lists contexts associated with a profile.
See also: AWS API Documentation
Request Syntax
client.list_agent_contexts(
profileArn='string',
maxResults=123,
nextToken='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile to list contexts for.
integer
The maximum number of results to return for this request.
string
The token to use to retrieve the next set of results.
dict
Response Syntax
{
'items': [
{
'id': 'string',
'profileArn': 'string',
'title': 'string',
'contextType': 'APPLICATION',
'content': {
'accountIds': [
'string',
],
'regions': [
'string',
],
'awsServices': [
'string',
],
'resourceTypes': [
'string',
],
'resourceTags': [
{
'key': 'string',
'value': 'string'
},
],
'applicationOverview': 'string',
'industry': 'string',
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'architectureOverview': 'string',
'additionalContext': 'string'
},
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
items (list) --
A list of context summaries associated with the profile.
(dict) --
Summary of a context associated with a profile, representing application or environment information used during recommendation generation.
id (string) --
The unique identifier of the context.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
title (string) --
The title of the context.
contextType (string) --
The type of the context.
content (dict) --
The typed content of the context, containing application-specific fields such as account IDs, Regions, services, and resource types.
accountIds (list) --
The Amazon Web Services account IDs associated with this application context.
(string) --
regions (list) --
The Amazon Web Services Regions where this application operates.
(string) --
awsServices (list) --
The Amazon Web Services services used by this application.
(string) --
resourceTypes (list) --
The Amazon Web Services resource types relevant to this application.
(string) --
resourceTags (list) --
Resource tags used to scope this application context.
(dict) --
A key-value pair representing a resource tag used to scope context content.
key (string) --
The tag key.
value (string) --
The tag value.
applicationOverview (string) --
A free-form overview of the application.
industry (string) --
The industry vertical for this application.
applicationType (string) --
The type of the application.
criticality (string) --
The business criticality of the application.
architectureOverview (string) --
A free-form description of the application architecture.
additionalContext (string) --
Additional context not captured by other fields.
applicationType (string) --
The type of application described by this context.
criticality (string) --
The business criticality of the application described by this context.
createdBy (string) --
The identifier of the user or system that created this context.
createdAt (datetime) --
The timestamp when the context was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this context.
lastModifiedAt (datetime) --
The timestamp when the context was last modified.
nextToken (string) --
The token to use to retrieve the next set of results.
Lists recommendation generation processes for a specified profile.
See also: AWS API Documentation
Request Syntax
client.list_agent_recommendation_generations(
profileArn='string',
recommendationType='RESOURCE'|'ARCHITECTURE'|'APPLICATION',
maxResults=123,
nextToken='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the optimization profile to list generation processes for.
string
Optional filter by recommendation type.
integer
The maximum number of generation processes to return in a single response.
string
A pagination token returned from a previous call to continue retrieving results.
dict
Response Syntax
{
'items': [
{
'id': 'string',
'profileArn': 'string',
'name': 'string',
'status': 'QUEUED'|'IN_PROGRESS'|'COMPLETED'|'ERROR',
'estimatedCompletionTime': datetime(2015, 1, 1),
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
items (list) --
A list of recommendation generation summaries.
(dict) --
Summary of a recommendation generation process initiated through the agent API.
id (string) --
The unique identifier of the recommendation generation.
profileArn (string) --
The Amazon Resource Name (ARN) of the profile used for this generation.
name (string) --
The name of the recommendation generation.
status (string) --
The current status of the recommendation generation.
estimatedCompletionTime (datetime) --
The estimated time for the generation to complete.
createdBy (string) --
The identifier of the user or system that started this generation.
createdAt (datetime) --
The timestamp when the generation was started.
lastModifiedBy (string) --
The identifier of the user or system that last modified this generation.
lastModifiedAt (datetime) --
The timestamp when the generation was last modified.
nextToken (string) --
A pagination token to retrieve the next set of results, if available.
Retrieves information about a recommendation generation process, including its status, progress, and results. Recommendation generation is asynchronous: poll this operation until status reaches a terminal value of COMPLETED (results are ready) or ERROR (see errorDetails). Intermediate values are QUEUED and IN_PROGRESS.
See also: AWS API Documentation
Request Syntax
client.get_agent_recommendation_generation(
profileArn='string',
generationId='string'
)
string
[REQUIRED]
The ARN of the optimization profile associated with this generation.
string
[REQUIRED]
The unique identifier of the recommendation generation to retrieve.
dict
Response Syntax
{
'id': 'string',
'profileArn': 'string',
'name': 'string',
'status': 'QUEUED'|'IN_PROGRESS'|'COMPLETED'|'ERROR',
'estimatedCompletionTime': datetime(2015, 1, 1),
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1),
'additionalContext': {...}|[...]|123|123.4|'string'|True|None,
'scope': {
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'goalIds': [
'string',
],
'items': [
{
'pillar': 'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
'ids': [
'string',
]
},
]
},
'startedAt': datetime(2015, 1, 1),
'endedAt': datetime(2015, 1, 1),
'progress': {
'stepsCompleted': 123,
'totalSteps': 123,
'completionPercentage': 123.0
},
'errorDetails': {
'code': 'string',
'message': 'string'
}
}
Response Structure
(dict) --
id (string) --
The unique identifier of the recommendation generation.
profileArn (string) --
The Amazon Resource Name (ARN) of the profile used for this generation.
name (string) --
The name of the recommendation generation.
status (string) --
The current status of the recommendation generation.
estimatedCompletionTime (datetime) --
The estimated time for the generation to complete.
createdBy (string) --
The identifier of the user or system that started this generation.
createdAt (datetime) --
The timestamp when the generation was started.
lastModifiedBy (string) --
The identifier of the user or system that last modified this generation.
lastModifiedAt (datetime) --
The timestamp when the generation was last modified.
additionalContext (:ref:`document<document>`) --
Additional context information provided to guide the recommendation generation process.
scope (dict) --
The scope configuration that defines which pillars and goals to focus on during generation.
pillars (list) --
The Well-Architected Tool Framework pillars to include in the generation scope.
(string) --
goalIds (list) --
Specific goal IDs to focus on during recommendation generation.
(string) --
items (list) --
Optional per-pillar item filtering configuration.
(dict) --
Item configuration for a specific Well-Architected Tool Framework pillar.
pillar (string) --
The pillar this item configuration applies to.
ids (list) --
A list of item IDs to process for this pillar, such as best practice IDs, Amazon Web Services service names, or resource ARNs.
(string) --
startedAt (datetime) --
The timestamp when the recommendation generation process started.
endedAt (datetime) --
The timestamp when the recommendation generation process completed.
progress (dict) --
Current progress information including steps completed and completion percentage.
stepsCompleted (integer) --
The number of generation steps that have been completed.
totalSteps (integer) --
The total number of steps in the generation process.
completionPercentage (float) --
The completion percentage of the generation process (0-100).
errorDetails (dict) --
Details about the error if the generation status is ERROR.
code (string) --
The status code identifying the type of error.
message (string) --
A human-readable description of the error.
Updates the status of a recommendation to track its progress through the implementation lifecycle.
See also: AWS API Documentation
Request Syntax
client.update_agent_recommendation_status(
recommendationArn='string',
status='ACTIVE'|'SUPPRESSED'|'COMPLETED',
updateReason='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the recommendation to update.
string
[REQUIRED]
The new status to assign to the recommendation.
string
A free-text reason explaining this status update.
dict
Response Syntax
{}
Response Structure
(dict) --
Retrieves detailed information about a specific context associated with a profile.
See also: AWS API Documentation
Request Syntax
client.get_agent_context(
profileArn='string',
id='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile containing the context.
string
[REQUIRED]
The unique identifier of the context to retrieve.
dict
Response Syntax
{
'context': {
'id': 'string',
'profileArn': 'string',
'title': 'string',
'contextType': 'APPLICATION',
'content': {
'accountIds': [
'string',
],
'regions': [
'string',
],
'awsServices': [
'string',
],
'resourceTypes': [
'string',
],
'resourceTags': [
{
'key': 'string',
'value': 'string'
},
],
'applicationOverview': 'string',
'industry': 'string',
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'architectureOverview': 'string',
'additionalContext': 'string'
},
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
context (dict) --
The retrieved context summary.
id (string) --
The unique identifier of the context.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
title (string) --
The title of the context.
contextType (string) --
The type of the context.
content (dict) --
The typed content of the context, containing application-specific fields such as account IDs, Regions, services, and resource types.
accountIds (list) --
The Amazon Web Services account IDs associated with this application context.
(string) --
regions (list) --
The Amazon Web Services Regions where this application operates.
(string) --
awsServices (list) --
The Amazon Web Services services used by this application.
(string) --
resourceTypes (list) --
The Amazon Web Services resource types relevant to this application.
(string) --
resourceTags (list) --
Resource tags used to scope this application context.
(dict) --
A key-value pair representing a resource tag used to scope context content.
key (string) --
The tag key.
value (string) --
The tag value.
applicationOverview (string) --
A free-form overview of the application.
industry (string) --
The industry vertical for this application.
applicationType (string) --
The type of the application.
criticality (string) --
The business criticality of the application.
architectureOverview (string) --
A free-form description of the application architecture.
additionalContext (string) --
Additional context not captured by other fields.
applicationType (string) --
The type of application described by this context.
criticality (string) --
The business criticality of the application described by this context.
createdBy (string) --
The identifier of the user or system that created this context.
createdAt (datetime) --
The timestamp when the context was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this context.
lastModifiedAt (datetime) --
The timestamp when the context was last modified.
Creates an optimization goal associated with a profile. Goals define specific targets and objectives for the optimization process.
See also: AWS API Documentation
Request Syntax
client.create_agent_goal(
clientToken='string',
profileArn='string',
pillars=[
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
title='string',
description='string'
)
string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
This field is autopopulated if not provided.
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile to associate the goal with.
list
[REQUIRED]
The Well-Architected Tool Framework pillars to associate with this goal.
(string) --
string
[REQUIRED]
The title of the goal.
string
A description of the goal.
dict
Response Syntax
{
'goal': {
'id': 'string',
'profileArn': 'string',
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'title': 'string',
'description': 'string',
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
goal (dict) --
The created goal summary.
id (string) --
The unique identifier of the goal.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
pillars (list) --
The Well-Architected Tool Framework pillars associated with this goal.
(string) --
title (string) --
The title of the goal.
description (string) --
A description of the goal.
createdBy (string) --
The identifier of the user or system that created this goal.
createdAt (datetime) --
The timestamp when the goal was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this goal.
lastModifiedAt (datetime) --
The timestamp when the goal was last modified.
Retrieves detailed information about a specific optimization goal.
See also: AWS API Documentation
Request Syntax
client.get_agent_goal(
profileArn='string',
id='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile containing the goal.
string
[REQUIRED]
The unique identifier of the goal to retrieve.
dict
Response Syntax
{
'goal': {
'id': 'string',
'profileArn': 'string',
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'title': 'string',
'description': 'string',
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
goal (dict) --
The retrieved goal summary.
id (string) --
The unique identifier of the goal.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
pillars (list) --
The Well-Architected Tool Framework pillars associated with this goal.
(string) --
title (string) --
The title of the goal.
description (string) --
A description of the goal.
createdBy (string) --
The identifier of the user or system that created this goal.
createdAt (datetime) --
The timestamp when the goal was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this goal.
lastModifiedAt (datetime) --
The timestamp when the goal was last modified.
Retrieves detailed information about an optimization profile, including its configuration and metadata.
See also: AWS API Documentation
Request Syntax
client.get_agent_profile(
profileArn='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the optimization profile to retrieve.
dict
Response Syntax
{
'name': 'string',
'displayName': 'string',
'description': 'string',
'businessOverview': 'string',
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'deletionProtection': True|False,
'executionRoleArn': 'string',
'aggregationConfiguration': [
{
'accountId': 'string',
'regions': [
'string',
],
'accessRoleArn': 'string'
},
],
'arn': 'string',
'eligibleForScheduledGeneration': True|False,
'eligibleForArchitectureGeneration': True|False,
'fieldErrors': {
'string': 'string'
},
'tags': [
{
'key': 'string',
'value': 'string'
},
],
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
Response Structure
(dict) --
name (string) --
The system name of the profile.
displayName (string) --
The display name of the profile.
description (string) --
A description of the profile.
businessOverview (string) --
The business overview of the profile.
pillars (list) --
The Well-Architected Tool Framework pillars associated with the profile.
(string) --
deletionProtection (boolean) --
Indicates whether deletion protection is enabled.
executionRoleArn (string) --
The ARN of the IAM execution role.
aggregationConfiguration (list) --
The aggregation configuration.
(dict) --
Configuration settings that define the scope of Amazon Web Services resources to analyze for optimization recommendations.
accountId (string) --
The Amazon Web Services account ID to analyze.
regions (list) --
A list of Amazon Web Services Regions to include in the analysis.
(string) --
accessRoleArn (string) --
The ARN of an IAM role to assume for resource analysis in this account.
arn (string) --
The Amazon Resource Name (ARN) of the profile.
eligibleForScheduledGeneration (boolean) --
Indicates whether the profile is valid for scheduled recommendation generation.
eligibleForArchitectureGeneration (boolean) --
Indicates whether the profile is valid for manual architecture generation.
fieldErrors (dict) --
A map of field paths to error messages for invalid or missing input fields.
(string) --
(string) --
tags (list) --
The tags associated with the profile.
(dict) --
A key-value pair associated with a resource for cost allocation and access control.
key (string) --
The key of the tag.
value (string) --
The value of the tag.
createdBy (string) --
The identifier of the user or system that created this profile.
createdAt (datetime) --
The timestamp when the profile was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this profile.
lastModifiedAt (datetime) --
The timestamp when the profile was last modified.
Deletes a context associated with a profile.
See also: AWS API Documentation
Request Syntax
client.delete_agent_context(
profileArn='string',
id='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile containing the context.
string
[REQUIRED]
The unique identifier of the context to delete.
dict
Response Syntax
{}
Response Structure
(dict) --
Updates an existing context associated with a profile.
See also: AWS API Documentation
Request Syntax
client.update_agent_context(
clientToken='string',
profileArn='string',
id='string',
title='string',
content={
'accountIds': [
'string',
],
'regions': [
'string',
],
'awsServices': [
'string',
],
'resourceTypes': [
'string',
],
'resourceTags': [
{
'key': 'string',
'value': 'string'
},
],
'applicationOverview': 'string',
'industry': 'string',
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'architectureOverview': 'string',
'additionalContext': 'string'
}
)
string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
This field is autopopulated if not provided.
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile containing the context.
string
[REQUIRED]
The unique identifier of the context to update.
string
The updated title of the context.
dict
The updated typed content of the context. The structure contains application-specific fields such as account IDs, Regions, services, and resource types.
accountIds (list) --
The Amazon Web Services account IDs associated with this application context.
(string) --
regions (list) --
The Amazon Web Services Regions where this application operates.
(string) --
awsServices (list) --
The Amazon Web Services services used by this application.
(string) --
resourceTypes (list) --
The Amazon Web Services resource types relevant to this application.
(string) --
resourceTags (list) --
Resource tags used to scope this application context.
(dict) --
A key-value pair representing a resource tag used to scope context content.
key (string) -- [REQUIRED]
The tag key.
value (string) -- [REQUIRED]
The tag value.
applicationOverview (string) --
A free-form overview of the application.
industry (string) --
The industry vertical for this application.
applicationType (string) --
The type of the application.
criticality (string) --
The business criticality of the application.
architectureOverview (string) --
A free-form description of the application architecture.
additionalContext (string) --
Additional context not captured by other fields.
dict
Response Syntax
{
'context': {
'id': 'string',
'profileArn': 'string',
'title': 'string',
'contextType': 'APPLICATION',
'content': {
'accountIds': [
'string',
],
'regions': [
'string',
],
'awsServices': [
'string',
],
'resourceTypes': [
'string',
],
'resourceTags': [
{
'key': 'string',
'value': 'string'
},
],
'applicationOverview': 'string',
'industry': 'string',
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'architectureOverview': 'string',
'additionalContext': 'string'
},
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
context (dict) --
The updated context summary.
id (string) --
The unique identifier of the context.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
title (string) --
The title of the context.
contextType (string) --
The type of the context.
content (dict) --
The typed content of the context, containing application-specific fields such as account IDs, Regions, services, and resource types.
accountIds (list) --
The Amazon Web Services account IDs associated with this application context.
(string) --
regions (list) --
The Amazon Web Services Regions where this application operates.
(string) --
awsServices (list) --
The Amazon Web Services services used by this application.
(string) --
resourceTypes (list) --
The Amazon Web Services resource types relevant to this application.
(string) --
resourceTags (list) --
Resource tags used to scope this application context.
(dict) --
A key-value pair representing a resource tag used to scope context content.
key (string) --
The tag key.
value (string) --
The tag value.
applicationOverview (string) --
A free-form overview of the application.
industry (string) --
The industry vertical for this application.
applicationType (string) --
The type of the application.
criticality (string) --
The business criticality of the application.
architectureOverview (string) --
A free-form description of the application architecture.
additionalContext (string) --
Additional context not captured by other fields.
applicationType (string) --
The type of application described by this context.
criticality (string) --
The business criticality of the application described by this context.
createdBy (string) --
The identifier of the user or system that created this context.
createdAt (datetime) --
The timestamp when the context was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this context.
lastModifiedAt (datetime) --
The timestamp when the context was last modified.
Creates a context associated with an optimization profile. Contexts provide application and environment information used during recommendation generation.
See also: AWS API Documentation
Request Syntax
client.create_agent_context(
clientToken='string',
profileArn='string',
title='string',
contextType='APPLICATION',
content={
'accountIds': [
'string',
],
'regions': [
'string',
],
'awsServices': [
'string',
],
'resourceTypes': [
'string',
],
'resourceTags': [
{
'key': 'string',
'value': 'string'
},
],
'applicationOverview': 'string',
'industry': 'string',
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'architectureOverview': 'string',
'additionalContext': 'string'
}
)
string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
This field is autopopulated if not provided.
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile to associate the context with.
string
[REQUIRED]
The title of the context.
string
[REQUIRED]
The type of the context.
dict
[REQUIRED]
The typed content of the context. The structure contains application-specific fields such as account IDs, Regions, services, and resource types.
accountIds (list) --
The Amazon Web Services account IDs associated with this application context.
(string) --
regions (list) --
The Amazon Web Services Regions where this application operates.
(string) --
awsServices (list) --
The Amazon Web Services services used by this application.
(string) --
resourceTypes (list) --
The Amazon Web Services resource types relevant to this application.
(string) --
resourceTags (list) --
Resource tags used to scope this application context.
(dict) --
A key-value pair representing a resource tag used to scope context content.
key (string) -- [REQUIRED]
The tag key.
value (string) -- [REQUIRED]
The tag value.
applicationOverview (string) --
A free-form overview of the application.
industry (string) --
The industry vertical for this application.
applicationType (string) --
The type of the application.
criticality (string) --
The business criticality of the application.
architectureOverview (string) --
A free-form description of the application architecture.
additionalContext (string) --
Additional context not captured by other fields.
dict
Response Syntax
{
'context': {
'id': 'string',
'profileArn': 'string',
'title': 'string',
'contextType': 'APPLICATION',
'content': {
'accountIds': [
'string',
],
'regions': [
'string',
],
'awsServices': [
'string',
],
'resourceTypes': [
'string',
],
'resourceTags': [
{
'key': 'string',
'value': 'string'
},
],
'applicationOverview': 'string',
'industry': 'string',
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'architectureOverview': 'string',
'additionalContext': 'string'
},
'applicationType': 'SAS'|'DESKTOP_APPLICATION'|'OTHER',
'criticality': 'MISSION_CRITICAL'|'BUSINESS_CRITICAL'|'NON_CRITICAL'|'TEST_DEVELOPMENT',
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
context (dict) --
The created context summary.
id (string) --
The unique identifier of the context.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
title (string) --
The title of the context.
contextType (string) --
The type of the context.
content (dict) --
The typed content of the context, containing application-specific fields such as account IDs, Regions, services, and resource types.
accountIds (list) --
The Amazon Web Services account IDs associated with this application context.
(string) --
regions (list) --
The Amazon Web Services Regions where this application operates.
(string) --
awsServices (list) --
The Amazon Web Services services used by this application.
(string) --
resourceTypes (list) --
The Amazon Web Services resource types relevant to this application.
(string) --
resourceTags (list) --
Resource tags used to scope this application context.
(dict) --
A key-value pair representing a resource tag used to scope context content.
key (string) --
The tag key.
value (string) --
The tag value.
applicationOverview (string) --
A free-form overview of the application.
industry (string) --
The industry vertical for this application.
applicationType (string) --
The type of the application.
criticality (string) --
The business criticality of the application.
architectureOverview (string) --
A free-form description of the application architecture.
additionalContext (string) --
Additional context not captured by other fields.
applicationType (string) --
The type of application described by this context.
criticality (string) --
The business criticality of the application described by this context.
createdBy (string) --
The identifier of the user or system that created this context.
createdAt (datetime) --
The timestamp when the context was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this context.
lastModifiedAt (datetime) --
The timestamp when the context was last modified.
Retrieves detailed information about a specific optimization recommendation, including its impact analysis, content, and implementation guidance.
See also: AWS API Documentation
Request Syntax
client.get_agent_recommendation(
recommendationArn='string',
remediationType='AUTO_REMEDIATION'|'CONSOLE'|'CLI'|'SDK'|'IAC'|'MCP'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the recommendation to retrieve.
string
Optional filter on remediation type.
dict
Response Syntax
{
'recommendationArn': 'string',
'profileArn': 'string',
'title': 'string',
'description': 'string',
'type': 'RESOURCE'|'ARCHITECTURE'|'APPLICATION',
'pillar': 'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
'priority': 'HIGH'|'MEDIUM'|'LOW',
'effort': 'LARGE'|'MEDIUM'|'SMALL',
'status': 'ACTIVE'|'SUPPRESSED'|'COMPLETED',
'state': 'OPEN'|'CLOSED',
'updateReason': 'string',
'impact': 'HIGH'|'MEDIUM'|'LOW',
'roi': {
'estimate': 'string',
'detail': 'string'
},
'numberOfResources': 123,
'awsServices': [
'string',
],
'businessUnits': [
'string',
],
'applications': [
'string',
],
'impactDetails': [
'string',
],
'insights': [
{
'usagePattern': 'string',
'signalsDetected': 'string'
},
],
'highlights': [
'string',
],
'remediationSummary': {
'recommendation': 'string',
'steps': [
'string',
]
},
'crossPillarBenefits': [
{
'pillar': 'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
'title': 'string',
'description': 'string',
'impact': 'HIGH'|'MEDIUM'|'LOW'
},
],
'tradeOffs': [
{
'pillar': 'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
'title': 'string',
'description': 'string',
'risk': 'LOW'|'MEDIUM'|'HIGH',
'mitigation': 'string',
'riskExplanation': 'string'
},
],
'sources': [
'TRUSTED_ADVISOR'|'COST_EXPLORER'|'CLOUDWATCH'|'WELL_ARCHITECTED_TOOL'|'WELL_ARCHITECTED_AGENT'|'CUSTOMER_IAC',
],
'goals': [
{
'title': 'string'
},
],
'tags': [
{
'key': 'string',
'value': 'string'
},
],
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1),
'remediations': [
{
'recommendationArn': 'string',
'type': 'AUTO_REMEDIATION'|'CONSOLE'|'CLI'|'SDK'|'IAC'|'MCP',
'steps': [
{
'title': 'string',
'content': 'string'
},
],
'resourceLinks': [
{
'url': 'string',
'title': 'string'
},
],
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
},
]
}
Response Structure
(dict) --
recommendationArn (string) --
The Amazon Resource Name (ARN) of the recommendation.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
title (string) --
The title of the recommendation.
description (string) --
A description of the recommendation.
type (string) --
The type of the recommendation.
pillar (string) --
The Well-Architected Tool Framework pillar that the recommendation addresses.
priority (string) --
The priority of the recommendation.
effort (string) --
The effort required to implement the recommendation.
status (string) --
The current status of the recommendation.
state (string) --
The current state of the recommendation.
updateReason (string) --
The free-text reason associated with the recommendation's most recent status update.
impact (string) --
The severity of the recommendation's impact.
roi (dict) --
The return on investment estimate for the recommendation.
estimate (string) --
A short statistic or key metric. Optional when there is no quantifiable figure.
detail (string) --
A sentence providing context for the estimate.
numberOfResources (integer) --
The number of Amazon Web Services resources this recommendation affects.
awsServices (list) --
The Amazon Web Services services that the recommendation applies to.
(string) --
businessUnits (list) --
The business units that own the affected resources.
(string) --
applications (list) --
The applications that the recommendation targets.
(string) --
impactDetails (list) --
Detailed impact information for the recommendation.
(string) --
insights (list) --
A list of insights about the recommendation.
(dict) --
An insight describing a usage pattern and the signals detected.
usagePattern (string) --
A description of the usage pattern.
signalsDetected (string) --
A description of the signals detected.
highlights (list) --
Highlights describing what was detected.
(string) --
remediationSummary (dict) --
A high-level summary of the recommended remediation.
recommendation (string) --
A short imperative statement of the recommended action.
steps (list) --
High-level steps to implement the fix.
(string) --
crossPillarBenefits (list) --
Cross-pillar benefits of acting on the recommendation.
(dict) --
A benefit on a different pillar from acting on the recommendation.
pillar (string) --
The pillar that would be positively impacted.
title (string) --
A short phrase describing the outcome.
description (string) --
A description of what changes and why it matters.
impact (string) --
The severity of the benefit.
tradeOffs (list) --
Trade-offs of acting on the recommendation.
(dict) --
A negative trade-off from acting on the recommendation.
pillar (string) --
The pillar that could be negatively impacted.
title (string) --
A short phrase describing what is lost or degraded.
description (string) --
A description of the specific risk and the condition that triggers it.
risk (string) --
The risk rating for the trade-off.
mitigation (string) --
A specific action to mitigate the trade-off and when to take it.
riskExplanation (string) --
An optional explanation providing additional context for the risk rating.
sources (list) --
Sources that generated this recommendation.
(string) --
goals (list) --
Goals that this recommendation targets.
(dict) --
Contains information about a goal associated with a recommendation.
title (string) --
The title of the goal associated with the recommendation.
tags (list) --
A set of key-value pairs associated with the recommendation, used for cost allocation and access control.
(dict) --
A key-value pair associated with a resource for cost allocation and access control.
key (string) --
The key of the tag.
value (string) --
The value of the tag.
createdBy (string) --
The identifier of the user or system that created this recommendation.
createdAt (datetime) --
The timestamp when the recommendation was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this recommendation.
lastModifiedAt (datetime) --
The timestamp when the recommendation was last modified.
remediations (list) --
A list of remediations for the recommendation.
(dict) --
The core fields for a remediation.
recommendationArn (string) --
The ARN of the recommendation that this remediation belongs to.
type (string) --
The remediation method.
steps (list) --
The procedural steps to perform the remediation.
(dict) --
One step within a remediation procedure.
title (string) --
An optional short label for the step.
content (string) --
The content describing the step, which can include code examples and verification checklists.
resourceLinks (list) --
External references associated with the steps.
(dict) --
An external reference associated with remediation steps.
url (string) --
The URL of the external reference.
title (string) --
An optional human-readable title for the link.
createdBy (string) --
The identifier of the user or system that created this remediation.
createdAt (datetime) --
The timestamp when the remediation was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this remediation.
lastModifiedAt (datetime) --
The timestamp when the remediation was last modified.
Creates an optimization profile that defines the scope and configuration for generating recommendations. A profile specifies the execution role, target pillars, and aggregation settings for analyzing your Amazon Web Services resources.
See also: AWS API Documentation
Request Syntax
client.create_agent_profile(
name='string',
displayName='string',
description='string',
businessOverview='string',
pillars=[
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
deletionProtection=True|False,
executionRoleArn='string',
aggregationConfiguration=[
{
'accountId': 'string',
'regions': [
'string',
],
'accessRoleArn': 'string'
},
],
clientToken='string',
tags=[
{
'key': 'string',
'value': 'string'
},
]
)
string
[REQUIRED]
The system name of the profile.
string
The display name of the profile shown to users.
string
A description of the profile.
string
The business overview for this profile.
list
[REQUIRED]
The Well-Architected Tool Framework pillars to associate with this profile.
(string) --
boolean
Indicates whether deletion protection is enabled for the profile.
string
[REQUIRED]
The ARN of the IAM execution role used for recommendation actions.
list
[REQUIRED]
The aggregation configuration that defines which Amazon Web Services accounts and Regions to analyze.
(dict) --
Configuration settings that define the scope of Amazon Web Services resources to analyze for optimization recommendations.
accountId (string) -- [REQUIRED]
The Amazon Web Services account ID to analyze.
regions (list) -- [REQUIRED]
A list of Amazon Web Services Regions to include in the analysis.
(string) --
accessRoleArn (string) -- [REQUIRED]
The ARN of an IAM role to assume for resource analysis in this account.
string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
This field is autopopulated if not provided.
list
The tags to associate with the profile.
(dict) --
A key-value pair associated with a resource for cost allocation and access control.
key (string) -- [REQUIRED]
The key of the tag.
value (string) -- [REQUIRED]
The value of the tag.
dict
Response Syntax
{
'name': 'string',
'displayName': 'string',
'description': 'string',
'businessOverview': 'string',
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'deletionProtection': True|False,
'executionRoleArn': 'string',
'aggregationConfiguration': [
{
'accountId': 'string',
'regions': [
'string',
],
'accessRoleArn': 'string'
},
],
'arn': 'string',
'eligibleForScheduledGeneration': True|False,
'eligibleForArchitectureGeneration': True|False,
'fieldErrors': {
'string': 'string'
},
'tags': [
{
'key': 'string',
'value': 'string'
},
],
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
Response Structure
(dict) --
name (string) --
The system name of the created profile.
displayName (string) --
The display name of the created profile.
description (string) --
A description of the created profile.
businessOverview (string) --
The business overview of the created profile.
pillars (list) --
The Well-Architected Tool Framework pillars associated with the created profile.
(string) --
deletionProtection (boolean) --
Indicates whether deletion protection is enabled.
executionRoleArn (string) --
The ARN of the IAM execution role.
aggregationConfiguration (list) --
The aggregation configuration.
(dict) --
Configuration settings that define the scope of Amazon Web Services resources to analyze for optimization recommendations.
accountId (string) --
The Amazon Web Services account ID to analyze.
regions (list) --
A list of Amazon Web Services Regions to include in the analysis.
(string) --
accessRoleArn (string) --
The ARN of an IAM role to assume for resource analysis in this account.
arn (string) --
The Amazon Resource Name (ARN) of the created profile.
eligibleForScheduledGeneration (boolean) --
Indicates whether the profile is valid for scheduled recommendation generation.
eligibleForArchitectureGeneration (boolean) --
Indicates whether the profile is valid for manual architecture generation.
fieldErrors (dict) --
A map of field paths to error messages for invalid or missing input fields.
(string) --
(string) --
tags (list) --
The tags associated with the created profile.
(dict) --
A key-value pair associated with a resource for cost allocation and access control.
key (string) --
The key of the tag.
value (string) --
The value of the tag.
createdBy (string) --
The identifier of the user or system that created this profile.
createdAt (datetime) --
The timestamp when the profile was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this profile.
lastModifiedAt (datetime) --
The timestamp when the profile was last modified.
Updates the pillars and title of an existing goal associated with a profile.
See also: AWS API Documentation
Request Syntax
client.update_agent_goal(
clientToken='string',
profileArn='string',
id='string',
pillars=[
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
title='string',
description='string'
)
string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
This field is autopopulated if not provided.
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile containing the goal to update.
string
[REQUIRED]
The unique identifier of the goal to update.
list
The updated pillars for the goal. Pillars define the optimization focus areas such as cost, performance, resilience, and operational excellence.
(string) --
string
The updated title for the goal. Maximum length of 1000 characters.
string
A description of the goal.
dict
Response Syntax
{
'goal': {
'id': 'string',
'profileArn': 'string',
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'title': 'string',
'description': 'string',
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
goal (dict) --
The updated goal summary.
id (string) --
The unique identifier of the goal.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
pillars (list) --
The Well-Architected Tool Framework pillars associated with this goal.
(string) --
title (string) --
The title of the goal.
description (string) --
A description of the goal.
createdBy (string) --
The identifier of the user or system that created this goal.
createdAt (datetime) --
The timestamp when the goal was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this goal.
lastModifiedAt (datetime) --
The timestamp when the goal was last modified.
Lists optimization profiles in your account. Profiles define the scope and configuration for generating optimization recommendations.
See also: AWS API Documentation
Request Syntax
client.list_agent_profiles(
maxResults=123,
nextToken='string'
)
integer
The maximum number of profiles to return in a single call. Default is 100.
string
A pagination token returned from a previous call to continue retrieving results.
dict
Response Syntax
{
'items': [
{
'name': 'string',
'displayName': 'string',
'description': 'string',
'businessOverview': 'string',
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'deletionProtection': True|False,
'executionRoleArn': 'string',
'aggregationConfiguration': [
{
'accountId': 'string',
'regions': [
'string',
],
'accessRoleArn': 'string'
},
],
'arn': 'string',
'eligibleForScheduledGeneration': True|False,
'eligibleForArchitectureGeneration': True|False,
'fieldErrors': {
'string': 'string'
},
'tags': [
{
'key': 'string',
'value': 'string'
},
],
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
items (list) --
A list of profile summaries.
(dict) --
Summary of an optimization profile, including its configuration, metadata, and audit information.
name (string) --
The system name of the profile.
displayName (string) --
The display name of the profile shown to users.
description (string) --
A description of the profile.
businessOverview (string) --
The business overview for this profile.
pillars (list) --
The Well-Architected Tool Framework pillars associated with this profile.
(string) --
deletionProtection (boolean) --
Indicates whether deletion protection is enabled for the profile.
executionRoleArn (string) --
The ARN of the IAM execution role used for recommendation actions.
aggregationConfiguration (list) --
The aggregation configuration that defines which Amazon Web Services accounts and Regions to analyze.
(dict) --
Configuration settings that define the scope of Amazon Web Services resources to analyze for optimization recommendations.
accountId (string) --
The Amazon Web Services account ID to analyze.
regions (list) --
A list of Amazon Web Services Regions to include in the analysis.
(string) --
accessRoleArn (string) --
The ARN of an IAM role to assume for resource analysis in this account.
arn (string) --
The Amazon Resource Name (ARN) of the optimization profile.
eligibleForScheduledGeneration (boolean) --
Indicates whether the profile is valid for scheduled recommendation generation.
eligibleForArchitectureGeneration (boolean) --
Indicates whether the profile is valid for manual architecture generation.
fieldErrors (dict) --
A map of field paths to error messages for invalid or missing input fields.
(string) --
(string) --
tags (list) --
The tags associated with the profile.
(dict) --
A key-value pair associated with a resource for cost allocation and access control.
key (string) --
The key of the tag.
value (string) --
The value of the tag.
createdBy (string) --
The identifier of the user or system that created this profile.
createdAt (datetime) --
The timestamp when the profile was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this profile.
lastModifiedAt (datetime) --
The timestamp when the profile was last modified.
nextToken (string) --
A pagination token to retrieve the next set of results, if available.
Deletes an optimization goal from a profile.
See also: AWS API Documentation
Request Syntax
client.delete_agent_goal(
profileArn='string',
id='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile containing the goal.
string
[REQUIRED]
The unique identifier of the goal to delete.
dict
Response Syntax
{}
Response Structure
(dict) --
Lists recommendation items for a specific recommendation. Recommendation items provide detailed information about individual optimization opportunities.
See also: AWS API Documentation
Request Syntax
client.list_agent_recommendation_items(
recommendationArn='string',
type='AWS_RESOURCE'|'RECOMMENDATION',
maxResults=123,
nextToken='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the recommendation to list items for.
string
Optional filter to return only recommendation items of the specified type.
integer
The maximum number of recommendation items to return in a single response.
string
A pagination token returned from a previous call to continue retrieving results.
dict
Response Syntax
{
'items': [
{
'id': 'string',
'recommendationArn': 'string',
'type': 'AWS_RESOURCE'|'RECOMMENDATION',
'metadata': {...}|[...]|123|123.4|'string'|True|None,
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
items (list) --
A list of recommendation items with their detailed metadata and configuration information.
(dict) --
Summary of an agent recommendation item, representing an Amazon Web Services resource or recommendation affected by the optimization recommendation.
id (string) --
The unique identifier of the recommendation item.
recommendationArn (string) --
The Amazon Resource Name (ARN) of the associated recommendation.
type (string) --
The type of the recommendation item.
metadata (:ref:`document<document>`) --
Metadata containing a snapshot of the resource or recommendation at the time of generation.
createdBy (string) --
The identifier of the user or system that created this recommendation item.
createdAt (datetime) --
The timestamp when the recommendation item was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this recommendation item.
lastModifiedAt (datetime) --
The timestamp when the recommendation item was last modified.
nextToken (string) --
A pagination token to retrieve the next set of results, if available.
Updates an existing optimization profile's configuration, including its pillars, execution role, and aggregation settings.
See also: AWS API Documentation
Request Syntax
client.update_agent_profile(
clientToken='string',
profileArn='string',
displayName='string',
description='string',
executionRoleArn='string',
aggregationConfiguration=[
{
'accountId': 'string',
'regions': [
'string',
],
'accessRoleArn': 'string'
},
],
businessOverview='string',
pillars=[
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
deletionProtection=True|False
)
string
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
This field is autopopulated if not provided.
string
[REQUIRED]
The Amazon Resource Name (ARN) of the profile to update.
string
The updated display name of the profile.
string
The updated description of the profile.
string
The updated ARN of the IAM execution role.
list
The updated aggregation configuration.
(dict) --
Configuration settings that define the scope of Amazon Web Services resources to analyze for optimization recommendations.
accountId (string) -- [REQUIRED]
The Amazon Web Services account ID to analyze.
regions (list) -- [REQUIRED]
A list of Amazon Web Services Regions to include in the analysis.
(string) --
accessRoleArn (string) -- [REQUIRED]
The ARN of an IAM role to assume for resource analysis in this account.
string
The updated business overview for the profile.
list
The updated Well-Architected Tool Framework pillars for the profile.
(string) --
boolean
Indicates whether deletion protection is enabled for the profile.
dict
Response Syntax
{
'name': 'string',
'displayName': 'string',
'description': 'string',
'businessOverview': 'string',
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'deletionProtection': True|False,
'executionRoleArn': 'string',
'aggregationConfiguration': [
{
'accountId': 'string',
'regions': [
'string',
],
'accessRoleArn': 'string'
},
],
'arn': 'string',
'eligibleForScheduledGeneration': True|False,
'eligibleForArchitectureGeneration': True|False,
'fieldErrors': {
'string': 'string'
},
'tags': [
{
'key': 'string',
'value': 'string'
},
],
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
Response Structure
(dict) --
name (string) --
The system name of the updated profile.
displayName (string) --
The display name of the updated profile.
description (string) --
A description of the updated profile.
businessOverview (string) --
The business overview of the updated profile.
pillars (list) --
The Well-Architected Tool Framework pillars associated with the updated profile.
(string) --
deletionProtection (boolean) --
Indicates whether deletion protection is enabled.
executionRoleArn (string) --
The ARN of the IAM execution role.
aggregationConfiguration (list) --
The aggregation configuration.
(dict) --
Configuration settings that define the scope of Amazon Web Services resources to analyze for optimization recommendations.
accountId (string) --
The Amazon Web Services account ID to analyze.
regions (list) --
A list of Amazon Web Services Regions to include in the analysis.
(string) --
accessRoleArn (string) --
The ARN of an IAM role to assume for resource analysis in this account.
arn (string) --
The Amazon Resource Name (ARN) of the updated profile.
eligibleForScheduledGeneration (boolean) --
Indicates whether the profile is valid for scheduled recommendation generation.
eligibleForArchitectureGeneration (boolean) --
Indicates whether the profile is valid for manual architecture generation.
fieldErrors (dict) --
A map of field paths to error messages for invalid or missing input fields.
(string) --
(string) --
tags (list) --
The tags associated with the updated profile.
(dict) --
A key-value pair associated with a resource for cost allocation and access control.
key (string) --
The key of the tag.
value (string) --
The value of the tag.
createdBy (string) --
The identifier of the user or system that created this profile.
createdAt (datetime) --
The timestamp when the profile was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this profile.
lastModifiedAt (datetime) --
The timestamp when the profile was last modified.
Lists active optimization recommendations for a specified profile with optional filtering by state.
See also: AWS API Documentation
Request Syntax
client.list_agent_recommendations(
profileArn='string',
maxResults=123,
nextToken='string',
state='OPEN'|'CLOSED',
pillar='COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the optimization profile to list recommendations for.
integer
The maximum number of recommendations to return in a single response.
string
A pagination token returned from a previous call to continue retrieving results.
string
Optional filter to return only recommendations with the specified state (OPEN or CLOSED).
string
Optional filter to return only recommendations for the specified pillar.
dict
Response Syntax
{
'items': [
{
'recommendationArn': 'string',
'profileArn': 'string',
'title': 'string',
'description': 'string',
'type': 'RESOURCE'|'ARCHITECTURE'|'APPLICATION',
'pillar': 'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
'priority': 'HIGH'|'MEDIUM'|'LOW',
'effort': 'LARGE'|'MEDIUM'|'SMALL',
'status': 'ACTIVE'|'SUPPRESSED'|'COMPLETED',
'state': 'OPEN'|'CLOSED',
'updateReason': 'string',
'impact': 'HIGH'|'MEDIUM'|'LOW',
'roi': {
'estimate': 'string',
'detail': 'string'
},
'numberOfResources': 123,
'awsServices': [
'string',
],
'businessUnits': [
'string',
],
'applications': [
'string',
],
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
items (list) --
A list of recommendation summaries.
(dict) --
Summary of an agent optimization recommendation returned by list operations.
recommendationArn (string) --
The Amazon Resource Name (ARN) of the recommendation.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
title (string) --
The title of the recommendation.
description (string) --
A description of the recommendation.
type (string) --
The type of the recommendation.
pillar (string) --
The Well-Architected Tool Framework pillar that the recommendation addresses.
priority (string) --
The priority of the recommendation.
effort (string) --
The effort required to implement the recommendation.
status (string) --
The current status of the recommendation.
state (string) --
The current state of the recommendation.
updateReason (string) --
The free-text reason associated with the recommendation's most recent status update.
impact (string) --
The severity of the recommendation's impact.
roi (dict) --
The return on investment estimate for the recommendation.
estimate (string) --
A short statistic or key metric. Optional when there is no quantifiable figure.
detail (string) --
A sentence providing context for the estimate.
numberOfResources (integer) --
The number of Amazon Web Services resources this recommendation affects.
awsServices (list) --
The Amazon Web Services services that the recommendation applies to.
(string) --
businessUnits (list) --
The business units that own the affected resources.
(string) --
applications (list) --
The applications that the recommendation targets.
(string) --
createdBy (string) --
The identifier of the user or system that created this recommendation.
createdAt (datetime) --
The timestamp when the recommendation was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this recommendation.
lastModifiedAt (datetime) --
The timestamp when the recommendation was last modified.
nextToken (string) --
A pagination token to retrieve the next set of results, if available.
Lists optimization goals associated with a specified profile. Goals define specific targets and objectives for the optimization process.
See also: AWS API Documentation
Request Syntax
client.list_agent_goals(
profileArn='string',
maxResults=123,
nextToken='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the optimization profile to list goals for.
integer
The maximum number of goals to return in a single response.
string
A pagination token returned from a previous call to continue retrieving results.
dict
Response Syntax
{
'items': [
{
'id': 'string',
'profileArn': 'string',
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'title': 'string',
'description': 'string',
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
items (list) --
A list of goal summaries associated with the profile.
(dict) --
Summary of an optimization goal associated with a profile.
id (string) --
The unique identifier of the goal.
profileArn (string) --
The Amazon Resource Name (ARN) of the associated profile.
pillars (list) --
The Well-Architected Tool Framework pillars associated with this goal.
(string) --
title (string) --
The title of the goal.
description (string) --
A description of the goal.
createdBy (string) --
The identifier of the user or system that created this goal.
createdAt (datetime) --
The timestamp when the goal was created.
lastModifiedBy (string) --
The identifier of the user or system that last modified this goal.
lastModifiedAt (datetime) --
The timestamp when the goal was last modified.
nextToken (string) --
A pagination token to retrieve the next set of results, if available.
Initiates a new recommendation generation process for the specified optimization profile. This asynchronous operation analyzes your Amazon Web Services resources and generates optimization recommendations based on the configured pillars and scope. Use GetAgentRecommendationGeneration to check status.
See also: AWS API Documentation
Request Syntax
client.start_agent_recommendation_generation(
profileArn='string',
types=[
'RESOURCE'|'ARCHITECTURE'|'APPLICATION',
],
name='string',
additionalContext={...}|[...]|123|123.4|'string'|True|None,
scope={
'pillars': [
'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
],
'goalIds': [
'string',
],
'items': [
{
'pillar': 'COST_OPTIMIZATION'|'SECURITY'|'RESILIENCE'|'PERFORMANCE'|'OPERATIONAL_EXCELLENCE',
'ids': [
'string',
]
},
]
}
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the optimization profile to use for generating recommendations.
list
[REQUIRED]
The types of recommendations to generate.
(string) --
string
An optional name for this generation process to help identify it in lists and logs.
:ref:`document<document>`
Optional additional context to guide the recommendation generation, such as specific business requirements or constraints.
dict
[REQUIRED]
Scope configuration to focus the generation on specific pillars or goals.
pillars (list) -- [REQUIRED]
The Well-Architected Tool Framework pillars to include in the generation scope.
(string) --
goalIds (list) --
Specific goal IDs to focus on during recommendation generation.
(string) --
items (list) --
Optional per-pillar item filtering configuration.
(dict) --
Item configuration for a specific Well-Architected Tool Framework pillar.
pillar (string) -- [REQUIRED]
The pillar this item configuration applies to.
ids (list) -- [REQUIRED]
A list of item IDs to process for this pillar, such as best practice IDs, Amazon Web Services service names, or resource ARNs.
(string) --
dict
Response Syntax
{
'id': 'string',
'profileArn': 'string',
'name': 'string',
'status': 'QUEUED'|'IN_PROGRESS'|'COMPLETED'|'ERROR',
'estimatedCompletionTime': datetime(2015, 1, 1),
'createdBy': 'string',
'createdAt': datetime(2015, 1, 1),
'lastModifiedBy': 'string',
'lastModifiedAt': datetime(2015, 1, 1)
}
Response Structure
(dict) --
id (string) --
The unique identifier of the recommendation generation.
profileArn (string) --
The Amazon Resource Name (ARN) of the profile used for this generation.
name (string) --
The name of the recommendation generation.
status (string) --
The current status of the recommendation generation.
estimatedCompletionTime (datetime) --
The estimated time for the generation to complete.
createdBy (string) --
The identifier of the user or system that started this generation.
createdAt (datetime) --
The timestamp when the generation was started.
lastModifiedBy (string) --
The identifier of the user or system that last modified this generation.
lastModifiedAt (datetime) --
The timestamp when the generation was last modified.
Submits user feedback on a recommendation to help improve future optimization suggestions and track implementation outcomes.
See also: AWS API Documentation
Request Syntax
client.put_agent_recommendation_feedback(
recommendationArn='string',
type='USEFUL'|'NOT_USEFUL',
feedbackCategory='OTHER'|'RECOMMENDATION_NOT_RELEVANT'|'RESOURCE_NOT_IMPORTANT'|'RESOURCE_TYPE_NOT_IMPORTANT'|'RECOMMENDATION_INCORRECT',
comments='string'
)
string
[REQUIRED]
The Amazon Resource Name (ARN) of the recommendation to provide feedback for.
string
[REQUIRED]
The type of feedback being provided.
string
Optional category classifying the nature of the feedback.
string
Optional comments providing additional context about the feedback.
dict
Response Syntax
{}
Response Structure
(dict) --