From 8f1d676824ca07db1386cbaced6e855e9236a333 Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Tue, 3 Oct 2023 11:34:45 -0700 Subject: [PATCH] Release v1.45.21 (2023-10-03) (#5009) Release v1.45.21 (2023-10-03) === ### Service Client Updates * `service/connect`: Updates service API and documentation * `service/location`: Updates service API and documentation * `service/mediaconvert`: Updates service API and documentation * This release adds the ability to replace video frames without modifying the audio essence. * `service/oam`: Updates service API and documentation * `service/sagemaker`: Updates service API and documentation * This release allows users to run Selective Execution in SageMaker Pipelines without SourcePipelineExecutionArn if selected steps do not have any dependent steps. * `service/wellarchitected`: Updates service API, documentation, and paginators --- CHANGELOG.md | 13 + aws/endpoints/defaults.go | 7 + aws/version.go | 2 +- models/apis/connect/2017-08-08/api-2.json | 31 +- models/apis/connect/2017-08-08/docs-2.json | 53 +- models/apis/location/2020-11-19/api-2.json | 16 + models/apis/location/2020-11-19/docs-2.json | 24 +- .../2020-11-19/endpoint-rule-set-1.json | 344 +- .../apis/mediaconvert/2017-08-29/api-2.json | 108 +- .../apis/mediaconvert/2017-08-29/docs-2.json | 67 +- models/apis/oam/2022-06-10/api-2.json | 3 +- models/apis/oam/2022-06-10/docs-2.json | 4 +- .../oam/2022-06-10/endpoint-rule-set-1.json | 407 +- .../apis/oam/2022-06-10/endpoint-tests-1.json | 187 +- models/apis/sagemaker/2017-07-24/api-2.json | 8 +- models/apis/sagemaker/2017-07-24/docs-2.json | 2 +- .../wellarchitected/2020-03-31/api-2.json | 861 +- .../wellarchitected/2020-03-31/docs-2.json | 490 +- .../2020-03-31/endpoint-rule-set-1.json | 344 +- .../2020-03-31/paginators-1.json | 15 + models/endpoints/endpoints.json | 5 + service/connect/api.go | 294 +- service/locationservice/api.go | 131 +- service/mediaconvert/api.go | 347 +- service/oam/api.go | 6 + service/oam/doc.go | 25 +- service/sagemaker/api.go | 13 +- service/wellarchitected/api.go | 17307 ++++++++++------ .../wellarchitectediface/interface.go | 65 + 29 files changed, 13834 insertions(+), 7345 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 76175f828a2..a18b0866a81 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +Release v1.45.21 (2023-10-03) +=== + +### Service Client Updates +* `service/connect`: Updates service API and documentation +* `service/location`: Updates service API and documentation +* `service/mediaconvert`: Updates service API and documentation + * This release adds the ability to replace video frames without modifying the audio essence. +* `service/oam`: Updates service API and documentation +* `service/sagemaker`: Updates service API and documentation + * This release allows users to run Selective Execution in SageMaker Pipelines without SourcePipelineExecutionArn if selected steps do not have any dependent steps. +* `service/wellarchitected`: Updates service API, documentation, and paginators + Release v1.45.20 (2023-10-02) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index c370084208a..8d3a1ac622b 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -35566,6 +35566,13 @@ var awsusgovPartition = partition{ }, }, }, + "codestar-connections": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + }, + }, "cognito-identity": service{ Endpoints: serviceEndpoints{ endpointKey{ diff --git a/aws/version.go b/aws/version.go index f556d8d0f6a..104ca4986c2 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.45.20" +const SDKVersion = "1.45.21" diff --git a/models/apis/connect/2017-08-08/api-2.json b/models/apis/connect/2017-08-08/api-2.json index 5b16ed21ad8..bf8f43574e0 100644 --- a/models/apis/connect/2017-08-08/api-2.json +++ b/models/apis/connect/2017-08-08/api-2.json @@ -7143,6 +7143,7 @@ "ResourceArn":{"shape":"ARN"}, "StartTime":{"shape":"Timestamp"}, "EndTime":{"shape":"Timestamp"}, + "Interval":{"shape":"IntervalDetails"}, "Filters":{"shape":"FiltersV2List"}, "Groupings":{"shape":"GroupingsV2"}, "Metrics":{"shape":"MetricsV2"}, @@ -7729,6 +7730,24 @@ "error":{"httpStatusCode":500}, "exception":true }, + "IntervalDetails":{ + "type":"structure", + "members":{ + "TimeZone":{"shape":"String"}, + "IntervalPeriod":{"shape":"IntervalPeriod"} + } + }, + "IntervalPeriod":{ + "type":"string", + "enum":[ + "FIFTEEN_MIN", + "THIRTY_MIN", + "HOUR", + "DAY", + "WEEK", + "TOTAL" + ] + }, "InvalidContactFlowException":{ "type":"structure", "members":{ @@ -9200,7 +9219,8 @@ "type":"structure", "members":{ "MetricFilterKey":{"shape":"String"}, - "MetricFilterValues":{"shape":"MetricFilterValueList"} + "MetricFilterValues":{"shape":"MetricFilterValueList"}, + "Negate":{"shape":"Boolean"} } }, "MetricFilterValueList":{ @@ -9214,11 +9234,20 @@ "member":{"shape":"MetricFilterV2"}, "max":2 }, + "MetricInterval":{ + "type":"structure", + "members":{ + "Interval":{"shape":"IntervalPeriod"}, + "StartTime":{"shape":"Timestamp"}, + "EndTime":{"shape":"Timestamp"} + } + }, "MetricNameV2":{"type":"string"}, "MetricResultV2":{ "type":"structure", "members":{ "Dimensions":{"shape":"DimensionsV2Map"}, + "MetricInterval":{"shape":"MetricInterval"}, "Collections":{"shape":"MetricDataCollectionsV2"} } }, diff --git a/models/apis/connect/2017-08-08/docs-2.json b/models/apis/connect/2017-08-08/docs-2.json index f99ca79e046..e148a556008 100644 --- a/models/apis/connect/2017-08-08/docs-2.json +++ b/models/apis/connect/2017-08-08/docs-2.json @@ -28,7 +28,7 @@ "CreateQuickConnect": "

Creates a quick connect for the specified Amazon Connect instance.

", "CreateRoutingProfile": "

Creates a new routing profile.

", "CreateRule": "

Creates a rule for the specified Amazon Connect instance.

Use the Rules Function language to code conditions for the rule.

", - "CreateSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Creates a security profile.

", + "CreateSecurityProfile": "

Creates a security profile.

", "CreateTaskTemplate": "

Creates a new task template in the specified Amazon Connect instance.

", "CreateTrafficDistributionGroup": "

Creates a traffic distribution group given an Amazon Connect instance that has been replicated.

You can change the SignInConfig distribution only for a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

For more information about creating traffic distribution groups, see Set up traffic distribution groups in the Amazon Connect Administrator Guide.

", "CreateUseCase": "

Creates a use case for an integration association.

", @@ -50,7 +50,7 @@ "DeleteQuickConnect": "

Deletes a quick connect.

", "DeleteRoutingProfile": "

Deletes a routing profile.

", "DeleteRule": "

Deletes a rule for the specified Amazon Connect instance.

", - "DeleteSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Deletes a security profile.

", + "DeleteSecurityProfile": "

Deletes a security profile.

", "DeleteTaskTemplate": "

Deletes the task template.

", "DeleteTrafficDistributionGroup": "

Deletes a traffic distribution group. This API can be called only in the Region where the traffic distribution group is created.

For more information about deleting traffic distribution groups, see Delete traffic distribution groups in the Amazon Connect Administrator Guide.

", "DeleteUseCase": "

Deletes a use case from an integration association.

", @@ -75,7 +75,7 @@ "DescribeQuickConnect": "

Describes the quick connect.

", "DescribeRoutingProfile": "

Describes the specified routing profile.

", "DescribeRule": "

Describes a rule for the specified Amazon Connect instance.

", - "DescribeSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Gets basic information about the security profle.

", + "DescribeSecurityProfile": "

Gets basic information about the security profle.

", "DescribeTrafficDistributionGroup": "

Gets details and status of a traffic distribution group.

", "DescribeUser": "

Describes the specified user account. You can find the instance ID in the Amazon Connect console (it’s the final part of the ARN). The console does not display the user IDs. Instead, list the users and note the IDs provided in the output.

", "DescribeUserHierarchyGroup": "

Describes the specified hierarchy group.

", @@ -98,7 +98,7 @@ "GetCurrentUserData": "

Gets the real-time active user data from the specified Amazon Connect instance.

", "GetFederationToken": "

Retrieves a token for federation.

This API doesn't support root users. If you try to invoke GetFederationToken with root credentials, an error message similar to the following one appears:

Provided identity: Principal: .... User: .... cannot be used for federation with Amazon Connect

", "GetMetricData": "

Gets historical metric data from the specified Amazon Connect instance.

For a description of each historical metric, see Historical Metrics Definitions in the Amazon Connect Administrator Guide.

", - "GetMetricDataV2": "

Gets metric data from the specified Amazon Connect instance.

GetMetricDataV2 offers more features than GetMetricData, the previous version of this API. It has new metrics, offers filtering at a metric level, and offers the ability to filter and group data by channels, queues, routing profiles, agents, and agent hierarchy levels. It can retrieve historical data for the last 35 days, in 24-hour intervals.

For a description of the historical metrics that are supported by GetMetricDataV2 and GetMetricData, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

", + "GetMetricDataV2": "

Gets metric data from the specified Amazon Connect instance.

GetMetricDataV2 offers more features than GetMetricData, the previous version of this API. It has new metrics, offers filtering at a metric level, and offers the ability to filter and group data by channels, queues, routing profiles, agents, and agent hierarchy levels. It can retrieve historical data for the last 3 months, at varying intervals.

For a description of the historical metrics that are supported by GetMetricDataV2 and GetMetricData, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

", "GetPromptFile": "

Gets the prompt file.

", "GetTaskTemplate": "

Gets details about a specific task template in the specified Amazon Connect instance.

", "GetTrafficDistribution": "

Retrieves the current traffic distribution for a given traffic distribution group.

", @@ -130,7 +130,7 @@ "ListRules": "

List all rules for the specified Amazon Connect instance.

", "ListSecurityKeys": "

This API is in preview release for Amazon Connect and is subject to change.

Returns a paginated list of all security keys associated with the instance.

", "ListSecurityProfileApplications": "

Returns a list of third party applications in a specific security profile.

", - "ListSecurityProfilePermissions": "

This API is in preview release for Amazon Connect and is subject to change.

Lists the permissions granted to a security profile.

", + "ListSecurityProfilePermissions": "

Lists the permissions granted to a security profile.

", "ListSecurityProfiles": "

Provides summary information about the security profiles for the specified Amazon Connect instance.

For more information about security profiles, see Security Profiles in the Amazon Connect Administrator Guide.

", "ListTagsForResource": "

Lists the tags for the specified resource.

For sample policies that use tags, see Amazon Connect Identity-Based Policy Examples in the Amazon Connect Administrator Guide.

", "ListTaskTemplates": "

Lists task templates for the specified Amazon Connect instance.

", @@ -200,7 +200,7 @@ "UpdateRoutingProfileName": "

Updates the name and description of a routing profile. The request accepts the following data in JSON format. At least Name or Description must be provided.

", "UpdateRoutingProfileQueues": "

Updates the properties associated with a set of queues for a routing profile.

", "UpdateRule": "

Updates a rule for the specified Amazon Connect instance.

Use the Rules Function language to code conditions for the rule.

", - "UpdateSecurityProfile": "

This API is in preview release for Amazon Connect and is subject to change.

Updates a security profile.

", + "UpdateSecurityProfile": "

Updates a security profile.

", "UpdateTaskTemplate": "

Updates details about a specific task template in the specified Amazon Connect instance. This operation does not support partial updates. Instead it does a full update of template content.

", "UpdateTrafficDistribution": "

Updates the traffic distribution for a given traffic distribution group.

You can change the SignInConfig distribution only for a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

For more information about updating a traffic distribution group, see Update telephony traffic distribution across Amazon Web Services Regions in the Amazon Connect Administrator Guide.

", "UpdateUserHierarchy": "

Assigns the specified hierarchy group to the specified user.

", @@ -566,7 +566,7 @@ "base": null, "refs": { "CreateSecurityProfileRequest$Applications": "

This API is in preview release for Amazon Connect and is subject to change.

A list of third party applications that the security profile will give access to.

", - "ListSecurityProfileApplicationsResponse$Applications": "

A list of the third party application's metadata.

", + "ListSecurityProfileApplicationsResponse$Applications": "

This API is in preview release for Amazon Connect and is subject to change.

A list of the third party application's metadata.

", "UpdateSecurityProfileRequest$Applications": "

This API is in preview release for Amazon Connect and is subject to change.

A list of the third party application's metadata.

" } }, @@ -762,6 +762,7 @@ "EvaluationFormSingleSelectQuestionOption$AutomaticFail": "

The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.

", "EvaluationScore$NotApplicable": "

The flag to mark the item as not applicable for scoring.

", "EvaluationScore$AutomaticFail": "

The flag that marks the item as automatic fail. If the item or a child item gets an automatic fail answer, this flag will be true.

", + "MetricFilterV2$Negate": "

The flag to use to filter on requested metric filter values or to not filter on requested metric filter values. By default the negate is false, which indicates to filter on the requested metric filter.

", "SignInDistribution$Enabled": "

Whether sign in distribution is enabled.

", "TrafficDistributionGroup$IsDefault": "

Whether this is the default traffic distribution group created during instance replication. The default traffic distribution group cannot be deleted by the DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as part of the process for deleting a replica.

You can change the SignInConfig distribution only for a default TrafficDistributionGroup (see the IsDefault parameter in the TrafficDistributionGroup data type). If you call UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, an InvalidRequestException is returned.

", "TrafficDistributionGroupSummary$IsDefault": "

Whether this is the default traffic distribution group created during instance replication. The default traffic distribution group cannot be deleted by the DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as part of the process for deleting a replica.

", @@ -950,9 +951,9 @@ "ContactFlowContent": { "base": null, "refs": { - "ContactFlow$Content": "

The content of the flow.

", - "CreateContactFlowRequest$Content": "

The content of the flow.

", - "UpdateContactFlowContentRequest$Content": "

The JSON string that represents flow's content. For an example, see Example contact flow in Amazon Connect Flow language.

" + "ContactFlow$Content": "

The JSON string that represents the content of the flow. For an example, see Example contact flow in Amazon Connect Flow language.

", + "CreateContactFlowRequest$Content": "

The JSON string that represents the content of the flow. For an example, see Example contact flow in Amazon Connect Flow language.

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

", + "UpdateContactFlowContentRequest$Content": "

The JSON string that represents the content of the flow. For an example, see Example contact flow in Amazon Connect Flow language.

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

" } }, "ContactFlowDescription": { @@ -999,9 +1000,9 @@ "ContactFlowModuleContent": { "base": null, "refs": { - "ContactFlowModule$Content": "

The content of the flow module.

", + "ContactFlowModule$Content": "

The JSON string that represents the content of the flow. For an example, see Example contact flow in Amazon Connect Flow language.

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

", "CreateContactFlowModuleRequest$Content": "

The content of the flow module.

", - "UpdateContactFlowModuleContentRequest$Content": "

The content of the flow module.

" + "UpdateContactFlowModuleContentRequest$Content": "

The JSON string that represents the content of the flow. For an example, see Example contact flow in Amazon Connect Flow language.

" } }, "ContactFlowModuleDescription": { @@ -3261,6 +3262,19 @@ "refs": { } }, + "IntervalDetails": { + "base": "

Information about the interval period to use for returning results.

", + "refs": { + "GetMetricDataV2Request$Interval": "

The interval period and timezone to apply to returned metrics.

" + } + }, + "IntervalPeriod": { + "base": null, + "refs": { + "IntervalDetails$IntervalPeriod": "

IntervalPeriod: An aggregated grouping applied to request metrics. Valid IntervalPeriod values are: FIFTEEN_MIN | THIRTY_MIN | HOUR | DAY | WEEK | TOTAL.

For example, if IntervalPeriod is selected THIRTY_MIN, StartTime and EndTime differs by 1 day, then Amazon Connect returns 48 results in the response. Each result is aggregated by the THIRTY_MIN period. By default Amazon Connect aggregates results based on the TOTAL interval period.

The following list describes restrictions on StartTime and EndTime based on what IntervalPeriod is requested.

", + "MetricInterval$Interval": "

The interval period provided in the API request.

" + } + }, "InvalidContactFlowException": { "base": "

The flow is not valid.

", "refs": { @@ -3955,6 +3969,12 @@ "MetricV2$MetricFilters": "

Contains the filters to be used when returning data.

" } }, + "MetricInterval": { + "base": "

The interval period with the start and end time for the metrics.

", + "refs": { + "MetricResultV2$MetricInterval": "

The interval period with the start and end time for the metrics.

" + } + }, "MetricNameV2": { "base": null, "refs": { @@ -3983,7 +4003,7 @@ "MetricsV2": { "base": null, "refs": { - "GetMetricDataV2Request$Metrics": "

The metrics to retrieve. Specify the name, groupings, and filters for each metric. The following historical metrics are available. For a description of each metric, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

AGENT_ADHERENT_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_RESPONSE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_OCCUPANCY

Unit: Percentage

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULE_ADHERENCE

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULED_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_ABANDON_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AFTER_CONTACT_WORK_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_CONTACT_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_CONVERSATION_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_GREETING_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_HANDLE_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_HOLDS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_INTERACTION_AND_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERACTION_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

AVG_INTERRUPTIONS_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERRUPTION_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_NON_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_QUEUE_ANSWER_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

AVG_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_TALK_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_TALK_TIME_CUSTOMER

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_ABANDONED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_CREATED

Unit: Count

Valid metric filter key: INITIATION_METHOD

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_HANDLED

Unit: Count

Valid metric filter key: INITIATION_METHOD, DISCONNECT_REASON

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_HOLD_ABANDONS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_QUEUED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_TRANSFERRED_OUT_BY_AGENT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT_FROM_QUEUE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

MAX_QUEUED_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SERVICE_LEVEL

You can include up to 20 SERVICE_LEVEL metrics in a request.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ANSWERED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ABANDONED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_DISCONNECTED

Valid metric filter key: DISCONNECT_REASON

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

SUM_RETRY_CALLBACK_ATTEMPTS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

" + "GetMetricDataV2Request$Metrics": "

The metrics to retrieve. Specify the name, groupings, and filters for each metric. The following historical metrics are available. For a description of each metric, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

ABANDONMENT_RATE

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_ADHERENT_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_RESPONSE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_RESPONSE_WITHOUT_CUSTOMER_ABANDONS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

Data for this metric is available starting from October 1, 2023 0:00:00 GMT.

AGENT_OCCUPANCY

Unit: Percentage

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULE_ADHERENCE

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULED_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_ABANDON_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AFTER_CONTACT_WORK_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

The Negate key in Metric Level Filters is not applicable for this metric.

AVG_CONTACT_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_CONVERSATION_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_GREETING_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_HANDLE_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_HOLD_TIME_ALL_CONTACTS

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_HOLDS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_INTERACTION_AND_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERACTION_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

AVG_INTERRUPTIONS_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERRUPTION_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_NON_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_QUEUE_ANSWER_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

AVG_RESOLUTION_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile

AVG_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_TALK_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_TALK_TIME_CUSTOMER

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_ABANDONED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_CREATED

Unit: Count

Valid metric filter key: INITIATION_METHOD

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_HANDLED

Unit: Count

Valid metric filter key: INITIATION_METHOD, DISCONNECT_REASON

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_HOLD_ABANDONS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_QUEUED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_RESOLVED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

CONTACTS_TRANSFERRED_OUT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_TRANSFERRED_OUT_BY_AGENT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT_FROM_QUEUE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

MAX_QUEUED_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SERVICE_LEVEL

You can include up to 20 SERVICE_LEVEL metrics in a request.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ANSWERED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ABANDONED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_DISCONNECTED

Valid metric filter key: DISCONNECT_REASON

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

SUM_RETRY_CALLBACK_ATTEMPTS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

" } }, "MinutesLimit60": { @@ -5702,6 +5722,7 @@ "refs": { "HierarchyGroupCondition$Value": "

The value in the hierarchy group condition.

", "InstanceStatusReason$Message": "

The message.

", + "IntervalDetails$TimeZone": "

The timezone applied to requested metrics.

", "MetricFilterV2$MetricFilterKey": "

The key to use for filtering data.

Valid metric filter keys: INITIATION_METHOD, DISCONNECT_REASON. These are the same values as the InitiationMethod and DisconnectReason in the contact record. For more information, see ContactTraceRecord in the Amazon Connect Administrator's Guide.

", "MetricFilterValueList$member": null, "PropertyValidationExceptionProperty$PropertyPath": "

The full property path.

", @@ -6150,10 +6171,12 @@ "EvaluationFormVersionSummary$LastModifiedTime": "

The timestamp for when the evaluation form was last updated.

", "EvaluationSummary$CreatedTime": "

The timestamp for when the evaluation was created.

", "EvaluationSummary$LastModifiedTime": "

The timestamp for when the evaluation was last updated.

", - "GetMetricDataV2Request$StartTime": "

The timestamp, in UNIX Epoch time format, at which to start the reporting interval for the retrieval of historical metrics data. The time must be before the end time timestamp. The time range between the start and end time must be less than 24 hours. The start time cannot be earlier than 35 days before the time of the request. Historical metrics are available for 35 days.

", - "GetMetricDataV2Request$EndTime": "

The timestamp, in UNIX Epoch time format, at which to end the reporting interval for the retrieval of historical metrics data. The time must be later than the start time timestamp. It cannot be later than the current timestamp.

The time range between the start and end time must be less than 24 hours.

", + "GetMetricDataV2Request$StartTime": "

The timestamp, in UNIX Epoch time format, at which to start the reporting interval for the retrieval of historical metrics data. The time must be before the end time timestamp. The start and end time depends on the IntervalPeriod selected. By default the time range between start and end time is 35 days. Historical metrics are available for 3 months.

", + "GetMetricDataV2Request$EndTime": "

The timestamp, in UNIX Epoch time format, at which to end the reporting interval for the retrieval of historical metrics data. The time must be later than the start time timestamp. It cannot be later than the current timestamp.

", "Instance$CreatedTime": "

When the instance was created.

", "InstanceSummary$CreatedTime": "

When the instance was created.

", + "MetricInterval$StartTime": "

The timestamp, in UNIX Epoch time format. Start time is based on the interval period selected.

", + "MetricInterval$EndTime": "

The timestamp, in UNIX Epoch time format. End time is based on the interval period selected. For example, If IntervalPeriod is selected THIRTY_MIN, StartTime and EndTime in the API request differs by 1 day, then 48 results are returned in the response. Each result is aggregated by the 30 minutes period, with each StartTime and EndTime differing by 30 minutes.

", "Rule$CreatedTime": "

The timestamp for when the rule was created.

", "Rule$LastUpdatedTime": "

The timestamp for the when the rule was last updated.

", "RuleSummary$CreatedTime": "

The timestamp for when the rule was created.

", diff --git a/models/apis/location/2020-11-19/api-2.json b/models/apis/location/2020-11-19/api-2.json index aec24b4f550..37b439d502e 100644 --- a/models/apis/location/2020-11-19/api-2.json +++ b/models/apis/location/2020-11-19/api-2.json @@ -1900,6 +1900,7 @@ "members":{ "Description":{"shape":"ResourceDescription"}, "EventBridgeEnabled":{"shape":"Boolean"}, + "KmsKeyEnableGeospatialQueries":{"shape":"Boolean"}, "KmsKeyId":{"shape":"KmsKeyId"}, "PositionFiltering":{"shape":"PositionFiltering"}, "PricingPlan":{ @@ -2056,6 +2057,7 @@ "CollectionName":{"shape":"ResourceName"}, "CreateTime":{"shape":"Timestamp"}, "Description":{"shape":"ResourceDescription"}, + "GeofenceCount":{"shape":"DescribeGeofenceCollectionResponseGeofenceCountInteger"}, "KmsKeyId":{"shape":"KmsKeyId"}, "PricingPlan":{ "shape":"PricingPlan", @@ -2071,6 +2073,11 @@ "UpdateTime":{"shape":"Timestamp"} } }, + "DescribeGeofenceCollectionResponseGeofenceCountInteger":{ + "type":"integer", + "box":true, + "min":0 + }, "DescribeKeyRequest":{ "type":"structure", "required":["KeyName"], @@ -2241,6 +2248,7 @@ "CreateTime":{"shape":"Timestamp"}, "Description":{"shape":"ResourceDescription"}, "EventBridgeEnabled":{"shape":"Boolean"}, + "KmsKeyEnableGeospatialQueries":{"shape":"Boolean"}, "KmsKeyId":{"shape":"KmsKeyId"}, "PositionFiltering":{"shape":"PositionFiltering"}, "PricingPlan":{ @@ -2792,6 +2800,7 @@ "type":"structure", "required":["TrackerName"], "members":{ + "FilterGeometry":{"shape":"TrackingFilterGeometry"}, "MaxResults":{"shape":"ListDevicePositionsRequestMaxResultsInteger"}, "NextToken":{"shape":"Token"}, "TrackerName":{ @@ -3827,6 +3836,12 @@ "max":2000, "min":1 }, + "TrackingFilterGeometry":{ + "type":"structure", + "members":{ + "Polygon":{"shape":"LinearRings"} + } + }, "TravelMode":{ "type":"string", "enum":[ @@ -4059,6 +4074,7 @@ "members":{ "Description":{"shape":"ResourceDescription"}, "EventBridgeEnabled":{"shape":"Boolean"}, + "KmsKeyEnableGeospatialQueries":{"shape":"Boolean"}, "PositionFiltering":{"shape":"PositionFiltering"}, "PricingPlan":{ "shape":"PricingPlan", diff --git a/models/apis/location/2020-11-19/docs-2.json b/models/apis/location/2020-11-19/docs-2.json index 11ae662182c..59ffa6d2d70 100644 --- a/models/apis/location/2020-11-19/docs-2.json +++ b/models/apis/location/2020-11-19/docs-2.json @@ -389,11 +389,14 @@ "CalculateRouteTruckModeOptions$AvoidTolls": "

Avoids tolls when calculating routes.

Default Value: false

Valid Values: false | true

", "CreateKeyRequest$NoExpiry": "

Optionally set to true to set no expiration time for the API key. One of NoExpiry or ExpireTime must be set.

", "CreateTrackerRequest$EventBridgeEnabled": "

Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

You do not need enable this feature to get ENTER and EXIT events for geofences with this tracker. Those events are always sent to EventBridge.

", + "CreateTrackerRequest$KmsKeyEnableGeospatialQueries": "

Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer managed key.

This parameter is only used if you are using a KMS customer managed key.

If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries feature will be disabled by default. This is because by using this feature, a representation of your device positions will not be encrypted using the your KMS managed key. The exact device position, however; is still encrypted using your managed key.

You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker.

", "DescribeTrackerResponse$EventBridgeEnabled": "

Whether UPDATE events from this tracker in EventBridge are enabled. If set to true these events will be sent to EventBridge.

", + "DescribeTrackerResponse$KmsKeyEnableGeospatialQueries": "

Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer managed key.

This parameter is only used if you are using a KMS customer managed key.

If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries feature will be disabled by default. This is because by using this feature, a representation of your device positions will not be encrypted using the your KMS managed key. The exact device position, however; is still encrypted using your managed key.

You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker.

", "Place$Interpolated": "

True if the result is interpolated from other known places.

False if the Place is a known place.

Not returned when the partner does not provide the information.

For example, returns False for an address location that is found in the partner data, but returns True if an address does not exist in the partner data and its location is calculated by interpolating between other known addresses.

", "UpdateKeyRequest$ForceUpdate": "

The boolean flag to be included for updating ExpireTime or Restrictions details.

Must be set to true to update an API key resource that has been used in the past 7 days.

False if force update is not preferred

Default value: False

", "UpdateKeyRequest$NoExpiry": "

Whether the API key should expire. Set to true to set the API key to have no expiration time.

", - "UpdateTrackerRequest$EventBridgeEnabled": "

Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

You do not need enable this feature to get ENTER and EXIT events for geofences with this tracker. Those events are always sent to EventBridge.

" + "UpdateTrackerRequest$EventBridgeEnabled": "

Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

You do not need enable this feature to get ENTER and EXIT events for geofences with this tracker. Those events are always sent to EventBridge.

", + "UpdateTrackerRequest$KmsKeyEnableGeospatialQueries": "

Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer managed key.

This parameter is only used if you are using a KMS customer managed key.

" } }, "BoundingBox": { @@ -683,6 +686,12 @@ "refs": { } }, + "DescribeGeofenceCollectionResponseGeofenceCountInteger": { + "base": null, + "refs": { + "DescribeGeofenceCollectionResponse$GeofenceCount": "

The number of geofences in the geofence collection.

" + } + }, "DescribeKeyRequest": { "base": null, "refs": { @@ -1046,7 +1055,8 @@ "LinearRings": { "base": null, "refs": { - "GeofenceGeometry$Polygon": "

A polygon is a list of linear rings which are each made up of a list of vertices.

Each vertex is a 2-dimensional point of the form: [longitude, latitude]. This is represented as an array of doubles of length 2 (so [double, double]).

An array of 4 or more vertices, where the first and last vertex are the same (to form a closed boundary), is called a linear ring. The linear ring vertices must be listed in counter-clockwise order around the ring’s interior. The linear ring is represented as an array of vertices, or an array of arrays of doubles ([[double, double], ...]).

A geofence consists of a single linear ring. To allow for future expansion, the Polygon parameter takes an array of linear rings, which is represented as an array of arrays of arrays of doubles ([[[double, double], ...], ...]).

A linear ring for use in geofences can consist of between 4 and 1,000 vertices.

" + "GeofenceGeometry$Polygon": "

A polygon is a list of linear rings which are each made up of a list of vertices.

Each vertex is a 2-dimensional point of the form: [longitude, latitude]. This is represented as an array of doubles of length 2 (so [double, double]).

An array of 4 or more vertices, where the first and last vertex are the same (to form a closed boundary), is called a linear ring. The linear ring vertices must be listed in counter-clockwise order around the ring’s interior. The linear ring is represented as an array of vertices, or an array of arrays of doubles ([[double, double], ...]).

A geofence consists of a single linear ring. To allow for future expansion, the Polygon parameter takes an array of linear rings, which is represented as an array of arrays of arrays of doubles ([[[double, double], ...], ...]).

A linear ring for use in geofences can consist of between 4 and 1,000 vertices.

", + "TrackingFilterGeometry$Polygon": "

The set of arrays which define the polygon. A polygon can have between 4 and 1000 vertices.

" } }, "ListDevicePositionsRequest": { @@ -1074,7 +1084,7 @@ "ListDevicePositionsResponseEntryList": { "base": null, "refs": { - "ListDevicePositionsResponse$Entries": "

Contains details about each device's last known position. These details includes the device ID, the time when the position was sampled on the device, the time that the service received the update, and the most recent coordinates.

" + "ListDevicePositionsResponse$Entries": "

Contains details about each device's last known position.

" } }, "ListGeofenceCollectionsRequest": { @@ -1835,7 +1845,7 @@ "DescribeRouteCalculatorResponse$DataSource": "

The data provider of traffic and road network data. Indicates one of the available providers:

For more information about data providers, see Amazon Location Service data providers.

", "DescribeTrackerResponse$PricingPlanDataSource": "

No longer used. Always returns an empty string.

", "GetGeofenceResponse$Status": "

Identifies the state of the geofence. A geofence will hold one of the following states:

", - "GetMapGlyphsRequest$FontStack": "

A comma-separated list of fonts to load glyphs from in order of preference. For example, Noto Sans Regular, Arial Unicode.

Valid fonts stacks for Esri styles:

Valid font stacks for HERE Technologies styles:

Valid font stacks for GrabMaps styles:

Valid font stacks for Open Data styles:

The fonts used by the Open Data map styles are combined fonts that use Amazon Ember for most glyphs but Noto Sans for glyphs unsupported by Amazon Ember.

", + "GetMapGlyphsRequest$FontStack": "

A comma-separated list of fonts to load glyphs from in order of preference. For example, Noto Sans Regular, Arial Unicode.

Valid font stacks for Esri styles:

Valid font stacks for HERE Technologies styles:

Valid font stacks for GrabMaps styles:

Valid font stacks for Open Data styles:

The fonts used by the Open Data map styles are combined fonts that use Amazon Ember for most glyphs but Noto Sans for glyphs unsupported by Amazon Ember.

", "GetMapGlyphsResponse$CacheControl": "

The HTTP Cache-Control directive for the value.

", "GetMapGlyphsResponse$ContentType": "

The map glyph content type. For example, application/octet-stream.

", "GetMapSpritesResponse$CacheControl": "

The HTTP Cache-Control directive for the value.

", @@ -2027,6 +2037,12 @@ "ListTrackersResponse$NextToken": "

A pagination token indicating there are additional pages available. You can use the token in a following request to fetch the next set of results.

" } }, + "TrackingFilterGeometry": { + "base": "

The geomerty used to filter device positions.

", + "refs": { + "ListDevicePositionsRequest$FilterGeometry": "

The geomerty used to filter device positions.

" + } + }, "TravelMode": { "base": null, "refs": { diff --git a/models/apis/location/2020-11-19/endpoint-rule-set-1.json b/models/apis/location/2020-11-19/endpoint-rule-set-1.json index c27472e4029..c133b4f601f 100644 --- a/models/apis/location/2020-11-19/endpoint-rule-set-1.json +++ b/models/apis/location/2020-11-19/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://geo-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://geo-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://geo-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://geo-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://geo.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://geo.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://geo.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://geo.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/mediaconvert/2017-08-29/api-2.json b/models/apis/mediaconvert/2017-08-29/api-2.json index 601d826a5be..6132a3d4160 100644 --- a/models/apis/mediaconvert/2017-08-29/api-2.json +++ b/models/apis/mediaconvert/2017-08-29/api-2.json @@ -4808,6 +4808,13 @@ "STATIC" ] }, + "H264EndOfStreamMarkers": { + "type": "string", + "enum": [ + "INCLUDE", + "SUPPRESS" + ] + }, "H264EntropyEncoding": { "type": "string", "enum": [ @@ -4959,6 +4966,10 @@ "shape": "H264DynamicSubGop", "locationName": "dynamicSubGop" }, + "EndOfStreamMarkers": { + "shape": "H264EndOfStreamMarkers", + "locationName": "endOfStreamMarkers" + }, "EntropyEncoding": { "shape": "H264EntropyEncoding", "locationName": "entropyEncoding" @@ -5206,6 +5217,13 @@ "STATIC" ] }, + "H265EndOfStreamMarkers": { + "type": "string", + "enum": [ + "INCLUDE", + "SUPPRESS" + ] + }, "H265FlickerAdaptiveQuantization": { "type": "string", "enum": [ @@ -5347,6 +5365,10 @@ "shape": "H265DynamicSubGop", "locationName": "dynamicSubGop" }, + "EndOfStreamMarkers": { + "shape": "H265EndOfStreamMarkers", + "locationName": "endOfStreamMarkers" + }, "FlickerAdaptiveQuantization": { "shape": "H265FlickerAdaptiveQuantization", "locationName": "flickerAdaptiveQuantization" @@ -6258,6 +6280,10 @@ "shape": "InputVideoGenerator", "locationName": "videoGenerator" }, + "VideoOverlays": { + "shape": "__listOfVideoOverlay", + "locationName": "videoOverlays" + }, "VideoSelector": { "shape": "VideoSelector", "locationName": "videoSelector" @@ -6438,6 +6464,10 @@ "shape": "__stringMin11Max11Pattern01D20305D205D", "locationName": "timecodeStart" }, + "VideoOverlays": { + "shape": "__listOfVideoOverlay", + "locationName": "videoOverlays" + }, "VideoSelector": { "shape": "VideoSelector", "locationName": "videoSelector" @@ -6680,10 +6710,6 @@ "shape": "ExtendedDataServices", "locationName": "extendedDataServices" }, - "FollowInputIndex": { - "shape": "__integerMin0Max149", - "locationName": "followInputIndex" - }, "Inputs": { "shape": "__listOfInput", "locationName": "inputs" @@ -6816,10 +6842,6 @@ "shape": "ExtendedDataServices", "locationName": "extendedDataServices" }, - "FollowInputIndex": { - "shape": "__integerMin0Max149", - "locationName": "followInputIndex" - }, "Inputs": { "shape": "__listOfInputTemplate", "locationName": "inputs" @@ -10175,6 +10197,57 @@ } } }, + "VideoOverlay": { + "type": "structure", + "members": { + "EndTimecode": { + "shape": "__stringPattern010920405090509092", + "locationName": "endTimecode" + }, + "Input": { + "shape": "VideoOverlayInput", + "locationName": "input" + }, + "StartTimecode": { + "shape": "__stringPattern010920405090509092", + "locationName": "startTimecode" + } + } + }, + "VideoOverlayInput": { + "type": "structure", + "members": { + "FileInput": { + "shape": "__stringPatternS3Https", + "locationName": "fileInput" + }, + "InputClippings": { + "shape": "__listOfVideoOverlayInputClipping", + "locationName": "inputClippings" + }, + "TimecodeSource": { + "shape": "InputTimecodeSource", + "locationName": "timecodeSource" + }, + "TimecodeStart": { + "shape": "__stringMin11Max11Pattern01D20305D205D", + "locationName": "timecodeStart" + } + } + }, + "VideoOverlayInputClipping": { + "type": "structure", + "members": { + "EndTimecode": { + "shape": "__stringPattern010920405090509092", + "locationName": "endTimecode" + }, + "StartTimecode": { + "shape": "__stringPattern010920405090509092", + "locationName": "startTimecode" + } + } + }, "VideoPreprocessor": { "type": "structure", "members": { @@ -10980,11 +11053,6 @@ "min": 0, "max": 1466400000 }, - "__integerMin0Max149": { - "type": "integer", - "min": 0, - "max": 149 - }, "__integerMin0Max15": { "type": "integer", "min": 0, @@ -11615,6 +11683,18 @@ "shape": "TeletextPageType" } }, + "__listOfVideoOverlay": { + "type": "list", + "member": { + "shape": "VideoOverlay" + } + }, + "__listOfVideoOverlayInputClipping": { + "type": "list", + "member": { + "shape": "VideoOverlayInputClipping" + } + }, "__listOfWarningGroup": { "type": "list", "member": { @@ -11938,4 +12018,4 @@ "timestampFormat": "unixTimestamp" } } -} +} \ No newline at end of file diff --git a/models/apis/mediaconvert/2017-08-29/docs-2.json b/models/apis/mediaconvert/2017-08-29/docs-2.json index 5aa01a350f3..5cc198c0248 100644 --- a/models/apis/mediaconvert/2017-08-29/docs-2.json +++ b/models/apis/mediaconvert/2017-08-29/docs-2.json @@ -1659,6 +1659,12 @@ "H264Settings$DynamicSubGop": "Specify whether to allow the number of B-frames in your output GOP structure to vary or not depending on your input video content. To improve the subjective video quality of your output that has high-motion content: Leave blank or keep the default value Adaptive. MediaConvert will use fewer B-frames for high-motion video content than low-motion content. The maximum number of B- frames is limited by the value that you choose for B-frames between reference frames. To use the same number B-frames for all types of content: Choose Static." } }, + "H264EndOfStreamMarkers": { + "base": "Optionally include or suppress markers at the end of your output that signal the end of the video stream. To include end of stream markers: Leave blank or keep the default value, Include. To not include end of stream markers: Choose Suppress. This is useful when your output will be inserted into another stream.", + "refs": { + "H264Settings$EndOfStreamMarkers": "Optionally include or suppress markers at the end of your output that signal the end of the video stream. To include end of stream markers: Leave blank or keep the default value, Include. To not include end of stream markers: Choose Suppress. This is useful when your output will be inserted into another stream." + } + }, "H264EntropyEncoding": { "base": "Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC.", "refs": { @@ -1821,6 +1827,12 @@ "H265Settings$DynamicSubGop": "Specify whether to allow the number of B-frames in your output GOP structure to vary or not depending on your input video content. To improve the subjective video quality of your output that has high-motion content: Leave blank or keep the default value Adaptive. MediaConvert will use fewer B-frames for high-motion video content than low-motion content. The maximum number of B- frames is limited by the value that you choose for B-frames between reference frames. To use the same number B-frames for all types of content: Choose Static." } }, + "H265EndOfStreamMarkers": { + "base": "Optionally include or suppress markers at the end of your output that signal the end of the video stream. To include end of stream markers: Leave blank or keep the default value, Include. To not include end of stream markers: Choose Suppress. This is useful when your output will be inserted into another stream.", + "refs": { + "H265Settings$EndOfStreamMarkers": "Optionally include or suppress markers at the end of your output that signal the end of the video stream. To include end of stream markers: Leave blank or keep the default value, Include. To not include end of stream markers: Choose Suppress. This is useful when your output will be inserted into another stream." + } + }, "H265FlickerAdaptiveQuantization": { "base": "Enable this setting to have the encoder reduce I-frame pop. I-frame pop appears as a visual flicker that can arise when the encoder saves bits by copying some macroblocks many times from frame to frame, and then refreshes them at the I-frame. When you enable this setting, the encoder updates these macroblocks slightly more often to smooth out the flicker. This setting is disabled by default. Related setting: In addition to enabling this setting, you must also set adaptiveQuantization to a value other than Off.", "refs": { @@ -2297,7 +2309,8 @@ "base": "Use this Timecode source setting, located under the input settings, to specify how the service counts input video frames. This input frame count affects only the behavior of features that apply to a single input at a time, such as input clipping and synchronizing some captions formats. Choose Embedded to use the timecodes in your input video. Choose Start at zero to start the first frame at zero. Choose Specified start to start the first frame at the timecode that you specify in the setting Start timecode. If you don't specify a value for Timecode source, the service will use Embedded by default. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", "refs": { "Input$TimecodeSource": "Use this Timecode source setting, located under the input settings, to specify how the service counts input video frames. This input frame count affects only the behavior of features that apply to a single input at a time, such as input clipping and synchronizing some captions formats. Choose Embedded to use the timecodes in your input video. Choose Start at zero to start the first frame at zero. Choose Specified start to start the first frame at the timecode that you specify in the setting Start timecode. If you don't specify a value for Timecode source, the service will use Embedded by default. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", - "InputTemplate$TimecodeSource": "Use this Timecode source setting, located under the input settings, to specify how the service counts input video frames. This input frame count affects only the behavior of features that apply to a single input at a time, such as input clipping and synchronizing some captions formats. Choose Embedded to use the timecodes in your input video. Choose Start at zero to start the first frame at zero. Choose Specified start to start the first frame at the timecode that you specify in the setting Start timecode. If you don't specify a value for Timecode source, the service will use Embedded by default. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode." + "InputTemplate$TimecodeSource": "Use this Timecode source setting, located under the input settings, to specify how the service counts input video frames. This input frame count affects only the behavior of features that apply to a single input at a time, such as input clipping and synchronizing some captions formats. Choose Embedded to use the timecodes in your input video. Choose Start at zero to start the first frame at zero. Choose Specified start to start the first frame at the timecode that you specify in the setting Start timecode. If you don't specify a value for Timecode source, the service will use Embedded by default. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", + "VideoOverlayInput$TimecodeSource": "Specify the starting timecode for your video overlay. To use the timecode present in your video overlay: Choose Embedded. To use a zerobased timecode: Choose Start at 0. To choose a timecode: Choose Specified start. When you do, enter the starting timecode in Start timecode. If you don't specify a value for Timecode source, MediaConvert uses Embedded by default." } }, "InputVideoGenerator": { @@ -3659,6 +3672,24 @@ "OutputDetail$VideoDetails": "Contains details about the output's video stream" } }, + "VideoOverlay": { + "base": "Overlay one or more videos on top of your input video.", + "refs": { + "__listOfVideoOverlay$member": null + } + }, + "VideoOverlayInput": { + "base": "Input settings for Video overlay. You can include one or more video overlays in sequence at different times that you specify.", + "refs": { + "VideoOverlay$Input": "Input settings for Video overlay. You can include one or more video overlays in sequence at different times that you specify." + } + }, + "VideoOverlayInputClipping": { + "base": "To transcode only portions of your video overlay, include one input clip for each part of your video overlay that you want in your output.", + "refs": { + "__listOfVideoOverlayInputClipping$member": null + } + }, "VideoPreprocessor": { "base": "Find additional transcoding features under Preprocessors. Enable the features at each output individually. These features are disabled by default.", "refs": { @@ -4127,13 +4158,6 @@ "H265Settings$HrdBufferSize": "Size of buffer (HRD buffer model) in bits. For example, enter five megabits as 5000000." } }, - "__integerMin0Max149": { - "base": null, - "refs": { - "JobSettings$FollowInputIndex": "Specifies which input metadata to use for the default \"Follow input\" option for the following settings: resolution, frame rate, and pixel aspect ratio. In the simplest case, specify which input is used based on its index in the job. For example if you specify 3, then the fourth input will be used from each input. If the job does not have a fourth input, then the first input will be used. If no followInputIndex is specified, then 0 will be chosen automatically.", - "JobTemplateSettings$FollowInputIndex": "Specifies which input metadata to use for the default \"Follow input\" option for the following settings: resolution, frame rate, and pixel aspect ratio. In the simplest case, specify which input is used based on its index in the job. For example if you specify 3, then the fourth input will be used from each input. If the job does not have a fourth input, then the first input will be used. If no followInputIndex is specified, then 0 will be chosen automatically." - } - }, "__integerMin0Max15": { "base": null, "refs": { @@ -5060,6 +5084,19 @@ "TeletextDestinationSettings$PageTypes": "Specify the page types for this Teletext page. If you don't specify a value here, the service sets the page type to the default value Subtitle. If you pass through the entire set of Teletext data, don't use this field. When you pass through a set of Teletext pages, your output has the same page types as your input." } }, + "__listOfVideoOverlay": { + "base": null, + "refs": { + "Input$VideoOverlays": "Contains an array of video overlays.", + "InputTemplate$VideoOverlays": "Contains an array of video overlays." + } + }, + "__listOfVideoOverlayInputClipping": { + "base": null, + "refs": { + "VideoOverlayInput$InputClippings": "Specify one or more clips to use from your video overlay. When you include an input clip, you must also specify its start timecode, end timecode, or both start and end timecode." + } + }, "__listOfWarningGroup": { "base": null, "refs": { @@ -5299,7 +5336,8 @@ "refs": { "Input$TimecodeStart": "Specify the timecode that you want the service to use for this input's initial frame. To use this setting, you must set the Timecode source setting, located under the input settings, to Specified start. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", "InputTemplate$TimecodeStart": "Specify the timecode that you want the service to use for this input's initial frame. To use this setting, you must set the Timecode source setting, located under the input settings, to Specified start. For more information about timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode.", - "MotionImageInserter$StartTime": "Specify when the motion overlay begins. Use timecode format (HH:MM:SS:FF or HH:MM:SS;FF). Make sure that the timecode you provide here takes into account how you have set up your timecode configuration under both job settings and input settings. The simplest way to do that is to set both to start at 0. If you need to set up your job to follow timecodes embedded in your source that don't start at zero, make sure that you specify a start time that is after the first embedded timecode. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/setting-up-timecode.html" + "MotionImageInserter$StartTime": "Specify when the motion overlay begins. Use timecode format (HH:MM:SS:FF or HH:MM:SS;FF). Make sure that the timecode you provide here takes into account how you have set up your timecode configuration under both job settings and input settings. The simplest way to do that is to set both to start at 0. If you need to set up your job to follow timecodes embedded in your source that don't start at zero, make sure that you specify a start time that is after the first embedded timecode. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/setting-up-timecode.html", + "VideoOverlayInput$TimecodeStart": "Specify the starting timecode for this video overlay. To use this setting, you must set Timecode source to Specified start." } }, "__stringMin14PatternS3BmpBMPPngPNGHttpsBmpBMPPngPNG": { @@ -5446,7 +5484,11 @@ "InputClipping$EndTimecode": "Set End timecode to the end of the portion of the input you are clipping. The frame corresponding to the End timecode value is included in the clip. Start timecode or End timecode may be left blank, but not both. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When choosing this value, take into account your setting for timecode source under input settings. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your clip to end six minutes into the video, use 01:06:00:00.", "InputClipping$StartTimecode": "Set Start timecode to the beginning of the portion of the input you are clipping. The frame corresponding to the Start timecode value is included in the clip. Start timecode or End timecode may be left blank, but not both. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When choosing this value, take into account your setting for Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your clip to begin five minutes into the video, use 01:05:00:00.", "TimecodeConfig$Anchor": "If you use an editing platform that relies on an anchor timecode, use Anchor Timecode to specify a timecode that will match the input video frame to the output video frame. Use 24-hour format with frame number, (HH:MM:SS:FF) or (HH:MM:SS;FF). This setting ignores frame rate conversion. System behavior for Anchor Timecode varies depending on your setting for Source. * If Source is set to Specified Start, the first input frame is the specified value in Start Timecode. Anchor Timecode and Start Timecode are used calculate output timecode. * If Source is set to Start at 0 the first frame is 00:00:00:00. * If Source is set to Embedded, the first frame is the timecode value on the first input frame of the input.", - "TimecodeConfig$Start": "Only use when you set Source to Specified start. Use Start timecode to specify the timecode for the initial frame. Use 24-hour format with frame number, (HH:MM:SS:FF) or (HH:MM:SS;FF)." + "TimecodeConfig$Start": "Only use when you set Source to Specified start. Use Start timecode to specify the timecode for the initial frame. Use 24-hour format with frame number, (HH:MM:SS:FF) or (HH:MM:SS;FF).", + "VideoOverlay$EndTimecode": "Enter the end timecode in the underlying input video for this overlay. Your overlay will be active through this frame. To display your video overlay for the duration of the underlying video: Leave blank. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for the underlying Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your overlay to end ten minutes into the video, enter 01:10:00:00.", + "VideoOverlay$StartTimecode": "Enter the start timecode in the underlying input video for this overlay. Your overlay will be active starting with this frame. To display your video overlay starting at the beginning of the underlying video: Leave blank. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for the underlying Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your overlay to begin five minutes into the video, enter 01:05:00:00.", + "VideoOverlayInputClipping$EndTimecode": "Specify the timecode of the last frame to include in your video overlay's clip. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for Timecode source.", + "VideoOverlayInputClipping$StartTimecode": "Specify the timecode of the first frame to include in your video overlay's clip. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for Timecode source." } }, "__stringPattern01D20305D205D": { @@ -5561,7 +5603,8 @@ "base": null, "refs": { "AudioSelector$ExternalAudioFileInput": "Specifies audio data from an external file source.", - "Input$FileInput": "Specify the source file for your transcoding job. You can use multiple inputs in a single job. The service concatenates these inputs, in the order that you specify them in the job, to create the outputs. If your input format is IMF, specify your input by providing the path to your CPL. For example, \"s3://bucket/vf/cpl.xml\". If the CPL is in an incomplete IMP, make sure to use *Supplemental IMPs* to specify any supplemental IMPs that contain assets referenced by the CPL." + "Input$FileInput": "Specify the source file for your transcoding job. You can use multiple inputs in a single job. The service concatenates these inputs, in the order that you specify them in the job, to create the outputs. If your input format is IMF, specify your input by providing the path to your CPL. For example, \"s3://bucket/vf/cpl.xml\". If the CPL is in an incomplete IMP, make sure to use *Supplemental IMPs* to specify any supplemental IMPs that contain assets referenced by the CPL.", + "VideoOverlayInput$FileInput": "Specify the input file S3, HTTP, or HTTPS URI for your video overlay. For consistency in color and formatting in your output video image, we recommend that you specify a video with similar characteristics as the underlying input video." } }, "__stringPatternSNManifestConfirmConditionNotificationNS": { @@ -5607,4 +5650,4 @@ } } } -} +} \ No newline at end of file diff --git a/models/apis/oam/2022-06-10/api-2.json b/models/apis/oam/2022-06-10/api-2.json index 456320a64fd..bb0eb02845f 100644 --- a/models/apis/oam/2022-06-10/api-2.json +++ b/models/apis/oam/2022-06-10/api-2.json @@ -603,7 +603,8 @@ "enum":[ "AWS::CloudWatch::Metric", "AWS::Logs::LogGroup", - "AWS::XRay::Trace" + "AWS::XRay::Trace", + "AWS::ApplicationInsights::Application" ] }, "ResourceTypesInput":{ diff --git a/models/apis/oam/2022-06-10/docs-2.json b/models/apis/oam/2022-06-10/docs-2.json index f985111ba53..61796d3d7ca 100644 --- a/models/apis/oam/2022-06-10/docs-2.json +++ b/models/apis/oam/2022-06-10/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Use Amazon CloudWatch Observability Access Manager to create and manage links between source accounts and monitoring accounts by using CloudWatch cross-account observability. With CloudWatch cross-account observability, you can monitor and troubleshoot applications that span multiple accounts within a Region. Seamlessly search, visualize, and analyze your metrics, logs, and traces in any of the linked accounts without account boundaries.

 <p>Set up one or more Amazon Web Services accounts as <i>monitoring accounts</i> and link them with multiple <i>source accounts</i>. A monitoring account is a central Amazon Web Services account that can view and interact with observability data generated from source accounts. A source account is an individual Amazon Web Services account that generates observability data for the resources that reside in it. Source accounts share their observability data with the monitoring account. The shared observability data can include metrics in Amazon CloudWatch, logs in Amazon CloudWatch Logs, and traces in X-Ray.</p> 
", + "service": "

Use Amazon CloudWatch Observability Access Manager to create and manage links between source accounts and monitoring accounts by using CloudWatch cross-account observability. With CloudWatch cross-account observability, you can monitor and troubleshoot applications that span multiple accounts within a Region. Seamlessly search, visualize, and analyze your metrics, logs, traces, and Application Insights applications in any of the linked accounts without account boundaries.

Set up one or more Amazon Web Services accounts as monitoring accounts and link them with multiple source accounts. A monitoring account is a central Amazon Web Services account that can view and interact with observability data generated from source accounts. A source account is an individual Amazon Web Services account that generates observability data for the resources that reside in it. Source accounts share their observability data with the monitoring account. The shared observability data can include metrics in Amazon CloudWatch, logs in Amazon CloudWatch Logs, traces in X-Ray, and applications in Amazon CloudWatch Application Insights.

", "operations": { "CreateLink": "

Creates a link between a source account and a sink that you have created in a monitoring account.

Before you create a link, you must create a sink in the monitoring account and create a sink policy in that account. The sink policy must permit the source account to link to it. You can grant permission to source accounts by granting permission to an entire organization or to individual accounts.

For more information, see CreateSink and PutSinkPolicy.

Each monitoring account can be linked to as many as 100,000 source accounts.

Each source account can be linked to as many as five monitoring accounts.

", "CreateSink": "

Use this to create a sink in the current account, so that it can be used as a monitoring account in CloudWatch cross-account observability. A sink is a resource that represents an attachment point in a monitoring account. Source accounts can link to the sink to send observability data.

After you create a sink, you must create a sink policy that allows source accounts to attach to it. For more information, see PutSinkPolicy.

Each account can contain one sink. If you delete a sink, you can then create a new one in that account.

", @@ -13,7 +13,7 @@ "ListLinks": "

Use this operation in a source account to return a list of links to monitoring account sinks that this source account has.

To find a list of links for one monitoring account sink, use ListAttachedLinks from within the monitoring account.

", "ListSinks": "

Use this operation in a monitoring account to return the list of sinks created in that account.

", "ListTagsForResource": "

Displays the tags associated with a resource. Both sinks and links support tagging.

", - "PutSinkPolicy": "

Creates or updates the resource policy that grants permissions to source accounts to link to the monitoring account sink. When you create a sink policy, you can grant permissions to all accounts in an organization or to individual accounts.

You can also use a sink policy to limit the types of data that is shared. The three types that you can allow or deny are:

See the examples in this section to see how to specify permitted source accounts and data types.

", + "PutSinkPolicy": "

Creates or updates the resource policy that grants permissions to source accounts to link to the monitoring account sink. When you create a sink policy, you can grant permissions to all accounts in an organization or to individual accounts.

You can also use a sink policy to limit the types of data that is shared. The three types that you can allow or deny are:

See the examples in this section to see how to specify permitted source accounts and data types.

", "TagResource": "

Assigns one or more tags (key-value pairs) to the specified resource. Both sinks and links can be tagged.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can use the TagResource action with a resource that already has tags. If you specify a new tag key for the alarm, this tag is appended to the list of tags associated with the alarm. If you specify a tag key that is already associated with the alarm, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource.

Unlike tagging permissions in other Amazon Web Services services, to tag or untag links and sinks you must have the oam:ResourceTag permission. The iam:ResourceTag permission does not allow you to tag and untag links and sinks.

", "UntagResource": "

Removes one or more tags from the specified resource.

Unlike tagging permissions in other Amazon Web Services services, to tag or untag links and sinks you must have the oam:ResourceTag permission. The iam:TagResource permission does not allow you to tag and untag links and sinks.

", "UpdateLink": "

Use this operation to change what types of data are shared from a source account to its linked monitoring account sink. You can't change the sink or change the monitoring account with this operation.

To update the list of tags associated with the sink, use TagResource.

" diff --git a/models/apis/oam/2022-06-10/endpoint-rule-set-1.json b/models/apis/oam/2022-06-10/endpoint-rule-set-1.json index 252a9968283..8e08eb2b3f9 100644 --- a/models/apis/oam/2022-06-10/endpoint-rule-set-1.json +++ b/models/apis/oam/2022-06-10/endpoint-rule-set-1.json @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,13 +32,12 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], "type": "tree", @@ -46,23 +45,20 @@ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], "type": "tree", "rules": [ { @@ -71,67 +67,42 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", "type": "error" }, { "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "endpoint": { + "url": { + "ref": "Endpoint" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, + } + ] + }, + { + "conditions": [], + "type": "tree", + "rules": [ { "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", + "fn": "isSet", "argv": [ { - "ref": "UseDualStack" - }, - true + "ref": "Region" + } ] } ], @@ -140,168 +111,238 @@ { "conditions": [ { - "fn": "booleanEquals", + "fn": "aws.partition", "argv": [ - true, { - "fn": "getAttr", + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] }, - "supportsDualStack" + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://oam-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://oam-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://oam-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://oam-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsDualStack" + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://oam.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] - } - ], - "type": "tree", - "rules": [ + }, { "conditions": [], - "endpoint": { - "url": "https://oam.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://oam.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } ] }, { "conditions": [], - "endpoint": { - "url": "https://oam.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } diff --git a/models/apis/oam/2022-06-10/endpoint-tests-1.json b/models/apis/oam/2022-06-10/endpoint-tests-1.json index a7d45517cb7..ba42a2d0256 100644 --- a/models/apis/oam/2022-06-10/endpoint-tests-1.json +++ b/models/apis/oam/2022-06-10/endpoint-tests-1.json @@ -1,55 +1,55 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://oam-fips.us-gov-east-1.api.aws" + "url": "https://oam-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam-fips.us-gov-east-1.amazonaws.com" + "url": "https://oam-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://oam.us-gov-east-1.api.aws" + "url": "https://oam.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam.us-gov-east-1.amazonaws.com" + "url": "https://oam.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -99,109 +99,109 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://oam-fips.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://oam-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://oam.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam.us-iso-east-1.c2s.ic.gov" + "url": "https://oam.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://oam-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam-fips.us-east-1.amazonaws.com" + "url": "https://oam-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://oam.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://oam.us-east-1.amazonaws.com" + "url": "https://oam.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -210,9 +210,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -223,9 +223,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -234,9 +234,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -247,22 +247,35 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -272,9 +285,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff --git a/models/apis/sagemaker/2017-07-24/api-2.json b/models/apis/sagemaker/2017-07-24/api-2.json index 7f0d1e9ba3e..dcb488af694 100644 --- a/models/apis/sagemaker/2017-07-24/api-2.json +++ b/models/apis/sagemaker/2017-07-24/api-2.json @@ -17386,7 +17386,8 @@ "ml.inf2.xlarge", "ml.inf2.8xlarge", "ml.inf2.24xlarge", - "ml.inf2.48xlarge" + "ml.inf2.48xlarge", + "ml.p5.48xlarge" ] }, "ProductionVariantList":{ @@ -18778,10 +18779,7 @@ }, "SelectiveExecutionConfig":{ "type":"structure", - "required":[ - "SourcePipelineExecutionArn", - "SelectedSteps" - ], + "required":["SelectedSteps"], "members":{ "SourcePipelineExecutionArn":{"shape":"PipelineExecutionArn"}, "SelectedSteps":{"shape":"SelectedStepList"} diff --git a/models/apis/sagemaker/2017-07-24/docs-2.json b/models/apis/sagemaker/2017-07-24/docs-2.json index 8e99ebb278d..7f2939fe687 100644 --- a/models/apis/sagemaker/2017-07-24/docs-2.json +++ b/models/apis/sagemaker/2017-07-24/docs-2.json @@ -10691,7 +10691,7 @@ "PipelineExecutionSummary$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", "RetryPipelineExecutionRequest$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", "RetryPipelineExecutionResponse$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", - "SelectiveExecutionConfig$SourcePipelineExecutionArn": "

The ARN from a reference execution of the current pipeline. Used to copy input collaterals needed for the selected steps to run. The execution status of the pipeline can be either Failed or Success.

", + "SelectiveExecutionConfig$SourcePipelineExecutionArn": "

The ARN from a reference execution of the current pipeline. Used to copy input collaterals needed for the selected steps to run. The execution status of the pipeline can be either Failed or Success.

This field is required if the steps you specify for SelectedSteps depend on output collaterals from any non-specified pipeline steps. For more information, see Selective Execution for Pipeline Steps.

", "SelectiveExecutionResult$SourcePipelineExecutionArn": "

The ARN from an execution of the current pipeline.

", "SendPipelineExecutionStepFailureResponse$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", "SendPipelineExecutionStepSuccessResponse$PipelineExecutionArn": "

The Amazon Resource Name (ARN) of the pipeline execution.

", diff --git a/models/apis/wellarchitected/2020-03-31/api-2.json b/models/apis/wellarchitected/2020-03-31/api-2.json index 8e2d5bf8653..078dc63019d 100644 --- a/models/apis/wellarchitected/2020-03-31/api-2.json +++ b/models/apis/wellarchitected/2020-03-31/api-2.json @@ -134,6 +134,42 @@ {"shape":"ThrottlingException"} ] }, + "CreateReviewTemplate":{ + "name":"CreateReviewTemplate", + "http":{ + "method":"POST", + "requestUri":"/reviewTemplates" + }, + "input":{"shape":"CreateReviewTemplateInput"}, + "output":{"shape":"CreateReviewTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "CreateTemplateShare":{ + "name":"CreateTemplateShare", + "http":{ + "method":"POST", + "requestUri":"/templates/shares/{TemplateArn}" + }, + "input":{"shape":"CreateTemplateShareInput"}, + "output":{"shape":"CreateTemplateShareOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "CreateWorkload":{ "name":"CreateWorkload", "http":{ @@ -234,6 +270,38 @@ {"shape":"ThrottlingException"} ] }, + "DeleteReviewTemplate":{ + "name":"DeleteReviewTemplate", + "http":{ + "method":"DELETE", + "requestUri":"/reviewTemplates/{TemplateArn}" + }, + "input":{"shape":"DeleteReviewTemplateInput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "DeleteTemplateShare":{ + "name":"DeleteTemplateShare", + "http":{ + "method":"DELETE", + "requestUri":"/templates/shares/{TemplateArn}/{ShareId}" + }, + "input":{"shape":"DeleteTemplateShareInput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "DeleteWorkload":{ "name":"DeleteWorkload", "http":{ @@ -458,6 +526,54 @@ {"shape":"ThrottlingException"} ] }, + "GetReviewTemplate":{ + "name":"GetReviewTemplate", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates/{TemplateArn}" + }, + "input":{"shape":"GetReviewTemplateInput"}, + "output":{"shape":"GetReviewTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetReviewTemplateAnswer":{ + "name":"GetReviewTemplateAnswer", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}" + }, + "input":{"shape":"GetReviewTemplateAnswerInput"}, + "output":{"shape":"GetReviewTemplateAnswerOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetReviewTemplateLensReview":{ + "name":"GetReviewTemplateLensReview", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}" + }, + "input":{"shape":"GetReviewTemplateLensReviewInput"}, + "output":{"shape":"GetReviewTemplateLensReviewOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "GetWorkload":{ "name":"GetWorkload", "http":{ @@ -680,6 +796,37 @@ {"shape":"ThrottlingException"} ] }, + "ListReviewTemplateAnswers":{ + "name":"ListReviewTemplateAnswers", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers" + }, + "input":{"shape":"ListReviewTemplateAnswersInput"}, + "output":{"shape":"ListReviewTemplateAnswersOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListReviewTemplates":{ + "name":"ListReviewTemplates", + "http":{ + "method":"GET", + "requestUri":"/reviewTemplates" + }, + "input":{"shape":"ListReviewTemplatesInput"}, + "output":{"shape":"ListReviewTemplatesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "ListShareInvitations":{ "name":"ListShareInvitations", "http":{ @@ -708,6 +855,22 @@ {"shape":"ResourceNotFoundException"} ] }, + "ListTemplateShares":{ + "name":"ListTemplateShares", + "http":{ + "method":"GET", + "requestUri":"/templates/shares/{TemplateArn}" + }, + "input":{"shape":"ListTemplateSharesInput"}, + "output":{"shape":"ListTemplateSharesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "ListWorkloadShares":{ "name":"ListWorkloadShares", "http":{ @@ -831,6 +994,57 @@ {"shape":"ThrottlingException"} ] }, + "UpdateReviewTemplate":{ + "name":"UpdateReviewTemplate", + "http":{ + "method":"PATCH", + "requestUri":"/reviewTemplates/{TemplateArn}" + }, + "input":{"shape":"UpdateReviewTemplateInput"}, + "output":{"shape":"UpdateReviewTemplateOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateReviewTemplateAnswer":{ + "name":"UpdateReviewTemplateAnswer", + "http":{ + "method":"PATCH", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}" + }, + "input":{"shape":"UpdateReviewTemplateAnswerInput"}, + "output":{"shape":"UpdateReviewTemplateAnswerOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateReviewTemplateLensReview":{ + "name":"UpdateReviewTemplateLensReview", + "http":{ + "method":"PATCH", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}" + }, + "input":{"shape":"UpdateReviewTemplateLensReviewInput"}, + "output":{"shape":"UpdateReviewTemplateLensReviewOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, "UpdateShareInvitation":{ "name":"UpdateShareInvitation", "http":{ @@ -913,6 +1127,22 @@ {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"} ] + }, + "UpgradeReviewTemplateLensReview":{ + "name":"UpgradeReviewTemplateLensReview", + "http":{ + "method":"PUT", + "requestUri":"/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/upgrade" + }, + "input":{"shape":"UpgradeReviewTemplateLensReviewInput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] } }, "shapes":{ @@ -1421,6 +1651,59 @@ "ProfileArn":{"shape":"ProfileArn"} } }, + "CreateReviewTemplateInput":{ + "type":"structure", + "required":[ + "TemplateName", + "Description", + "Lenses", + "ClientRequestToken" + ], + "members":{ + "TemplateName":{"shape":"TemplateName"}, + "Description":{"shape":"TemplateDescription"}, + "Lenses":{"shape":"ReviewTemplateLenses"}, + "Notes":{"shape":"Notes"}, + "Tags":{"shape":"TagMap"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + } + } + }, + "CreateReviewTemplateOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"} + } + }, + "CreateTemplateShareInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "SharedWith", + "ClientRequestToken" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "SharedWith":{"shape":"SharedWith"}, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true + } + } + }, + "CreateTemplateShareOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "ShareId":{"shape":"ShareId"} + } + }, "CreateWorkloadInput":{ "type":"structure", "required":[ @@ -1451,7 +1734,8 @@ "Tags":{"shape":"TagMap"}, "DiscoveryConfig":{"shape":"WorkloadDiscoveryConfig"}, "Applications":{"shape":"WorkloadApplications"}, - "ProfileArns":{"shape":"WorkloadProfileArns"} + "ProfileArns":{"shape":"WorkloadProfileArns"}, + "ReviewTemplateArns":{"shape":"ReviewTemplateArns"} } }, "CreateWorkloadOutput":{ @@ -1595,6 +1879,52 @@ } } }, + "DeleteReviewTemplateInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "ClientRequestToken" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true, + "location":"querystring", + "locationName":"ClientRequestToken" + } + } + }, + "DeleteTemplateShareInput":{ + "type":"structure", + "required":[ + "ShareId", + "TemplateArn", + "ClientRequestToken" + ], + "members":{ + "ShareId":{ + "shape":"ShareId", + "location":"uri", + "locationName":"ShareId" + }, + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "ClientRequestToken":{ + "shape":"ClientRequestToken", + "idempotencyToken":true, + "location":"querystring", + "locationName":"ClientRequestToken" + } + } + }, "DeleteWorkloadInput":{ "type":"structure", "required":[ @@ -1977,23 +2307,99 @@ "ProfileTemplate":{"shape":"ProfileTemplate"} } }, - "GetWorkloadInput":{ + "GetReviewTemplateAnswerInput":{ "type":"structure", - "required":["WorkloadId"], + "required":[ + "TemplateArn", + "LensAlias", + "QuestionId" + ], "members":{ - "WorkloadId":{ - "shape":"WorkloadId", + "TemplateArn":{ + "shape":"TemplateArn", "location":"uri", - "locationName":"WorkloadId" - } - } - }, - "GetWorkloadOutput":{ - "type":"structure", - "members":{ - "Workload":{"shape":"Workload"} - } - }, + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "QuestionId":{ + "shape":"QuestionId", + "location":"uri", + "locationName":"QuestionId" + } + } + }, + "GetReviewTemplateAnswerOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensAlias":{"shape":"LensAlias"}, + "Answer":{"shape":"ReviewTemplateAnswer"} + } + }, + "GetReviewTemplateInput":{ + "type":"structure", + "required":["TemplateArn"], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + } + } + }, + "GetReviewTemplateLensReviewInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + } + } + }, + "GetReviewTemplateLensReviewOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensReview":{"shape":"ReviewTemplateLensReview"} + } + }, + "GetReviewTemplateOutput":{ + "type":"structure", + "members":{ + "ReviewTemplate":{"shape":"ReviewTemplate"} + } + }, + "GetWorkloadInput":{ + "type":"structure", + "required":["WorkloadId"], + "members":{ + "WorkloadId":{ + "shape":"WorkloadId", + "location":"uri", + "locationName":"WorkloadId" + } + } + }, + "GetWorkloadOutput":{ + "type":"structure", + "members":{ + "Workload":{"shape":"Workload"} + } + }, "HelpfulResourceUrl":{ "type":"string", "max":2048, @@ -2228,7 +2634,9 @@ "LensAlias":{"shape":"LensAlias"}, "LensArn":{"shape":"LensArn"}, "CurrentLensVersion":{"shape":"LensVersion"}, - "LatestLensVersion":{"shape":"LensVersion"} + "LatestLensVersion":{"shape":"LensVersion"}, + "ResourceArn":{"shape":"ResourceArn"}, + "ResourceName":{"shape":"WorkloadName"} } }, "LensVersion":{ @@ -2556,7 +2964,8 @@ "members":{ "WorkloadId":{"shape":"WorkloadId"}, "NextToken":{"shape":"NextToken"}, - "MaxResults":{"shape":"ListNotificationsMaxResults"} + "MaxResults":{"shape":"ListNotificationsMaxResults"}, + "ResourceArn":{"shape":"ResourceArn"} } }, "ListNotificationsMaxResults":{ @@ -2673,6 +3082,76 @@ "NextToken":{"shape":"NextToken"} } }, + "ListReviewTemplateAnswersInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "PillarId":{ + "shape":"PillarId", + "location":"querystring", + "locationName":"PillarId" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"ListReviewTemplateAnswersMaxResults", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListReviewTemplateAnswersMaxResults":{ + "type":"integer", + "max":50, + "min":1 + }, + "ListReviewTemplateAnswersOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensAlias":{"shape":"LensAlias"}, + "AnswerSummaries":{"shape":"ReviewTemplateAnswerSummaries"}, + "NextToken":{"shape":"NextToken"} + } + }, + "ListReviewTemplatesInput":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListReviewTemplatesOutput":{ + "type":"structure", + "members":{ + "ReviewTemplates":{"shape":"ReviewTemplates"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListShareInvitationsInput":{ "type":"structure", "members":{ @@ -2705,6 +3184,11 @@ "shape":"ProfileNamePrefix", "location":"querystring", "locationName":"ProfileNamePrefix" + }, + "TemplateNamePrefix":{ + "shape":"TemplateNamePrefix", + "location":"querystring", + "locationName":"TemplateNamePrefix" } } }, @@ -2737,6 +3221,50 @@ "Tags":{"shape":"TagMap"} } }, + "ListTemplateSharesInput":{ + "type":"structure", + "required":["TemplateArn"], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "SharedWithPrefix":{ + "shape":"SharedWithPrefix", + "location":"querystring", + "locationName":"SharedWithPrefix" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"ListTemplateSharesMaxResults", + "location":"querystring", + "locationName":"MaxResults" + }, + "Status":{ + "shape":"ShareStatus", + "location":"querystring", + "locationName":"Status" + } + } + }, + "ListTemplateSharesMaxResults":{ + "type":"integer", + "max":50, + "min":1 + }, + "ListTemplateSharesOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "TemplateShareSummaries":{"shape":"TemplateShareSummaries"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListWorkloadSharesInput":{ "type":"structure", "required":["WorkloadId"], @@ -3119,6 +3647,18 @@ "min":1, "pattern":"^[A-Za-z0-9-]+$" }, + "Question":{ + "type":"string", + "enum":[ + "UNANSWERED", + "ANSWERED" + ] + }, + "QuestionCounts":{ + "type":"map", + "key":{"shape":"Question"}, + "value":{"shape":"Count"} + }, "QuestionDescription":{ "type":"string", "max":1024, @@ -3180,6 +3720,12 @@ "JSON" ] }, + "ResourceArn":{ + "type":"string", + "max":250, + "min":50, + "pattern":"arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\\d:\\d{12}:(review-template)/[a-f0-9]{32}" + }, "ResourceNotFoundException":{ "type":"structure", "required":[ @@ -3195,6 +3741,133 @@ "error":{"httpStatusCode":404}, "exception":true }, + "ReviewTemplate":{ + "type":"structure", + "members":{ + "Description":{"shape":"TemplateDescription"}, + "Lenses":{"shape":"ReviewTemplateLenses"}, + "Notes":{"shape":"Notes"}, + "QuestionCounts":{"shape":"QuestionCounts"}, + "Owner":{"shape":"AwsAccountId"}, + "UpdatedAt":{"shape":"Timestamp"}, + "TemplateArn":{"shape":"TemplateArn"}, + "TemplateName":{"shape":"TemplateName"}, + "Tags":{"shape":"TagMap"}, + "UpdateStatus":{"shape":"ReviewTemplateUpdateStatus"}, + "ShareInvitationId":{"shape":"ShareInvitationId"} + } + }, + "ReviewTemplateAnswer":{ + "type":"structure", + "members":{ + "QuestionId":{"shape":"QuestionId"}, + "PillarId":{"shape":"PillarId"}, + "QuestionTitle":{"shape":"QuestionTitle"}, + "QuestionDescription":{"shape":"QuestionDescription"}, + "ImprovementPlanUrl":{"shape":"ImprovementPlanUrl"}, + "HelpfulResourceUrl":{"shape":"HelpfulResourceUrl"}, + "HelpfulResourceDisplayText":{"shape":"DisplayText"}, + "Choices":{"shape":"Choices"}, + "SelectedChoices":{"shape":"SelectedChoices"}, + "ChoiceAnswers":{"shape":"ChoiceAnswers"}, + "IsApplicable":{"shape":"IsApplicable"}, + "AnswerStatus":{"shape":"ReviewTemplateAnswerStatus"}, + "Notes":{"shape":"Notes"}, + "Reason":{"shape":"AnswerReason"} + } + }, + "ReviewTemplateAnswerStatus":{ + "type":"string", + "enum":[ + "UNANSWERED", + "ANSWERED" + ] + }, + "ReviewTemplateAnswerSummaries":{ + "type":"list", + "member":{"shape":"ReviewTemplateAnswerSummary"} + }, + "ReviewTemplateAnswerSummary":{ + "type":"structure", + "members":{ + "QuestionId":{"shape":"QuestionId"}, + "PillarId":{"shape":"PillarId"}, + "QuestionTitle":{"shape":"QuestionTitle"}, + "Choices":{"shape":"Choices"}, + "SelectedChoices":{"shape":"SelectedChoices"}, + "ChoiceAnswerSummaries":{"shape":"ChoiceAnswerSummaries"}, + "IsApplicable":{"shape":"IsApplicable"}, + "AnswerStatus":{"shape":"ReviewTemplateAnswerStatus"}, + "Reason":{"shape":"AnswerReason"}, + "QuestionType":{"shape":"QuestionType"} + } + }, + "ReviewTemplateArns":{ + "type":"list", + "member":{"shape":"TemplateArn"}, + "max":1 + }, + "ReviewTemplateLensAliases":{ + "type":"list", + "member":{"shape":"LensAlias"}, + "max":10, + "min":1 + }, + "ReviewTemplateLensReview":{ + "type":"structure", + "members":{ + "LensAlias":{"shape":"LensAlias"}, + "LensArn":{"shape":"LensArn"}, + "LensVersion":{"shape":"LensVersion"}, + "LensName":{"shape":"LensName"}, + "LensStatus":{"shape":"LensStatus"}, + "PillarReviewSummaries":{"shape":"ReviewTemplatePillarReviewSummaries"}, + "UpdatedAt":{"shape":"Timestamp"}, + "Notes":{"shape":"Notes"}, + "QuestionCounts":{"shape":"QuestionCounts"}, + "NextToken":{"shape":"NextToken"} + } + }, + "ReviewTemplateLenses":{ + "type":"list", + "member":{"shape":"LensAlias"} + }, + "ReviewTemplatePillarReviewSummaries":{ + "type":"list", + "member":{"shape":"ReviewTemplatePillarReviewSummary"} + }, + "ReviewTemplatePillarReviewSummary":{ + "type":"structure", + "members":{ + "PillarId":{"shape":"PillarId"}, + "PillarName":{"shape":"PillarName"}, + "Notes":{"shape":"Notes"}, + "QuestionCounts":{"shape":"QuestionCounts"} + } + }, + "ReviewTemplateSummary":{ + "type":"structure", + "members":{ + "Description":{"shape":"TemplateDescription"}, + "Lenses":{"shape":"ReviewTemplateLenses"}, + "Owner":{"shape":"AwsAccountId"}, + "UpdatedAt":{"shape":"Timestamp"}, + "TemplateArn":{"shape":"TemplateArn"}, + "TemplateName":{"shape":"TemplateName"}, + "UpdateStatus":{"shape":"ReviewTemplateUpdateStatus"} + } + }, + "ReviewTemplateUpdateStatus":{ + "type":"string", + "enum":[ + "CURRENT", + "LENS_NOT_CURRENT" + ] + }, + "ReviewTemplates":{ + "type":"list", + "member":{"shape":"ReviewTemplateSummary"} + }, "Risk":{ "type":"string", "enum":[ @@ -3252,7 +3925,8 @@ "WorkloadId":{"shape":"WorkloadId"}, "LensAlias":{"shape":"LensAlias"}, "LensArn":{"shape":"LensArn"}, - "ProfileArn":{"shape":"ProfileArn"} + "ProfileArn":{"shape":"ProfileArn"}, + "TemplateArn":{"shape":"TemplateArn"} } }, "ShareInvitationAction":{ @@ -3283,7 +3957,9 @@ "LensName":{"shape":"LensName"}, "LensArn":{"shape":"LensArn"}, "ProfileName":{"shape":"ProfileName"}, - "ProfileArn":{"shape":"ProfileArn"} + "ProfileArn":{"shape":"ProfileArn"}, + "TemplateName":{"shape":"TemplateName"}, + "TemplateArn":{"shape":"TemplateArn"} } }, "ShareResourceType":{ @@ -3291,7 +3967,8 @@ "enum":[ "WORKLOAD", "LENS", - "PROFILE" + "PROFILE", + "TEMPLATE" ] }, "ShareStatus":{ @@ -3364,10 +4041,46 @@ "max":256, "min":0 }, + "TemplateArn":{ + "type":"string", + "max":250, + "min":50, + "pattern":"arn:aws(-us-gov|-iso(-[a-z])?|-cn)?:wellarchitected:[a-z]{2}(-gov|-iso([a-z])?)?-[a-z]+-\\d:\\d{12}:(review-template)/[a-f0-9]{32}" + }, + "TemplateDescription":{ + "type":"string", + "max":250, + "min":3, + "pattern":"^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + }, + "TemplateName":{ + "type":"string", + "max":100, + "min":3, + "pattern":"^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + }, + "TemplateNamePrefix":{ + "type":"string", + "max":100, + "pattern":"^[A-Za-z0-9-_.,:/()@!&?#+'’\\s]+$" + }, "TemplateQuestions":{ "type":"list", "member":{"shape":"ProfileTemplateQuestion"} }, + "TemplateShareSummaries":{ + "type":"list", + "member":{"shape":"TemplateShareSummary"} + }, + "TemplateShareSummary":{ + "type":"structure", + "members":{ + "ShareId":{"shape":"ShareId"}, + "SharedWith":{"shape":"SharedWith"}, + "Status":{"shape":"ShareStatus"}, + "StatusMessage":{"shape":"StatusMessage"} + } + }, "ThrottlingException":{ "type":"structure", "required":["Message"], @@ -3504,6 +4217,94 @@ "Profile":{"shape":"Profile"} } }, + "UpdateReviewTemplateAnswerInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias", + "QuestionId" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "QuestionId":{ + "shape":"QuestionId", + "location":"uri", + "locationName":"QuestionId" + }, + "SelectedChoices":{"shape":"SelectedChoices"}, + "ChoiceUpdates":{"shape":"ChoiceUpdates"}, + "Notes":{"shape":"Notes"}, + "IsApplicable":{"shape":"IsApplicable"}, + "Reason":{"shape":"AnswerReason"} + } + }, + "UpdateReviewTemplateAnswerOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensAlias":{"shape":"LensAlias"}, + "Answer":{"shape":"ReviewTemplateAnswer"} + } + }, + "UpdateReviewTemplateInput":{ + "type":"structure", + "required":["TemplateArn"], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "TemplateName":{"shape":"TemplateName"}, + "Description":{"shape":"TemplateDescription"}, + "Notes":{"shape":"Notes"}, + "LensesToAssociate":{"shape":"ReviewTemplateLensAliases"}, + "LensesToDisassociate":{"shape":"ReviewTemplateLensAliases"} + } + }, + "UpdateReviewTemplateLensReviewInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "LensNotes":{"shape":"Notes"}, + "PillarNotes":{"shape":"PillarNotes"} + } + }, + "UpdateReviewTemplateLensReviewOutput":{ + "type":"structure", + "members":{ + "TemplateArn":{"shape":"TemplateArn"}, + "LensReview":{"shape":"ReviewTemplateLensReview"} + } + }, + "UpdateReviewTemplateOutput":{ + "type":"structure", + "members":{ + "ReviewTemplate":{"shape":"ReviewTemplate"} + } + }, "UpdateShareInvitationInput":{ "type":"structure", "required":[ @@ -3632,6 +4433,26 @@ } } }, + "UpgradeReviewTemplateLensReviewInput":{ + "type":"structure", + "required":[ + "TemplateArn", + "LensAlias" + ], + "members":{ + "TemplateArn":{ + "shape":"TemplateArn", + "location":"uri", + "locationName":"TemplateArn" + }, + "LensAlias":{ + "shape":"LensAlias", + "location":"uri", + "locationName":"LensAlias" + }, + "ClientRequestToken":{"shape":"ClientRequestToken"} + } + }, "Urls":{ "type":"list", "member":{"shape":"ChoiceContent"} diff --git a/models/apis/wellarchitected/2020-03-31/docs-2.json b/models/apis/wellarchitected/2020-03-31/docs-2.json index 5250fe0d23f..23d4536a49d 100644 --- a/models/apis/wellarchitected/2020-03-31/docs-2.json +++ b/models/apis/wellarchitected/2020-03-31/docs-2.json @@ -9,12 +9,16 @@ "CreateMilestone": "

Create a milestone for an existing workload.

", "CreateProfile": "

Create a profile.

", "CreateProfileShare": "

Create a profile share.

", - "CreateWorkload": "

Create a new workload.

The owner of a workload can share the workload with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region. Only the owner of a workload can delete it.

For more information, see Defining a Workload in the Well-Architected Tool User Guide.

Either AwsRegions, NonAwsRegions, or both must be specified when creating a workload.

You also must specify ReviewOwner, even though the parameter is listed as not being required in the following section.

", + "CreateReviewTemplate": "

Create a review template.

Disclaimer

Do not include or gather personal identifiable information (PII) of end users or other identifiable individuals in or via your review templates. If your review template or those shared with you and used in your account do include or collect PII you are responsible for: ensuring that the included PII is processed in accordance with applicable law, providing adequate privacy notices, and obtaining necessary consents for processing such data.

", + "CreateTemplateShare": "

Create a review template share.

The owner of a review template can share it with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region.

Shared access to a review template is not removed until the review template share invitation is deleted.

If you share a review template with an organization or OU, all accounts in the organization or OU are granted access to the review template.

Disclaimer

By sharing your review template with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your review template available to those other accounts.

", + "CreateWorkload": "

Create a new workload.

The owner of a workload can share the workload with other Amazon Web Services accounts, users, an organization, and organizational units (OUs) in the same Amazon Web Services Region. Only the owner of a workload can delete it.

For more information, see Defining a Workload in the Well-Architected Tool User Guide.

Either AwsRegions, NonAwsRegions, or both must be specified when creating a workload.

You also must specify ReviewOwner, even though the parameter is listed as not being required in the following section.

When creating a workload using a review template, you must have the following IAM permissions:

", "CreateWorkloadShare": "

Create a workload share.

The owner of a workload can share it with other Amazon Web Services accounts and users in the same Amazon Web Services Region. Shared access to a workload is not removed until the workload invitation is deleted.

If you share a workload with an organization or OU, all accounts in the organization or OU are granted access to the workload.

For more information, see Sharing a workload in the Well-Architected Tool User Guide.

", "DeleteLens": "

Delete an existing lens.

Only the owner of a lens can delete it. After the lens is deleted, Amazon Web Services accounts and users that you shared the lens with can continue to use it, but they will no longer be able to apply it to new workloads.

Disclaimer

By sharing your custom lenses with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your custom lenses available to those other accounts. Those other accounts may continue to access and use your shared custom lenses even if you delete the custom lenses from your own Amazon Web Services account or terminate your Amazon Web Services account.

", "DeleteLensShare": "

Delete a lens share.

After the lens share is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the lens with can continue to use it, but they will no longer be able to apply it to new workloads.

Disclaimer

By sharing your custom lenses with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your custom lenses available to those other accounts. Those other accounts may continue to access and use your shared custom lenses even if you delete the custom lenses from your own Amazon Web Services account or terminate your Amazon Web Services account.

", "DeleteProfile": "

Delete a profile.

Disclaimer

By sharing your profile with other Amazon Web Services accounts, you acknowledge that Amazon Web Services will make your profile available to those other accounts. Those other accounts may continue to access and use your shared profile even if you delete the profile from your own Amazon Web Services account or terminate your Amazon Web Services account.

", "DeleteProfileShare": "

Delete a profile share.

", + "DeleteReviewTemplate": "

Delete a review template.

Only the owner of a review template can delete it.

After the review template is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the review template with will no longer be able to apply it to new workloads.

", + "DeleteTemplateShare": "

Delete a review template share.

After the review template share is deleted, Amazon Web Services accounts, users, organizations, and organizational units (OUs) that you shared the review template with will no longer be able to apply it to new workloads.

", "DeleteWorkload": "

Delete an existing workload.

", "DeleteWorkloadShare": "

Delete a workload share.

", "DisassociateLenses": "

Disassociate a lens from a workload.

Up to 10 lenses can be disassociated from a workload in a single API operation.

The Amazon Web Services Well-Architected Framework lens (wellarchitected) cannot be removed from a workload.

", @@ -29,6 +33,9 @@ "GetMilestone": "

Get a milestone for an existing workload.

", "GetProfile": "

Get profile information.

", "GetProfileTemplate": "

Get profile template.

", + "GetReviewTemplate": "

Get review template.

", + "GetReviewTemplateAnswer": "

Get review template answer.

", + "GetReviewTemplateLensReview": "

Get a lens review associated with a review template.

", "GetWorkload": "

Get an existing workload.

", "ImportLens": "

Import a new custom lens or update an existing custom lens.

To update an existing custom lens, specify its ARN as the LensAlias. If no ARN is specified, a new custom lens is created.

The new or updated lens will have a status of DRAFT. The lens cannot be applied to workloads or shared with other Amazon Web Services accounts until it's published with CreateLensVersion.

Lenses are defined in JSON. For more information, see JSON format specification in the Well-Architected Tool User Guide.

A custom lens cannot exceed 500 KB in size.

Disclaimer

Do not include or gather personal identifiable information (PII) of end users or other identifiable individuals in or via your custom lenses. If your custom lens or those shared with you and used in your account do include or collect PII you are responsible for: ensuring that the included PII is processed in accordance with applicable law, providing adequate privacy notices, and obtaining necessary consents for processing such data.

", "ListAnswers": "

List of answers for a particular workload and lens.

", @@ -43,21 +50,28 @@ "ListProfileNotifications": "

List profile notifications.

", "ListProfileShares": "

List profile shares.

", "ListProfiles": "

List profiles.

", - "ListShareInvitations": "

List the workload invitations.

", - "ListTagsForResource": "

List the tags for a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a profile ARN.

", + "ListReviewTemplateAnswers": "

List the answers of a review template.

", + "ListReviewTemplates": "

List review templates.

", + "ListShareInvitations": "

List the share invitations.

WorkloadNamePrefix, LensNamePrefix, ProfileNamePrefix, and TemplateNamePrefix are mutually exclusive. Use the parameter that matches your ShareResourceType.

", + "ListTagsForResource": "

List the tags for a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

", + "ListTemplateShares": "

List review template shares.

", "ListWorkloadShares": "

List the workload shares associated with the workload.

", "ListWorkloads": "

Paginated list of workloads.

", - "TagResource": "

Adds one or more tags to the specified resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a profile ARN.

", - "UntagResource": "

Deletes specified tags from a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a profile ARN.

To specify multiple tags, use separate tagKeys parameters, for example:

DELETE /tags/WorkloadArn?tagKeys=key1&tagKeys=key2

", + "TagResource": "

Adds one or more tags to the specified resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

", + "UntagResource": "

Deletes specified tags from a resource.

The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile ARN, or review template ARN.

To specify multiple tags, use separate tagKeys parameters, for example:

DELETE /tags/WorkloadArn?tagKeys=key1&tagKeys=key2

", "UpdateAnswer": "

Update the answer to a specific question in a workload review.

", "UpdateGlobalSettings": "

Updates whether the Amazon Web Services account is opted into organization sharing and discovery integration features.

", "UpdateLensReview": "

Update lens review for a particular workload.

", "UpdateProfile": "

Update a profile.

", + "UpdateReviewTemplate": "

Update a review template.

", + "UpdateReviewTemplateAnswer": "

Update a review template answer.

", + "UpdateReviewTemplateLensReview": "

Update a lens review associated with a review template.

", "UpdateShareInvitation": "

Update a workload or custom lens share invitation.

This API operation can be called independently of any resource. Previous documentation implied that a workload ARN must be specified.

", "UpdateWorkload": "

Update an existing workload.

", "UpdateWorkloadShare": "

Update a workload share.

", "UpgradeLensReview": "

Upgrade lens review for a particular workload.

", - "UpgradeProfileVersion": "

Upgrade a profile.

" + "UpgradeProfileVersion": "

Upgrade a profile.

", + "UpgradeReviewTemplateLensReview": "

Upgrade the lens review of a review template.

" }, "shapes": { "AccessDeniedException": { @@ -101,7 +115,10 @@ "refs": { "Answer$Reason": "

The reason why the question is not applicable to your workload.

", "AnswerSummary$Reason": "

The reason why a choice is non-applicable to a question in your workload.

", - "UpdateAnswerInput$Reason": "

The reason why a question is not applicable to your workload.

" + "ReviewTemplateAnswer$Reason": "

The reason why the question is not applicable to your review template.

", + "ReviewTemplateAnswerSummary$Reason": "

The reason why a choice is not-applicable to a question in the review template.

", + "UpdateAnswerInput$Reason": "

The reason why a question is not applicable to your workload.

", + "UpdateReviewTemplateAnswerInput$Reason": "

The update reason.

" } }, "AnswerSummaries": { @@ -139,6 +156,8 @@ "LensSummary$Owner": null, "Profile$Owner": null, "ProfileSummary$Owner": null, + "ReviewTemplate$Owner": null, + "ReviewTemplateSummary$Owner": null, "ShareInvitationSummary$SharedBy": null, "Workload$Owner": null, "WorkloadAccountIds$member": null, @@ -258,7 +277,8 @@ "ChoiceAnswerSummaries": { "base": null, "refs": { - "AnswerSummary$ChoiceAnswerSummaries": "

A list of selected choices to a question in your workload.

" + "AnswerSummary$ChoiceAnswerSummaries": "

A list of selected choices to a question in your workload.

", + "ReviewTemplateAnswerSummary$ChoiceAnswerSummaries": "

A list of selected choices to a question in the review template.

" } }, "ChoiceAnswerSummary": { @@ -270,7 +290,8 @@ "ChoiceAnswers": { "base": null, "refs": { - "Answer$ChoiceAnswers": "

A list of selected choices to a question in your workload.

" + "Answer$ChoiceAnswers": "

A list of selected choices to a question in your workload.

", + "ReviewTemplateAnswer$ChoiceAnswers": "

A list of selected choices to a question in your review template.

" } }, "ChoiceContent": { @@ -374,14 +395,17 @@ "ChoiceUpdates": { "base": null, "refs": { - "UpdateAnswerInput$ChoiceUpdates": "

A list of choices to update on a question in your workload. The String key corresponds to the choice ID to be updated.

" + "UpdateAnswerInput$ChoiceUpdates": "

A list of choices to update on a question in your workload. The String key corresponds to the choice ID to be updated.

", + "UpdateReviewTemplateAnswerInput$ChoiceUpdates": "

A list of choices to be updated.

" } }, "Choices": { "base": "

List of choices available for a question.

", "refs": { "Answer$Choices": null, - "AnswerSummary$Choices": null + "AnswerSummary$Choices": null, + "ReviewTemplateAnswer$Choices": null, + "ReviewTemplateAnswerSummary$Choices": null } }, "ClientRequestToken": { @@ -392,17 +416,22 @@ "CreateMilestoneInput$ClientRequestToken": null, "CreateProfileInput$ClientRequestToken": null, "CreateProfileShareInput$ClientRequestToken": null, + "CreateReviewTemplateInput$ClientRequestToken": null, + "CreateTemplateShareInput$ClientRequestToken": null, "CreateWorkloadInput$ClientRequestToken": null, "CreateWorkloadShareInput$ClientRequestToken": null, "DeleteLensInput$ClientRequestToken": null, "DeleteLensShareInput$ClientRequestToken": null, "DeleteProfileInput$ClientRequestToken": null, "DeleteProfileShareInput$ClientRequestToken": null, + "DeleteReviewTemplateInput$ClientRequestToken": null, + "DeleteTemplateShareInput$ClientRequestToken": null, "DeleteWorkloadInput$ClientRequestToken": null, "DeleteWorkloadShareInput$ClientRequestToken": null, "ImportLensInput$ClientRequestToken": null, "UpgradeLensReviewInput$ClientRequestToken": null, - "UpgradeProfileVersionInput$ClientRequestToken": null + "UpgradeProfileVersionInput$ClientRequestToken": null, + "UpgradeReviewTemplateLensReviewInput$ClientRequestToken": null } }, "ConflictException": { @@ -425,6 +454,7 @@ "Count": { "base": "

A non-negative integer that denotes how many.

", "refs": { + "QuestionCounts$value": null, "RiskCounts$value": null } }, @@ -478,6 +508,26 @@ "refs": { } }, + "CreateReviewTemplateInput": { + "base": null, + "refs": { + } + }, + "CreateReviewTemplateOutput": { + "base": null, + "refs": { + } + }, + "CreateTemplateShareInput": { + "base": null, + "refs": { + } + }, + "CreateTemplateShareOutput": { + "base": null, + "refs": { + } + }, "CreateWorkloadInput": { "base": "

Input for workload creation.

", "refs": { @@ -524,6 +574,16 @@ "refs": { } }, + "DeleteReviewTemplateInput": { + "base": null, + "refs": { + } + }, + "DeleteTemplateShareInput": { + "base": null, + "refs": { + } + }, "DeleteWorkloadInput": { "base": "

Input for workload deletion.

", "refs": { @@ -561,7 +621,8 @@ "base": null, "refs": { "Answer$HelpfulResourceDisplayText": "

The helpful resource text to be displayed for a custom lens.

This field does not apply to Amazon Web Services official lenses.

", - "ChoiceImprovementPlan$DisplayText": "

The display text for the improvement plan.

" + "ChoiceImprovementPlan$DisplayText": "

The display text for the improvement plan.

", + "ReviewTemplateAnswer$HelpfulResourceDisplayText": "

The helpful resource text to be displayed for a custom lens.

This field does not apply to Amazon Web Services official lenses.

" } }, "ExceptionMessage": { @@ -705,6 +766,36 @@ "refs": { } }, + "GetReviewTemplateAnswerInput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateAnswerOutput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateInput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateLensReviewInput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateLensReviewOutput": { + "base": null, + "refs": { + } + }, + "GetReviewTemplateOutput": { + "base": null, + "refs": { + } + }, "GetWorkloadInput": { "base": "

Input to get a workload.

", "refs": { @@ -718,7 +809,8 @@ "HelpfulResourceUrl": { "base": "

The helpful resource URL.

For Amazon Web Services official lenses, this is the helpful resource URL for a question or choice.

For custom lenses, this is the helpful resource URL for a question and is only provided if HelpfulResourceDisplayText was specified for the question.

", "refs": { - "Answer$HelpfulResourceUrl": null + "Answer$HelpfulResourceUrl": null, + "ReviewTemplateAnswer$HelpfulResourceUrl": null } }, "ImportLensInput": { @@ -742,7 +834,8 @@ "refs": { "Answer$ImprovementPlanUrl": null, "ChoiceImprovementPlan$ImprovementPlanUrl": null, - "ImprovementSummary$ImprovementPlanUrl": null + "ImprovementSummary$ImprovementPlanUrl": null, + "ReviewTemplateAnswer$ImprovementPlanUrl": null } }, "ImprovementSummaries": { @@ -773,7 +866,10 @@ "refs": { "Answer$IsApplicable": null, "AnswerSummary$IsApplicable": null, - "UpdateAnswerInput$IsApplicable": null + "ReviewTemplateAnswer$IsApplicable": null, + "ReviewTemplateAnswerSummary$IsApplicable": null, + "UpdateAnswerInput$IsApplicable": null, + "UpdateReviewTemplateAnswerInput$IsApplicable": null } }, "IsMajorVersion": { @@ -810,6 +906,9 @@ "GetLensReviewReportInput$LensAlias": null, "GetLensVersionDifferenceInput$LensAlias": null, "GetLensVersionDifferenceOutput$LensAlias": null, + "GetReviewTemplateAnswerInput$LensAlias": null, + "GetReviewTemplateAnswerOutput$LensAlias": null, + "GetReviewTemplateLensReviewInput$LensAlias": null, "ImportLensInput$LensAlias": null, "LensAliases$member": null, "LensReview$LensAlias": null, @@ -822,11 +921,20 @@ "ListLensReviewImprovementsInput$LensAlias": null, "ListLensReviewImprovementsOutput$LensAlias": null, "ListLensSharesInput$LensAlias": null, + "ListReviewTemplateAnswersInput$LensAlias": null, + "ListReviewTemplateAnswersOutput$LensAlias": null, + "ReviewTemplateLensAliases$member": null, + "ReviewTemplateLensReview$LensAlias": null, + "ReviewTemplateLenses$member": null, "ShareInvitation$LensAlias": null, "UpdateAnswerInput$LensAlias": null, "UpdateAnswerOutput$LensAlias": null, "UpdateLensReviewInput$LensAlias": null, + "UpdateReviewTemplateAnswerInput$LensAlias": null, + "UpdateReviewTemplateAnswerOutput$LensAlias": null, + "UpdateReviewTemplateLensReviewInput$LensAlias": null, "UpgradeLensReviewInput$LensAlias": null, + "UpgradeReviewTemplateLensReviewInput$LensAlias": null, "WorkloadLenses$member": null } }, @@ -857,6 +965,7 @@ "ListCheckDetailsInput$LensArn": "

Well-Architected Lens ARN.

", "ListCheckSummariesInput$LensArn": "

Well-Architected Lens ARN.

", "ListLensReviewImprovementsOutput$LensArn": "

The ARN for the lens.

", + "ReviewTemplateLensReview$LensArn": "

The lens ARN.

", "ShareInvitation$LensArn": "

The ARN for the lens.

", "ShareInvitationSummary$LensArn": "

The ARN for the lens.

", "UpdateAnswerOutput$LensArn": "

The ARN for the lens.

" @@ -896,6 +1005,7 @@ "LensReviewSummary$LensName": null, "LensSummary$LensName": null, "ListLensesInput$LensName": null, + "ReviewTemplateLensReview$LensName": null, "ShareInvitationSummary$LensName": null } }, @@ -953,7 +1063,8 @@ "refs": { "LensReview$LensStatus": "

The status of the lens.

", "LensReviewSummary$LensStatus": "

The status of the lens.

", - "LensSummary$LensStatus": "

The status of the lens.

" + "LensSummary$LensStatus": "

The status of the lens.

", + "ReviewTemplateLensReview$LensStatus": "

The status of the lens.

" } }, "LensStatusType": { @@ -1005,7 +1116,8 @@ "LensReviewSummary$LensVersion": "

The version of the lens.

", "LensSummary$LensVersion": "

The version of the lens.

", "LensUpgradeSummary$CurrentLensVersion": "

The current version of the lens.

", - "LensUpgradeSummary$LatestLensVersion": "

The latest version of the lens.

" + "LensUpgradeSummary$LatestLensVersion": "

The latest version of the lens.

", + "ReviewTemplateLensReview$LensVersion": "

The version of the lens.

" } }, "LensesAppliedCount": { @@ -1158,6 +1270,32 @@ "refs": { } }, + "ListReviewTemplateAnswersInput": { + "base": null, + "refs": { + } + }, + "ListReviewTemplateAnswersMaxResults": { + "base": null, + "refs": { + "ListReviewTemplateAnswersInput$MaxResults": "

The maximum number of results to return for this request.

" + } + }, + "ListReviewTemplateAnswersOutput": { + "base": null, + "refs": { + } + }, + "ListReviewTemplatesInput": { + "base": null, + "refs": { + } + }, + "ListReviewTemplatesOutput": { + "base": null, + "refs": { + } + }, "ListShareInvitationsInput": { "base": "

Input for List Share Invitations

", "refs": { @@ -1184,6 +1322,22 @@ "refs": { } }, + "ListTemplateSharesInput": { + "base": null, + "refs": { + } + }, + "ListTemplateSharesMaxResults": { + "base": null, + "refs": { + "ListTemplateSharesInput$MaxResults": "

The maximum number of results to return for this request.

" + } + }, + "ListTemplateSharesOutput": { + "base": null, + "refs": { + } + }, "ListWorkloadSharesInput": { "base": "

Input for List Workload Share

", "refs": { @@ -1226,7 +1380,8 @@ "ListLensesInput$MaxResults": null, "ListMilestonesInput$MaxResults": null, "ListProfileNotificationsInput$MaxResults": null, - "ListProfilesInput$MaxResults": null + "ListProfilesInput$MaxResults": null, + "ListReviewTemplatesInput$MaxResults": null } }, "MaxSelectedProfileChoices": { @@ -1328,24 +1483,39 @@ "ListProfileSharesOutput$NextToken": null, "ListProfilesInput$NextToken": null, "ListProfilesOutput$NextToken": null, + "ListReviewTemplateAnswersInput$NextToken": null, + "ListReviewTemplateAnswersOutput$NextToken": null, + "ListReviewTemplatesInput$NextToken": null, + "ListReviewTemplatesOutput$NextToken": null, "ListShareInvitationsInput$NextToken": null, "ListShareInvitationsOutput$NextToken": null, + "ListTemplateSharesInput$NextToken": null, + "ListTemplateSharesOutput$NextToken": null, "ListWorkloadSharesInput$NextToken": null, "ListWorkloadSharesOutput$NextToken": null, "ListWorkloadsInput$NextToken": null, - "ListWorkloadsOutput$NextToken": null + "ListWorkloadsOutput$NextToken": null, + "ReviewTemplateLensReview$NextToken": null } }, "Notes": { - "base": "

The notes associated with the workload.

", + "base": "

The notes associated with the workload.

For a review template, these are the notes that will be associated with the workload when the template is applied.

", "refs": { "Answer$Notes": null, + "CreateReviewTemplateInput$Notes": null, "CreateWorkloadInput$Notes": null, "LensReview$Notes": null, "PillarNotes$value": null, "PillarReviewSummary$Notes": null, + "ReviewTemplate$Notes": null, + "ReviewTemplateAnswer$Notes": null, + "ReviewTemplateLensReview$Notes": null, + "ReviewTemplatePillarReviewSummary$Notes": null, "UpdateAnswerInput$Notes": null, "UpdateLensReviewInput$LensNotes": null, + "UpdateReviewTemplateAnswerInput$Notes": null, + "UpdateReviewTemplateInput$Notes": null, + "UpdateReviewTemplateLensReviewInput$LensNotes": null, "UpdateWorkloadInput$Notes": null, "Workload$Notes": null } @@ -1408,10 +1578,14 @@ "ListCheckDetailsInput$PillarId": null, "ListCheckSummariesInput$PillarId": null, "ListLensReviewImprovementsInput$PillarId": null, + "ListReviewTemplateAnswersInput$PillarId": null, "PillarDifference$PillarId": null, "PillarMetric$PillarId": null, "PillarNotes$key": null, "PillarReviewSummary$PillarId": null, + "ReviewTemplateAnswer$PillarId": null, + "ReviewTemplateAnswerSummary$PillarId": null, + "ReviewTemplatePillarReviewSummary$PillarId": null, "WorkloadPillarPriorities$member": null } }, @@ -1431,13 +1605,15 @@ "base": "

The name of the pillar.

", "refs": { "PillarDifference$PillarName": null, - "PillarReviewSummary$PillarName": null + "PillarReviewSummary$PillarName": null, + "ReviewTemplatePillarReviewSummary$PillarName": null } }, "PillarNotes": { - "base": "

List of pillar notes of a lens review in a workload.

", + "base": "

List of pillar notes of a lens review in a workload.

For a review template, these are the notes that will be associated with the workload when the template is applied.

", "refs": { - "UpdateLensReviewInput$PillarNotes": null + "UpdateLensReviewInput$PillarNotes": null, + "UpdateReviewTemplateLensReviewInput$PillarNotes": null } }, "PillarReviewSummaries": { @@ -1517,8 +1693,8 @@ "ProfileNamePrefix": { "base": null, "refs": { - "ListProfilesInput$ProfileNamePrefix": "

Prefix for profile name.

", - "ListShareInvitationsInput$ProfileNamePrefix": "

Profile name prefix.

" + "ListProfilesInput$ProfileNamePrefix": "

An optional string added to the beginning of each profile name returned in the results.

", + "ListShareInvitationsInput$ProfileNamePrefix": "

An optional string added to the beginning of each profile name returned in the results.

" } }, "ProfileNotificationSummaries": { @@ -1636,12 +1812,27 @@ "WorkloadProfile$ProfileVersion": "

The profile version.

" } }, + "Question": { + "base": null, + "refs": { + "QuestionCounts$key": null + } + }, + "QuestionCounts": { + "base": null, + "refs": { + "ReviewTemplate$QuestionCounts": "

A count of how many total questions are answered and unanswered in the review template.

", + "ReviewTemplateLensReview$QuestionCounts": "

A count of how many questions are answered and unanswered in the lens review.

", + "ReviewTemplatePillarReviewSummary$QuestionCounts": "

A count of how many questions are answered and unanswered in the requested pillar of the lens review.

" + } + }, "QuestionDescription": { "base": "

The description of the question.

", "refs": { "Answer$QuestionDescription": null, "ProfileQuestion$QuestionDescription": null, - "ProfileTemplateQuestion$QuestionDescription": null + "ProfileTemplateQuestion$QuestionDescription": null, + "ReviewTemplateAnswer$QuestionDescription": null } }, "QuestionDifference": { @@ -1664,6 +1855,7 @@ "CheckDetail$QuestionId": null, "CheckSummary$QuestionId": null, "GetAnswerInput$QuestionId": null, + "GetReviewTemplateAnswerInput$QuestionId": null, "ImprovementSummary$QuestionId": null, "ListCheckDetailsInput$QuestionId": null, "ListCheckSummariesInput$QuestionId": null, @@ -1672,7 +1864,10 @@ "ProfileTemplateQuestion$QuestionId": null, "QuestionDifference$QuestionId": null, "QuestionMetric$QuestionId": null, - "UpdateAnswerInput$QuestionId": null + "ReviewTemplateAnswer$QuestionId": null, + "ReviewTemplateAnswerSummary$QuestionId": null, + "UpdateAnswerInput$QuestionId": null, + "UpdateReviewTemplateAnswerInput$QuestionId": null } }, "QuestionMetric": { @@ -1702,13 +1897,16 @@ "ImprovementSummary$QuestionTitle": null, "ProfileQuestion$QuestionTitle": null, "ProfileTemplateQuestion$QuestionTitle": null, - "QuestionDifference$QuestionTitle": null + "QuestionDifference$QuestionTitle": null, + "ReviewTemplateAnswer$QuestionTitle": null, + "ReviewTemplateAnswerSummary$QuestionTitle": null } }, "QuestionType": { "base": null, "refs": { - "AnswerSummary$QuestionType": "

The type of the question.

" + "AnswerSummary$QuestionType": "

The type of the question.

", + "ReviewTemplateAnswerSummary$QuestionType": "

The type of question.

" } }, "QuotaCode": { @@ -1724,11 +1922,110 @@ "GetConsolidatedReportInput$Format": "

The format of the consolidated report.

For PDF, Base64String is returned. For JSON, Metrics is returned.

" } }, + "ResourceArn": { + "base": null, + "refs": { + "LensUpgradeSummary$ResourceArn": "

ResourceArn of the lens being upgraded

", + "ListNotificationsInput$ResourceArn": "

The ARN for the related resource for the notification.

Only one of WorkloadID or ResourceARN should be specified.

" + } + }, "ResourceNotFoundException": { "base": "

The requested resource was not found.

", "refs": { } }, + "ReviewTemplate": { + "base": "

A review template.

", + "refs": { + "GetReviewTemplateOutput$ReviewTemplate": "

The review template.

", + "UpdateReviewTemplateOutput$ReviewTemplate": "

A review template.

" + } + }, + "ReviewTemplateAnswer": { + "base": "

An answer of the question.

", + "refs": { + "GetReviewTemplateAnswerOutput$Answer": "

An answer of the question.

", + "UpdateReviewTemplateAnswerOutput$Answer": "

An answer of the question.

" + } + }, + "ReviewTemplateAnswerStatus": { + "base": null, + "refs": { + "ReviewTemplateAnswer$AnswerStatus": "

The status of whether or not this question has been answered.

", + "ReviewTemplateAnswerSummary$AnswerStatus": "

The status of whether or not this question has been answered.

" + } + }, + "ReviewTemplateAnswerSummaries": { + "base": null, + "refs": { + "ListReviewTemplateAnswersOutput$AnswerSummaries": "

List of answer summaries of a lens review in a review template.

" + } + }, + "ReviewTemplateAnswerSummary": { + "base": "

The summary of review template answers.

", + "refs": { + "ReviewTemplateAnswerSummaries$member": null + } + }, + "ReviewTemplateArns": { + "base": null, + "refs": { + "CreateWorkloadInput$ReviewTemplateArns": "

The list of review template ARNs to associate with the workload.

" + } + }, + "ReviewTemplateLensAliases": { + "base": null, + "refs": { + "UpdateReviewTemplateInput$LensesToAssociate": "

A list of lens aliases or ARNs to apply to the review template.

", + "UpdateReviewTemplateInput$LensesToDisassociate": "

A list of lens aliases or ARNs to unapply to the review template. The wellarchitected lens cannot be unapplied.

" + } + }, + "ReviewTemplateLensReview": { + "base": "

The lens review of a review template.

", + "refs": { + "GetReviewTemplateLensReviewOutput$LensReview": "

A lens review of a question.

", + "UpdateReviewTemplateLensReviewOutput$LensReview": "

A lens review of a question.

" + } + }, + "ReviewTemplateLenses": { + "base": null, + "refs": { + "CreateReviewTemplateInput$Lenses": "

Lenses applied to the review template.

", + "ReviewTemplate$Lenses": "

The lenses applied to the review template.

", + "ReviewTemplateSummary$Lenses": "

Lenses associated with the review template.

" + } + }, + "ReviewTemplatePillarReviewSummaries": { + "base": null, + "refs": { + "ReviewTemplateLensReview$PillarReviewSummaries": "

Pillar review summaries of a lens review.

" + } + }, + "ReviewTemplatePillarReviewSummary": { + "base": "

Summary of a review template.

", + "refs": { + "ReviewTemplatePillarReviewSummaries$member": null + } + }, + "ReviewTemplateSummary": { + "base": "

Summary of a review template.

", + "refs": { + "ReviewTemplates$member": null + } + }, + "ReviewTemplateUpdateStatus": { + "base": null, + "refs": { + "ReviewTemplate$UpdateStatus": "

The latest status of a review template.

", + "ReviewTemplateSummary$UpdateStatus": "

The latest status of a review template.

" + } + }, + "ReviewTemplates": { + "base": null, + "refs": { + "ListReviewTemplatesOutput$ReviewTemplates": "

List of review templates.

" + } + }, "Risk": { "base": "

The risk for a given workload, lens review, pillar, or question.

", "refs": { @@ -1768,7 +2065,10 @@ "refs": { "Answer$SelectedChoices": null, "AnswerSummary$SelectedChoices": null, - "UpdateAnswerInput$SelectedChoices": null + "ReviewTemplateAnswer$SelectedChoices": null, + "ReviewTemplateAnswerSummary$SelectedChoices": null, + "UpdateAnswerInput$SelectedChoices": null, + "UpdateReviewTemplateAnswerInput$SelectedChoices": null } }, "SelectedProfileChoiceIds": { @@ -1794,12 +2094,15 @@ "refs": { "CreateLensShareOutput$ShareId": null, "CreateProfileShareOutput$ShareId": null, + "CreateTemplateShareOutput$ShareId": null, "CreateWorkloadShareOutput$ShareId": null, "DeleteLensShareInput$ShareId": null, "DeleteProfileShareInput$ShareId": null, + "DeleteTemplateShareInput$ShareId": null, "DeleteWorkloadShareInput$ShareId": null, "LensShareSummary$ShareId": null, "ProfileShareSummary$ShareId": null, + "TemplateShareSummary$ShareId": null, "UpdateWorkloadShareInput$ShareId": null, "WorkloadShare$ShareId": null, "WorkloadShareSummary$ShareId": null @@ -1822,6 +2125,7 @@ "refs": { "Lens$ShareInvitationId": "

The ID assigned to the share invitation.

", "Profile$ShareInvitationId": "

The ID assigned to the share invitation.

", + "ReviewTemplate$ShareInvitationId": "

The ID assigned to the template share invitation.

", "ShareInvitation$ShareInvitationId": "

The ID assigned to the share invitation.

", "ShareInvitationSummary$ShareInvitationId": "

The ID assigned to the share invitation.

", "UpdateShareInvitationInput$ShareInvitationId": "

The ID assigned to the share invitation.

", @@ -1854,21 +2158,25 @@ "LensShareSummary$Status": null, "ListLensSharesInput$Status": null, "ListProfileSharesInput$Status": null, + "ListTemplateSharesInput$Status": null, "ListWorkloadSharesInput$Status": null, "ProfileShareSummary$Status": null, + "TemplateShareSummary$Status": null, "WorkloadShare$Status": null, "WorkloadShareSummary$Status": null } }, "SharedWith": { - "base": "

The Amazon Web Services account ID, IAM role, organization ID, or organizational unit (OU) ID with which the workload, lens, or profile is shared.

", + "base": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the workload, lens, profile, or review template is shared.

", "refs": { "CreateLensShareInput$SharedWith": null, "CreateProfileShareInput$SharedWith": null, + "CreateTemplateShareInput$SharedWith": null, "CreateWorkloadShareInput$SharedWith": null, "LensShareSummary$SharedWith": null, "ProfileShareSummary$SharedWith": null, "ShareInvitationSummary$SharedWith": null, + "TemplateShareSummary$SharedWith": null, "WorkloadShare$SharedWith": null, "WorkloadShareSummary$SharedWith": null } @@ -1876,9 +2184,10 @@ "SharedWithPrefix": { "base": null, "refs": { - "ListLensSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, IAM role, organization ID, or organizational unit (OU) ID with which the lens is shared.

", - "ListProfileSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, IAM role, organization ID, or organizational unit (OU) ID with which the profile is shared.

", - "ListWorkloadSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, IAM role, organization ID, or organizational unit (OU) ID with which the workload is shared.

" + "ListLensSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the lens is shared.

", + "ListProfileSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the profile is shared.

", + "ListTemplateSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the profile is shared.

", + "ListWorkloadSharesInput$SharedWithPrefix": "

The Amazon Web Services account ID, organization ID, or organizational unit (OU) ID with which the workload is shared.

" } }, "StatusMessage": { @@ -1886,6 +2195,7 @@ "refs": { "LensShareSummary$StatusMessage": "

Optional message to compliment the Status field.

", "ProfileShareSummary$StatusMessage": "

Profile share invitation status message.

", + "TemplateShareSummary$StatusMessage": "

Review template share invitation status message.

", "WorkloadShareSummary$StatusMessage": "

Optional message to compliment the Status field.

" } }, @@ -1906,11 +2216,13 @@ "base": null, "refs": { "CreateProfileInput$Tags": "

The tags assigned to the profile.

", + "CreateReviewTemplateInput$Tags": "

The tags assigned to the review template.

", "CreateWorkloadInput$Tags": "

The tags to be associated with the workload.

", "ImportLensInput$Tags": "

Tags to associate to a lens.

", "Lens$Tags": "

The tags assigned to the lens.

", "ListTagsForResourceOutput$Tags": "

The tags for the resource.

", "Profile$Tags": "

The tags assigned to the profile.

", + "ReviewTemplate$Tags": "

The tags assigned to the review template.

", "TagResourceInput$Tags": "

The tags for the resource.

", "Workload$Tags": "

The tags associated with the workload.

" } @@ -1931,12 +2243,79 @@ "TagMap$value": null } }, + "TemplateArn": { + "base": null, + "refs": { + "CreateReviewTemplateOutput$TemplateArn": "

The review template ARN.

", + "CreateTemplateShareInput$TemplateArn": "

The review template ARN.

", + "CreateTemplateShareOutput$TemplateArn": "

The review template ARN.

", + "DeleteReviewTemplateInput$TemplateArn": "

The review template ARN.

", + "DeleteTemplateShareInput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateAnswerInput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateAnswerOutput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateInput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateLensReviewInput$TemplateArn": "

The review template ARN.

", + "GetReviewTemplateLensReviewOutput$TemplateArn": "

The review template ARN.

", + "ListReviewTemplateAnswersInput$TemplateArn": "

The ARN of the review template.

", + "ListReviewTemplateAnswersOutput$TemplateArn": "

The ARN of the review template.

", + "ListTemplateSharesInput$TemplateArn": "

The review template ARN.

", + "ListTemplateSharesOutput$TemplateArn": "

The review template ARN.

", + "ReviewTemplate$TemplateArn": "

The review template ARN.

", + "ReviewTemplateArns$member": null, + "ReviewTemplateSummary$TemplateArn": "

The review template ARN.

", + "ShareInvitation$TemplateArn": "

The review template ARN.

", + "ShareInvitationSummary$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateAnswerInput$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateAnswerOutput$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateInput$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateLensReviewInput$TemplateArn": "

The review template ARN.

", + "UpdateReviewTemplateLensReviewOutput$TemplateArn": "

The review template ARN.

", + "UpgradeReviewTemplateLensReviewInput$TemplateArn": "

The ARN of the review template.

" + } + }, + "TemplateDescription": { + "base": null, + "refs": { + "CreateReviewTemplateInput$Description": "

The review template description.

", + "ReviewTemplate$Description": "

The review template description.

", + "ReviewTemplateSummary$Description": "

Description of the review template.

", + "UpdateReviewTemplateInput$Description": "

The review template description.

" + } + }, + "TemplateName": { + "base": null, + "refs": { + "CreateReviewTemplateInput$TemplateName": "

Name of the review template.

", + "ReviewTemplate$TemplateName": "

The name of the review template.

", + "ReviewTemplateSummary$TemplateName": "

The name of the review template.

", + "ShareInvitationSummary$TemplateName": "

The name of the review template.

", + "UpdateReviewTemplateInput$TemplateName": "

The review template name.

" + } + }, + "TemplateNamePrefix": { + "base": null, + "refs": { + "ListShareInvitationsInput$TemplateNamePrefix": "

An optional string added to the beginning of each review template name returned in the results.

" + } + }, "TemplateQuestions": { "base": null, "refs": { "ProfileTemplate$TemplateQuestions": "

Profile template questions.

" } }, + "TemplateShareSummaries": { + "base": null, + "refs": { + "ListTemplateSharesOutput$TemplateShareSummaries": "

A review template share summary return object.

" + } + }, + "TemplateShareSummary": { + "base": "

Summary of a review template share.

", + "refs": { + "TemplateShareSummaries$member": null + } + }, "ThrottlingException": { "base": "

Request was denied due to request throttling.

", "refs": { @@ -1960,6 +2339,9 @@ "ProfileSummary$UpdatedAt": null, "ProfileTemplate$CreatedAt": null, "ProfileTemplate$UpdatedAt": null, + "ReviewTemplate$UpdatedAt": null, + "ReviewTemplateLensReview$UpdatedAt": null, + "ReviewTemplateSummary$UpdatedAt": null, "Workload$UpdatedAt": null, "Workload$ReviewRestrictionDate": null, "WorkloadSummary$UpdatedAt": null @@ -2016,6 +2398,36 @@ "refs": { } }, + "UpdateReviewTemplateAnswerInput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateAnswerOutput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateInput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateLensReviewInput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateLensReviewOutput": { + "base": null, + "refs": { + } + }, + "UpdateReviewTemplateOutput": { + "base": null, + "refs": { + } + }, "UpdateShareInvitationInput": { "base": "

Input for Update Share Invitation

", "refs": { @@ -2056,6 +2468,11 @@ "refs": { } }, + "UpgradeReviewTemplateLensReviewInput": { + "base": null, + "refs": { + } + }, "Urls": { "base": null, "refs": { @@ -2254,7 +2671,7 @@ } }, "WorkloadLenses": { - "base": "

The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

", + "base": "

The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.

If a review template that specifies lenses is applied to the workload, those lenses are applied to the workload in addition to these lenses.

", "refs": { "CreateWorkloadInput$Lenses": null, "Workload$Lenses": null, @@ -2267,6 +2684,7 @@ "ConsolidatedReportMetric$WorkloadName": null, "CreateWorkloadInput$WorkloadName": null, "LensUpgradeSummary$WorkloadName": null, + "LensUpgradeSummary$ResourceName": null, "ProfileNotificationSummary$WorkloadName": null, "ShareInvitationSummary$WorkloadName": null, "UpdateWorkloadInput$WorkloadName": null, diff --git a/models/apis/wellarchitected/2020-03-31/endpoint-rule-set-1.json b/models/apis/wellarchitected/2020-03-31/endpoint-rule-set-1.json index 3067f519823..69a78ebbbc3 100644 --- a/models/apis/wellarchitected/2020-03-31/endpoint-rule-set-1.json +++ b/models/apis/wellarchitected/2020-03-31/endpoint-rule-set-1.json @@ -58,52 +58,56 @@ "type": "error" }, { - "conditions": [], - "type": "tree", - "rules": [ + "conditions": [ { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" + "ref": "UseDualStack" }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + true + ] } - ] + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, { - "conditions": [], + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], "type": "tree", @@ -111,13 +115,22 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], "type": "tree", @@ -127,224 +140,175 @@ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } ] }, { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://wellarchitected-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://wellarchitected-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseFIPS" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ { - "conditions": [], - "endpoint": { - "url": "https://wellarchitected-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsFIPS" ] } ] - }, + } + ], + "type": "tree", + "rules": [ { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://wellarchitected-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ + true, { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://wellarchitected.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" } - ] - }, - { - "conditions": [], + ], "type": "tree", "rules": [ { "conditions": [], "endpoint": { - "url": "https://wellarchitected.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://wellarchitected.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://wellarchitected.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/wellarchitected/2020-03-31/paginators-1.json b/models/apis/wellarchitected/2020-03-31/paginators-1.json index fd24c74bd14..0238510fd73 100644 --- a/models/apis/wellarchitected/2020-03-31/paginators-1.json +++ b/models/apis/wellarchitected/2020-03-31/paginators-1.json @@ -65,11 +65,26 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListReviewTemplateAnswers": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, + "ListReviewTemplates": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListShareInvitations": { "input_token": "NextToken", "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListTemplateShares": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListWorkloadShares": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 43244e41f4e..1dd952e5827 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -20860,6 +20860,11 @@ } } }, + "codestar-connections" : { + "endpoints" : { + "us-gov-east-1" : { } + } + }, "cognito-identity" : { "endpoints" : { "fips-us-gov-west-1" : { diff --git a/service/connect/api.go b/service/connect/api.go index 4ac14934f39..4cc0cbf01bd 100644 --- a/service/connect/api.go +++ b/service/connect/api.go @@ -2657,8 +2657,6 @@ func (c *Connect) CreateSecurityProfileRequest(input *CreateSecurityProfileInput // CreateSecurityProfile API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Creates a security profile. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -4784,8 +4782,6 @@ func (c *Connect) DeleteSecurityProfileRequest(input *DeleteSecurityProfileInput // DeleteSecurityProfile API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Deletes a security profile. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -7133,8 +7129,6 @@ func (c *Connect) DescribeSecurityProfileRequest(input *DescribeSecurityProfileI // DescribeSecurityProfile API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Gets basic information about the security profle. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -9482,7 +9476,7 @@ func (c *Connect) GetMetricDataV2Request(input *GetMetricDataV2Input) (req *requ // the previous version of this API. It has new metrics, offers filtering at // a metric level, and offers the ability to filter and group data by channels, // queues, routing profiles, agents, and agent hierarchy levels. It can retrieve -// historical data for the last 35 days, in 24-hour intervals. +// historical data for the last 3 months, at varying intervals. // // For a description of the historical metrics that are supported by GetMetricDataV2 // and GetMetricData, see Historical metrics definitions (https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html) @@ -14119,8 +14113,6 @@ func (c *Connect) ListSecurityProfilePermissionsRequest(input *ListSecurityProfi // ListSecurityProfilePermissions API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Lists the permissions granted to a security profile. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -22035,8 +22027,6 @@ func (c *Connect) UpdateSecurityProfileRequest(input *UpdateSecurityProfileInput // UpdateSecurityProfile API operation for Amazon Connect Service. // -// This API is in preview release for Amazon Connect and is subject to change. -// // Updates a security profile. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -25852,7 +25842,8 @@ type ContactFlow struct { // The Amazon Resource Name (ARN) of the flow. Arn *string `type:"string"` - // The content of the flow. + // The JSON string that represents the content of the flow. For an example, + // see Example contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). Content *string `type:"string"` // The description of the flow. @@ -25950,7 +25941,10 @@ type ContactFlowModule struct { // The Amazon Resource Name (ARN). Arn *string `type:"string"` - // The content of the flow module. + // The JSON string that represents the content of the flow. For an example, + // see Example contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). + // + // Length Constraints: Minimum length of 1. Maximum length of 256000. Content *string `min:"1" type:"string"` // The description of the flow module. @@ -26517,7 +26511,10 @@ func (s *CreateAgentStatusOutput) SetAgentStatusId(v string) *CreateAgentStatusO type CreateContactFlowInput struct { _ struct{} `type:"structure"` - // The content of the flow. + // The JSON string that represents the content of the flow. For an example, + // see Example contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). + // + // Length Constraints: Minimum length of 1. Maximum length of 256000. // // Content is a required field Content *string `type:"string" required:"true"` @@ -39452,8 +39449,6 @@ type GetMetricDataV2Input struct { // for the retrieval of historical metrics data. The time must be later than // the start time timestamp. It cannot be later than the current timestamp. // - // The time range between the start and end time must be less than 24 hours. - // // EndTime is a required field EndTime *time.Time `type:"timestamp" required:"true"` @@ -39509,6 +39504,26 @@ type GetMetricDataV2Input struct { // | AGENT_HIERARCHY_LEVEL_FIVE Groupings []*string `type:"list"` + // The interval period and timezone to apply to returned metrics. + // + // * IntervalPeriod: An aggregated grouping applied to request metrics. Valid + // IntervalPeriod values are: FIFTEEN_MIN | THIRTY_MIN | HOUR | DAY | WEEK + // | TOTAL. For example, if IntervalPeriod is selected THIRTY_MIN, StartTime + // and EndTime differs by 1 day, then Amazon Connect returns 48 results in + // the response. Each result is aggregated by the THIRTY_MIN period. By default + // Amazon Connect aggregates results based on the TOTAL interval period. + // The following list describes restrictions on StartTime and EndTime based + // on which IntervalPeriod is requested. FIFTEEN_MIN: The difference between + // StartTime and EndTime must be less than 3 days. THIRTY_MIN: The difference + // between StartTime and EndTime must be less than 3 days. HOUR: The difference + // between StartTime and EndTime must be less than 3 days. DAY: The difference + // between StartTime and EndTime must be less than 35 days. WEEK: The difference + // between StartTime and EndTime must be less than 35 days. TOTAL: The difference + // between StartTime and EndTime must be less than 35 days. + // + // * TimeZone: The timezone applied to requested metrics. + Interval *IntervalDetails `type:"structure"` + // The maximum number of results to return per page. MaxResults *int64 `min:"1" type:"integer"` @@ -39517,6 +39532,13 @@ type GetMetricDataV2Input struct { // of each metric, see Historical metrics definitions (https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html) // in the Amazon Connect Administrator's Guide. // + // ABANDONMENT_RATE + // + // Unit: Percent + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // // AGENT_ADHERENT_TIME // // This metric is available only in Amazon Web Services Regions where Forecasting, @@ -39535,6 +39557,15 @@ type GetMetricDataV2Input struct { // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // + // AGENT_NON_RESPONSE_WITHOUT_CUSTOMER_ABANDONS + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // Data for this metric is available starting from October 1, 2023 0:00:00 GMT. + // // AGENT_OCCUPANCY // // Unit: Percentage @@ -39589,15 +39620,7 @@ type GetMetricDataV2Input struct { // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // - // AVG_AGENT_CONNECTING_TIME - // - // Unit: Seconds - // - // Valid metric filter key: INITIATION_METHOD. For now, this metric only supports - // the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API - // - // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // The Negate key in Metric Level Filters is not applicable for this metric. // // AVG_CONTACT_DURATION // @@ -39643,6 +39666,13 @@ type GetMetricDataV2Input struct { // // Feature is a valid filter but not a valid grouping. // + // AVG_HOLD_TIME_ALL_CONTACTS + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // // AVG_HOLDS // // Unit: Count @@ -39705,6 +39735,12 @@ type GetMetricDataV2Input struct { // // Feature is a valid filter but not a valid grouping. // + // AVG_RESOLUTION_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile + // // AVG_TALK_TIME // // This metric is available only for contacts analyzed by Contact Lens conversational @@ -39777,6 +39813,15 @@ type GetMetricDataV2Input struct { // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // + // CONTACTS_RESOLVED_IN_X + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile + // + // Threshold: For ThresholdValue enter any whole number from 1 to 604800 (inclusive), + // in seconds. For Comparison, you must enter LT (for "Less than"). + // // CONTACTS_TRANSFERRED_OUT // // Unit: Count @@ -39865,9 +39910,9 @@ type GetMetricDataV2Input struct { // The timestamp, in UNIX Epoch time format, at which to start the reporting // interval for the retrieval of historical metrics data. The time must be before - // the end time timestamp. The time range between the start and end time must - // be less than 24 hours. The start time cannot be earlier than 35 days before - // the time of the request. Historical metrics are available for 35 days. + // the end time timestamp. The start and end time depends on the IntervalPeriod + // selected. By default the time range between start and end time is 35 days. + // Historical metrics are available for 3 months. // // StartTime is a required field StartTime *time.Time `type:"timestamp" required:"true"` @@ -39963,6 +40008,12 @@ func (s *GetMetricDataV2Input) SetGroupings(v []*string) *GetMetricDataV2Input { return s } +// SetInterval sets the Interval field's value. +func (s *GetMetricDataV2Input) SetInterval(v *IntervalDetails) *GetMetricDataV2Input { + s.Interval = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *GetMetricDataV2Input) SetMaxResults(v int64) *GetMetricDataV2Input { s.MaxResults = &v @@ -42233,6 +42284,75 @@ func (s *InternalServiceException) RequestID() string { return s.RespMetadata.RequestID } +// Information about the interval period to use for returning results. +type IntervalDetails struct { + _ struct{} `type:"structure"` + + // IntervalPeriod: An aggregated grouping applied to request metrics. Valid + // IntervalPeriod values are: FIFTEEN_MIN | THIRTY_MIN | HOUR | DAY | WEEK | + // TOTAL. + // + // For example, if IntervalPeriod is selected THIRTY_MIN, StartTime and EndTime + // differs by 1 day, then Amazon Connect returns 48 results in the response. + // Each result is aggregated by the THIRTY_MIN period. By default Amazon Connect + // aggregates results based on the TOTAL interval period. + // + // The following list describes restrictions on StartTime and EndTime based + // on what IntervalPeriod is requested. + // + // * FIFTEEN_MIN: The difference between StartTime and EndTime must be less + // than 3 days. + // + // * THIRTY_MIN: The difference between StartTime and EndTime must be less + // than 3 days. + // + // * HOUR: The difference between StartTime and EndTime must be less than + // 3 days. + // + // * DAY: The difference between StartTime and EndTime must be less than + // 35 days. + // + // * WEEK: The difference between StartTime and EndTime must be less than + // 35 days. + // + // * TOTAL: The difference between StartTime and EndTime must be less than + // 35 days. + IntervalPeriod *string `type:"string" enum:"IntervalPeriod"` + + // The timezone applied to requested metrics. + TimeZone *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IntervalDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IntervalDetails) GoString() string { + return s.String() +} + +// SetIntervalPeriod sets the IntervalPeriod field's value. +func (s *IntervalDetails) SetIntervalPeriod(v string) *IntervalDetails { + s.IntervalPeriod = &v + return s +} + +// SetTimeZone sets the TimeZone field's value. +func (s *IntervalDetails) SetTimeZone(v string) *IntervalDetails { + s.TimeZone = &v + return s +} + // The flow is not valid. type InvalidContactFlowException struct { _ struct{} `type:"structure"` @@ -46407,6 +46527,8 @@ func (s *ListSecurityProfileApplicationsInput) SetSecurityProfileId(v string) *L type ListSecurityProfileApplicationsOutput struct { _ struct{} `type:"structure"` + // This API is in preview release for Amazon Connect and is subject to change. + // // A list of the third party application's metadata. Applications []*Application `type:"list"` @@ -47976,6 +48098,11 @@ type MetricFilterV2 struct { // | THIRD_PARTY_DISCONNECT | TELECOM_PROBLEM | BARGED | CONTACT_FLOW_DISCONNECT // | OTHER | EXPIRED | API MetricFilterValues []*string `min:"1" type:"list"` + + // The flag to use to filter on requested metric filter values or to not filter + // on requested metric filter values. By default the negate is false, which + // indicates to filter on the requested metric filter. + Negate *bool `type:"boolean"` } // String returns the string representation. @@ -48021,6 +48148,67 @@ func (s *MetricFilterV2) SetMetricFilterValues(v []*string) *MetricFilterV2 { return s } +// SetNegate sets the Negate field's value. +func (s *MetricFilterV2) SetNegate(v bool) *MetricFilterV2 { + s.Negate = &v + return s +} + +// The interval period with the start and end time for the metrics. +type MetricInterval struct { + _ struct{} `type:"structure"` + + // The timestamp, in UNIX Epoch time format. End time is based on the interval + // period selected. For example, If IntervalPeriod is selected THIRTY_MIN, StartTime + // and EndTime in the API request differs by 1 day, then 48 results are returned + // in the response. Each result is aggregated by the 30 minutes period, with + // each StartTime and EndTime differing by 30 minutes. + EndTime *time.Time `type:"timestamp"` + + // The interval period provided in the API request. + Interval *string `type:"string" enum:"IntervalPeriod"` + + // The timestamp, in UNIX Epoch time format. Start time is based on the interval + // period selected. + StartTime *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetricInterval) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MetricInterval) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *MetricInterval) SetEndTime(v time.Time) *MetricInterval { + s.EndTime = &v + return s +} + +// SetInterval sets the Interval field's value. +func (s *MetricInterval) SetInterval(v string) *MetricInterval { + s.Interval = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *MetricInterval) SetStartTime(v time.Time) *MetricInterval { + s.StartTime = &v + return s +} + // Contains information about the metric results. type MetricResultV2 struct { _ struct{} `type:"structure"` @@ -48030,6 +48218,9 @@ type MetricResultV2 struct { // The dimension for the metrics. Dimensions map[string]*string `type:"map"` + + // The interval period with the start and end time for the metrics. + MetricInterval *MetricInterval `type:"structure"` } // String returns the string representation. @@ -48062,6 +48253,12 @@ func (s *MetricResultV2) SetDimensions(v map[string]*string) *MetricResultV2 { return s } +// SetMetricInterval sets the MetricInterval field's value. +func (s *MetricResultV2) SetMetricInterval(v *MetricInterval) *MetricResultV2 { + s.MetricInterval = v + return s +} + // Contains information about the metric. type MetricV2 struct { _ struct{} `type:"structure"` @@ -58061,8 +58258,10 @@ type UpdateContactFlowContentInput struct { // ContactFlowId is a required field ContactFlowId *string `location:"uri" locationName:"ContactFlowId" type:"string" required:"true"` - // The JSON string that represents flow's content. For an example, see Example - // contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). + // The JSON string that represents the content of the flow. For an example, + // see Example contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). + // + // Length Constraints: Minimum length of 1. Maximum length of 256000. // // Content is a required field Content *string `type:"string" required:"true"` @@ -58284,7 +58483,8 @@ type UpdateContactFlowModuleContentInput struct { // ContactFlowModuleId is a required field ContactFlowModuleId *string `location:"uri" locationName:"ContactFlowModuleId" min:"1" type:"string" required:"true"` - // The content of the flow module. + // The JSON string that represents the content of the flow. For an example, + // see Example contact flow in Amazon Connect Flow language (https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html). // // Content is a required field Content *string `min:"1" type:"string" required:"true"` @@ -65492,6 +65692,38 @@ func IntegrationType_Values() []string { } } +const ( + // IntervalPeriodFifteenMin is a IntervalPeriod enum value + IntervalPeriodFifteenMin = "FIFTEEN_MIN" + + // IntervalPeriodThirtyMin is a IntervalPeriod enum value + IntervalPeriodThirtyMin = "THIRTY_MIN" + + // IntervalPeriodHour is a IntervalPeriod enum value + IntervalPeriodHour = "HOUR" + + // IntervalPeriodDay is a IntervalPeriod enum value + IntervalPeriodDay = "DAY" + + // IntervalPeriodWeek is a IntervalPeriod enum value + IntervalPeriodWeek = "WEEK" + + // IntervalPeriodTotal is a IntervalPeriod enum value + IntervalPeriodTotal = "TOTAL" +) + +// IntervalPeriod_Values returns all elements of the IntervalPeriod enum +func IntervalPeriod_Values() []string { + return []string{ + IntervalPeriodFifteenMin, + IntervalPeriodThirtyMin, + IntervalPeriodHour, + IntervalPeriodDay, + IntervalPeriodWeek, + IntervalPeriodTotal, + } +} + const ( // LexVersionV1 is a LexVersion enum value LexVersionV1 = "V1" diff --git a/service/locationservice/api.go b/service/locationservice/api.go index bb4fa0ea2b8..ffa944b1415 100644 --- a/service/locationservice/api.go +++ b/service/locationservice/api.go @@ -9883,6 +9883,22 @@ type CreateTrackerInput struct { // with this tracker. Those events are always sent to EventBridge. EventBridgeEnabled *bool `type:"boolean"` + // Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS + // customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html). + // + // This parameter is only used if you are using a KMS customer managed key. + // + // If you wish to encrypt your data using your own KMS customer managed key, + // then the Bounding Polygon Queries feature will be disabled by default. This + // is because by using this feature, a representation of your device positions + // will not be encrypted using the your KMS managed key. The exact device position, + // however; is still encrypted using your managed key. + // + // You can choose to opt-in to the Bounding Polygon Quseries feature. This is + // done by setting the KmsKeyEnableGeospatialQueries parameter to true when + // creating or updating a Tracker. + KmsKeyEnableGeospatialQueries *bool `type:"boolean"` + // A key identifier for an Amazon Web Services KMS customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html). // Enter a key ID, key ARN, alias name, or alias ARN. KmsKeyId *string `min:"1" type:"string"` @@ -10010,6 +10026,12 @@ func (s *CreateTrackerInput) SetEventBridgeEnabled(v bool) *CreateTrackerInput { return s } +// SetKmsKeyEnableGeospatialQueries sets the KmsKeyEnableGeospatialQueries field's value. +func (s *CreateTrackerInput) SetKmsKeyEnableGeospatialQueries(v bool) *CreateTrackerInput { + s.KmsKeyEnableGeospatialQueries = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *CreateTrackerInput) SetKmsKeyId(v string) *CreateTrackerInput { s.KmsKeyId = &v @@ -10659,6 +10681,9 @@ type DescribeGeofenceCollectionOutput struct { // Description is a required field Description *string `type:"string" required:"true"` + // The number of geofences in the geofence collection. + GeofenceCount *int64 `type:"integer"` + // A key identifier for an Amazon Web Services KMS customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) // assigned to the Amazon Location resource KmsKeyId *string `min:"1" type:"string"` @@ -10725,6 +10750,12 @@ func (s *DescribeGeofenceCollectionOutput) SetDescription(v string) *DescribeGeo return s } +// SetGeofenceCount sets the GeofenceCount field's value. +func (s *DescribeGeofenceCollectionOutput) SetGeofenceCount(v int64) *DescribeGeofenceCollectionOutput { + s.GeofenceCount = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *DescribeGeofenceCollectionOutput) SetKmsKeyId(v string) *DescribeGeofenceCollectionOutput { s.KmsKeyId = &v @@ -11530,6 +11561,22 @@ type DescribeTrackerOutput struct { // to true these events will be sent to EventBridge. EventBridgeEnabled *bool `type:"boolean"` + // Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS + // customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html). + // + // This parameter is only used if you are using a KMS customer managed key. + // + // If you wish to encrypt your data using your own KMS customer managed key, + // then the Bounding Polygon Queries feature will be disabled by default. This + // is because by using this feature, a representation of your device positions + // will not be encrypted using the your KMS managed key. The exact device position, + // however; is still encrypted using your managed key. + // + // You can choose to opt-in to the Bounding Polygon Quseries feature. This is + // done by setting the KmsKeyEnableGeospatialQueries parameter to true when + // creating or updating a Tracker. + KmsKeyEnableGeospatialQueries *bool `type:"boolean"` + // A key identifier for an Amazon Web Services KMS customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) // assigned to the Amazon Location resource. KmsKeyId *string `min:"1" type:"string"` @@ -11606,6 +11653,12 @@ func (s *DescribeTrackerOutput) SetEventBridgeEnabled(v bool) *DescribeTrackerOu return s } +// SetKmsKeyEnableGeospatialQueries sets the KmsKeyEnableGeospatialQueries field's value. +func (s *DescribeTrackerOutput) SetKmsKeyEnableGeospatialQueries(v bool) *DescribeTrackerOutput { + s.KmsKeyEnableGeospatialQueries = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *DescribeTrackerOutput) SetKmsKeyId(v string) *DescribeTrackerOutput { s.KmsKeyId = &v @@ -12548,7 +12601,7 @@ type GetMapGlyphsInput struct { // A comma-separated list of fonts to load glyphs from in order of preference. // For example, Noto Sans Regular, Arial Unicode. // - // Valid fonts stacks for Esri (https://docs.aws.amazon.com/location/latest/developerguide/esri.html) + // Valid font stacks for Esri (https://docs.aws.amazon.com/location/latest/developerguide/esri.html) // styles: // // * VectorEsriDarkGrayCanvas – Ubuntu Medium Italic | Ubuntu Medium | @@ -13531,6 +13584,9 @@ func (s *LegGeometry) SetLineString(v [][]*float64) *LegGeometry { type ListDevicePositionsInput struct { _ struct{} `type:"structure"` + // The geomerty used to filter device positions. + FilterGeometry *TrackingFilterGeometry `type:"structure"` + // An optional limit for the number of entries returned in a single call. // // Default value: 100 @@ -13581,6 +13637,11 @@ func (s *ListDevicePositionsInput) Validate() error { if s.TrackerName != nil && len(*s.TrackerName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TrackerName", 1)) } + if s.FilterGeometry != nil { + if err := s.FilterGeometry.Validate(); err != nil { + invalidParams.AddNested("FilterGeometry", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -13588,6 +13649,12 @@ func (s *ListDevicePositionsInput) Validate() error { return nil } +// SetFilterGeometry sets the FilterGeometry field's value. +func (s *ListDevicePositionsInput) SetFilterGeometry(v *TrackingFilterGeometry) *ListDevicePositionsInput { + s.FilterGeometry = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListDevicePositionsInput) SetMaxResults(v int64) *ListDevicePositionsInput { s.MaxResults = &v @@ -13609,9 +13676,7 @@ func (s *ListDevicePositionsInput) SetTrackerName(v string) *ListDevicePositions type ListDevicePositionsOutput struct { _ struct{} `type:"structure"` - // Contains details about each device's last known position. These details includes - // the device ID, the time when the position was sampled on the device, the - // time that the service received the update, and the most recent coordinates. + // Contains details about each device's last known position. // // Entries is a required field Entries []*ListDevicePositionsResponseEntry `type:"list" required:"true"` @@ -17865,6 +17930,52 @@ func (s *TimeZone) SetOffset(v int64) *TimeZone { return s } +// The geomerty used to filter device positions. +type TrackingFilterGeometry struct { + _ struct{} `type:"structure"` + + // The set of arrays which define the polygon. A polygon can have between 4 + // and 1000 vertices. + Polygon [][][]*float64 `min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrackingFilterGeometry) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TrackingFilterGeometry) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TrackingFilterGeometry) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TrackingFilterGeometry"} + if s.Polygon != nil && len(s.Polygon) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Polygon", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPolygon sets the Polygon field's value. +func (s *TrackingFilterGeometry) SetPolygon(v [][][]*float64) *TrackingFilterGeometry { + s.Polygon = v + return s +} + // Contains details about the truck dimensions in the unit of measurement that // you specify. Used to filter out roads that can't support or allow the specified // dimensions for requests that specify TravelMode as Truck. @@ -18803,6 +18914,12 @@ type UpdateTrackerInput struct { // with this tracker. Those events are always sent to EventBridge. EventBridgeEnabled *bool `type:"boolean"` + // Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS + // customer managed key (https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html). + // + // This parameter is only used if you are using a KMS customer managed key. + KmsKeyEnableGeospatialQueries *bool `type:"boolean"` + // Updates the position filtering for the tracker resource. // // Valid values: @@ -18892,6 +19009,12 @@ func (s *UpdateTrackerInput) SetEventBridgeEnabled(v bool) *UpdateTrackerInput { return s } +// SetKmsKeyEnableGeospatialQueries sets the KmsKeyEnableGeospatialQueries field's value. +func (s *UpdateTrackerInput) SetKmsKeyEnableGeospatialQueries(v bool) *UpdateTrackerInput { + s.KmsKeyEnableGeospatialQueries = &v + return s +} + // SetPositionFiltering sets the PositionFiltering field's value. func (s *UpdateTrackerInput) SetPositionFiltering(v string) *UpdateTrackerInput { s.PositionFiltering = &v diff --git a/service/mediaconvert/api.go b/service/mediaconvert/api.go index d393c3a4472..bffadcf2fee 100644 --- a/service/mediaconvert/api.go +++ b/service/mediaconvert/api.go @@ -12336,6 +12336,13 @@ type H264Settings struct { // Static. DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"H264DynamicSubGop"` + // Optionally include or suppress markers at the end of your output that signal + // the end of the video stream. To include end of stream markers: Leave blank + // or keep the default value, Include. To not include end of stream markers: + // Choose Suppress. This is useful when your output will be inserted into another + // stream. + EndOfStreamMarkers *string `locationName:"endOfStreamMarkers" type:"string" enum:"H264EndOfStreamMarkers"` + // Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC. EntropyEncoding *string `locationName:"entropyEncoding" type:"string" enum:"H264EntropyEncoding"` @@ -12735,6 +12742,12 @@ func (s *H264Settings) SetDynamicSubGop(v string) *H264Settings { return s } +// SetEndOfStreamMarkers sets the EndOfStreamMarkers field's value. +func (s *H264Settings) SetEndOfStreamMarkers(v string) *H264Settings { + s.EndOfStreamMarkers = &v + return s +} + // SetEntropyEncoding sets the EntropyEncoding field's value. func (s *H264Settings) SetEntropyEncoding(v string) *H264Settings { s.EntropyEncoding = &v @@ -13089,6 +13102,13 @@ type H265Settings struct { // Static. DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"H265DynamicSubGop"` + // Optionally include or suppress markers at the end of your output that signal + // the end of the video stream. To include end of stream markers: Leave blank + // or keep the default value, Include. To not include end of stream markers: + // Choose Suppress. This is useful when your output will be inserted into another + // stream. + EndOfStreamMarkers *string `locationName:"endOfStreamMarkers" type:"string" enum:"H265EndOfStreamMarkers"` + // Enable this setting to have the encoder reduce I-frame pop. I-frame pop appears // as a visual flicker that can arise when the encoder saves bits by copying // some macroblocks many times from frame to frame, and then refreshes them @@ -13470,6 +13490,12 @@ func (s *H265Settings) SetDynamicSubGop(v string) *H265Settings { return s } +// SetEndOfStreamMarkers sets the EndOfStreamMarkers field's value. +func (s *H265Settings) SetEndOfStreamMarkers(v string) *H265Settings { + s.EndOfStreamMarkers = &v + return s +} + // SetFlickerAdaptiveQuantization sets the FlickerAdaptiveQuantization field's value. func (s *H265Settings) SetFlickerAdaptiveQuantization(v string) *H265Settings { s.FlickerAdaptiveQuantization = &v @@ -15273,6 +15299,9 @@ type Input struct { // both. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-generator.html VideoGenerator *InputVideoGenerator `locationName:"videoGenerator" type:"structure"` + // Contains an array of video overlays. + VideoOverlays []*VideoOverlay `locationName:"videoOverlays" type:"list"` + // Input video selectors contain the video settings for the input. Each of your // inputs can have up to one video selector. VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"` @@ -15353,6 +15382,16 @@ func (s *Input) Validate() error { invalidParams.AddNested("VideoGenerator", err.(request.ErrInvalidParams)) } } + if s.VideoOverlays != nil { + for i, v := range s.VideoOverlays { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VideoOverlays", i), err.(request.ErrInvalidParams)) + } + } + } if s.VideoSelector != nil { if err := s.VideoSelector.Validate(); err != nil { invalidParams.AddNested("VideoSelector", err.(request.ErrInvalidParams)) @@ -15503,6 +15542,12 @@ func (s *Input) SetVideoGenerator(v *InputVideoGenerator) *Input { return s } +// SetVideoOverlays sets the VideoOverlays field's value. +func (s *Input) SetVideoOverlays(v []*VideoOverlay) *Input { + s.VideoOverlays = v + return s +} + // SetVideoSelector sets the VideoSelector field's value. func (s *Input) SetVideoSelector(v *VideoSelector) *Input { s.VideoSelector = v @@ -15791,6 +15836,9 @@ type InputTemplate struct { // timecodes, see https://docs.aws.amazon.com/console/mediaconvert/timecode. TimecodeStart *string `locationName:"timecodeStart" min:"11" type:"string"` + // Contains an array of video overlays. + VideoOverlays []*VideoOverlay `locationName:"videoOverlays" type:"list"` + // Input video selectors contain the video settings for the input. Each of your // inputs can have up to one video selector. VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"` @@ -15861,6 +15909,16 @@ func (s *InputTemplate) Validate() error { invalidParams.AddNested("Position", err.(request.ErrInvalidParams)) } } + if s.VideoOverlays != nil { + for i, v := range s.VideoOverlays { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VideoOverlays", i), err.(request.ErrInvalidParams)) + } + } + } if s.VideoSelector != nil { if err := s.VideoSelector.Validate(); err != nil { invalidParams.AddNested("VideoSelector", err.(request.ErrInvalidParams)) @@ -15987,6 +16045,12 @@ func (s *InputTemplate) SetTimecodeStart(v string) *InputTemplate { return s } +// SetVideoOverlays sets the VideoOverlays field's value. +func (s *InputTemplate) SetVideoOverlays(v []*VideoOverlay) *InputTemplate { + s.VideoOverlays = v + return s +} + // SetVideoSelector sets the VideoSelector field's value. func (s *InputTemplate) SetVideoSelector(v *VideoSelector) *InputTemplate { s.VideoSelector = v @@ -16641,15 +16705,6 @@ type JobSettings struct { // 05h Content Advisory. ExtendedDataServices *ExtendedDataServices `locationName:"extendedDataServices" type:"structure"` - // Specifies which input metadata to use for the default "Follow input" option - // for the following settings: resolution, frame rate, and pixel aspect ratio. - // In the simplest case, specify which input is used based on its index in the - // job. For example if you specify 3, then the fourth input will be used from - // each input. If the job does not have a fourth input, then the first input - // will be used. If no followInputIndex is specified, then 0 will be chosen - // automatically. - FollowInputIndex *int64 `locationName:"followInputIndex" type:"integer"` - // Use Inputs to define source file used in the transcode job. There can be // multiple inputs add in a job. These inputs will be concantenated together // to create the output. @@ -16796,12 +16851,6 @@ func (s *JobSettings) SetExtendedDataServices(v *ExtendedDataServices) *JobSetti return s } -// SetFollowInputIndex sets the FollowInputIndex field's value. -func (s *JobSettings) SetFollowInputIndex(v int64) *JobSettings { - s.FollowInputIndex = &v - return s -} - // SetInputs sets the Inputs field's value. func (s *JobSettings) SetInputs(v []*Input) *JobSettings { s.Inputs = v @@ -17027,15 +17076,6 @@ type JobTemplateSettings struct { // 05h Content Advisory. ExtendedDataServices *ExtendedDataServices `locationName:"extendedDataServices" type:"structure"` - // Specifies which input metadata to use for the default "Follow input" option - // for the following settings: resolution, frame rate, and pixel aspect ratio. - // In the simplest case, specify which input is used based on its index in the - // job. For example if you specify 3, then the fourth input will be used from - // each input. If the job does not have a fourth input, then the first input - // will be used. If no followInputIndex is specified, then 0 will be chosen - // automatically. - FollowInputIndex *int64 `locationName:"followInputIndex" type:"integer"` - // Use Inputs to define the source file used in the transcode job. There can // only be one input in a job template. Using the API, you can include multiple // inputs when referencing a job template. @@ -17182,12 +17222,6 @@ func (s *JobTemplateSettings) SetExtendedDataServices(v *ExtendedDataServices) * return s } -// SetFollowInputIndex sets the FollowInputIndex field's value. -func (s *JobTemplateSettings) SetFollowInputIndex(v int64) *JobTemplateSettings { - s.FollowInputIndex = &v - return s -} - // SetInputs sets the Inputs field's value. func (s *JobTemplateSettings) SetInputs(v []*InputTemplate) *JobTemplateSettings { s.Inputs = v @@ -25310,6 +25344,217 @@ func (s *VideoDetail) SetWidthInPx(v int64) *VideoDetail { return s } +// Overlay one or more videos on top of your input video. +type VideoOverlay struct { + _ struct{} `type:"structure"` + + // Enter the end timecode in the underlying input video for this overlay. Your + // overlay will be active through this frame. To display your video overlay + // for the duration of the underlying video: Leave blank. Use the format HH:MM:SS:FF + // or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, + // and FF is the frame number. When entering this value, take into account your + // choice for the underlying Input timecode source. For example, if you have + // embedded timecodes that start at 01:00:00:00 and you want your overlay to + // end ten minutes into the video, enter 01:10:00:00. + EndTimecode *string `locationName:"endTimecode" type:"string"` + + // Input settings for Video overlay. You can include one or more video overlays + // in sequence at different times that you specify. + Input *VideoOverlayInput_ `locationName:"input" type:"structure"` + + // Enter the start timecode in the underlying input video for this overlay. + // Your overlay will be active starting with this frame. To display your video + // overlay starting at the beginning of the underlying video: Leave blank. Use + // the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, + // SS is the second, and FF is the frame number. When entering this value, take + // into account your choice for the underlying Input timecode source. For example, + // if you have embedded timecodes that start at 01:00:00:00 and you want your + // overlay to begin five minutes into the video, enter 01:05:00:00. + StartTimecode *string `locationName:"startTimecode" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlay) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlay) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VideoOverlay) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VideoOverlay"} + if s.Input != nil { + if err := s.Input.Validate(); err != nil { + invalidParams.AddNested("Input", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndTimecode sets the EndTimecode field's value. +func (s *VideoOverlay) SetEndTimecode(v string) *VideoOverlay { + s.EndTimecode = &v + return s +} + +// SetInput sets the Input field's value. +func (s *VideoOverlay) SetInput(v *VideoOverlayInput_) *VideoOverlay { + s.Input = v + return s +} + +// SetStartTimecode sets the StartTimecode field's value. +func (s *VideoOverlay) SetStartTimecode(v string) *VideoOverlay { + s.StartTimecode = &v + return s +} + +// To transcode only portions of your video overlay, include one input clip +// for each part of your video overlay that you want in your output. +type VideoOverlayInputClipping struct { + _ struct{} `type:"structure"` + + // Specify the timecode of the last frame to include in your video overlay's + // clip. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM + // is the minute, SS is the second, and FF is the frame number. When entering + // this value, take into account your choice for Timecode source. + EndTimecode *string `locationName:"endTimecode" type:"string"` + + // Specify the timecode of the first frame to include in your video overlay's + // clip. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM + // is the minute, SS is the second, and FF is the frame number. When entering + // this value, take into account your choice for Timecode source. + StartTimecode *string `locationName:"startTimecode" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlayInputClipping) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlayInputClipping) GoString() string { + return s.String() +} + +// SetEndTimecode sets the EndTimecode field's value. +func (s *VideoOverlayInputClipping) SetEndTimecode(v string) *VideoOverlayInputClipping { + s.EndTimecode = &v + return s +} + +// SetStartTimecode sets the StartTimecode field's value. +func (s *VideoOverlayInputClipping) SetStartTimecode(v string) *VideoOverlayInputClipping { + s.StartTimecode = &v + return s +} + +// Input settings for Video overlay. You can include one or more video overlays +// in sequence at different times that you specify. +type VideoOverlayInput_ struct { + _ struct{} `type:"structure"` + + // Specify the input file S3, HTTP, or HTTPS URI for your video overlay. For + // consistency in color and formatting in your output video image, we recommend + // that you specify a video with similar characteristics as the underlying input + // video. + FileInput *string `locationName:"fileInput" type:"string"` + + // Specify one or more clips to use from your video overlay. When you include + // an input clip, you must also specify its start timecode, end timecode, or + // both start and end timecode. + InputClippings []*VideoOverlayInputClipping `locationName:"inputClippings" type:"list"` + + // Specify the starting timecode for your video overlay. To use the timecode + // present in your video overlay: Choose Embedded. To use a zerobased timecode: + // Choose Start at 0. To choose a timecode: Choose Specified start. When you + // do, enter the starting timecode in Start timecode. If you don't specify a + // value for Timecode source, MediaConvert uses Embedded by default. + TimecodeSource *string `locationName:"timecodeSource" type:"string" enum:"InputTimecodeSource"` + + // Specify the starting timecode for this video overlay. To use this setting, + // you must set Timecode source to Specified start. + TimecodeStart *string `locationName:"timecodeStart" min:"11" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlayInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VideoOverlayInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *VideoOverlayInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "VideoOverlayInput_"} + if s.TimecodeStart != nil && len(*s.TimecodeStart) < 11 { + invalidParams.Add(request.NewErrParamMinLen("TimecodeStart", 11)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileInput sets the FileInput field's value. +func (s *VideoOverlayInput_) SetFileInput(v string) *VideoOverlayInput_ { + s.FileInput = &v + return s +} + +// SetInputClippings sets the InputClippings field's value. +func (s *VideoOverlayInput_) SetInputClippings(v []*VideoOverlayInputClipping) *VideoOverlayInput_ { + s.InputClippings = v + return s +} + +// SetTimecodeSource sets the TimecodeSource field's value. +func (s *VideoOverlayInput_) SetTimecodeSource(v string) *VideoOverlayInput_ { + s.TimecodeSource = &v + return s +} + +// SetTimecodeStart sets the TimecodeStart field's value. +func (s *VideoOverlayInput_) SetTimecodeStart(v string) *VideoOverlayInput_ { + s.TimecodeStart = &v + return s +} + // Find additional transcoding features under Preprocessors. Enable the features // at each output individually. These features are disabled by default. type VideoPreprocessor struct { @@ -31586,6 +31831,27 @@ func H264DynamicSubGop_Values() []string { } } +// Optionally include or suppress markers at the end of your output that signal +// the end of the video stream. To include end of stream markers: Leave blank +// or keep the default value, Include. To not include end of stream markers: +// Choose Suppress. This is useful when your output will be inserted into another +// stream. +const ( + // H264EndOfStreamMarkersInclude is a H264EndOfStreamMarkers enum value + H264EndOfStreamMarkersInclude = "INCLUDE" + + // H264EndOfStreamMarkersSuppress is a H264EndOfStreamMarkers enum value + H264EndOfStreamMarkersSuppress = "SUPPRESS" +) + +// H264EndOfStreamMarkers_Values returns all elements of the H264EndOfStreamMarkers enum +func H264EndOfStreamMarkers_Values() []string { + return []string{ + H264EndOfStreamMarkersInclude, + H264EndOfStreamMarkersSuppress, + } +} + // Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC. const ( // H264EntropyEncodingCabac is a H264EntropyEncoding enum value @@ -32286,6 +32552,27 @@ func H265DynamicSubGop_Values() []string { } } +// Optionally include or suppress markers at the end of your output that signal +// the end of the video stream. To include end of stream markers: Leave blank +// or keep the default value, Include. To not include end of stream markers: +// Choose Suppress. This is useful when your output will be inserted into another +// stream. +const ( + // H265EndOfStreamMarkersInclude is a H265EndOfStreamMarkers enum value + H265EndOfStreamMarkersInclude = "INCLUDE" + + // H265EndOfStreamMarkersSuppress is a H265EndOfStreamMarkers enum value + H265EndOfStreamMarkersSuppress = "SUPPRESS" +) + +// H265EndOfStreamMarkers_Values returns all elements of the H265EndOfStreamMarkers enum +func H265EndOfStreamMarkers_Values() []string { + return []string{ + H265EndOfStreamMarkersInclude, + H265EndOfStreamMarkersSuppress, + } +} + // Enable this setting to have the encoder reduce I-frame pop. I-frame pop appears // as a visual flicker that can arise when the encoder saves bits by copying // some macroblocks many times from frame to frame, and then refreshes them diff --git a/service/oam/api.go b/service/oam/api.go index 48fb8cbcc72..434daeccee8 100644 --- a/service/oam/api.go +++ b/service/oam/api.go @@ -1252,6 +1252,8 @@ func (c *OAM) PutSinkPolicyRequest(input *PutSinkPolicyInput) (req *request.Requ // // - Traces - Specify with AWS::XRay::Trace // +// - Application Insights - Applications - Specify with AWS::ApplicationInsights::Application +// // See the examples in this section to see how to specify permitted source accounts // and data types. // @@ -3937,6 +3939,9 @@ const ( // ResourceTypeAwsXrayTrace is a ResourceType enum value ResourceTypeAwsXrayTrace = "AWS::XRay::Trace" + + // ResourceTypeAwsApplicationInsightsApplication is a ResourceType enum value + ResourceTypeAwsApplicationInsightsApplication = "AWS::ApplicationInsights::Application" ) // ResourceType_Values returns all elements of the ResourceType enum @@ -3945,5 +3950,6 @@ func ResourceType_Values() []string { ResourceTypeAwsCloudWatchMetric, ResourceTypeAwsLogsLogGroup, ResourceTypeAwsXrayTrace, + ResourceTypeAwsApplicationInsightsApplication, } } diff --git a/service/oam/doc.go b/service/oam/doc.go index ec81b55dfb0..aee505bb244 100644 --- a/service/oam/doc.go +++ b/service/oam/doc.go @@ -7,18 +7,19 @@ // between source accounts and monitoring accounts by using CloudWatch cross-account // observability. With CloudWatch cross-account observability, you can monitor // and troubleshoot applications that span multiple accounts within a Region. -// Seamlessly search, visualize, and analyze your metrics, logs, and traces -// in any of the linked accounts without account boundaries. -// -//

Set up one or more Amazon Web Services accounts as monitoring accounts -// and link them with multiple source accounts. A monitoring account -// is a central Amazon Web Services account that can view and interact with -// observability data generated from source accounts. A source account is -// an individual Amazon Web Services account that generates observability -// data for the resources that reside in it. Source accounts share their -// observability data with the monitoring account. The shared observability -// data can include metrics in Amazon CloudWatch, logs in Amazon CloudWatch -// Logs, and traces in X-Ray.

+// Seamlessly search, visualize, and analyze your metrics, logs, traces, and +// Application Insights applications in any of the linked accounts without account +// boundaries. +// +// Set up one or more Amazon Web Services accounts as monitoring accounts and +// link them with multiple source accounts. A monitoring account is a central +// Amazon Web Services account that can view and interact with observability +// data generated from source accounts. A source account is an individual Amazon +// Web Services account that generates observability data for the resources +// that reside in it. Source accounts share their observability data with the +// monitoring account. The shared observability data can include metrics in +// Amazon CloudWatch, logs in Amazon CloudWatch Logs, traces in X-Ray, and applications +// in Amazon CloudWatch Application Insights. // // See https://docs.aws.amazon.com/goto/WebAPI/oam-2022-06-10 for more information on this service. // diff --git a/service/sagemaker/api.go b/service/sagemaker/api.go index 03ed11648f4..80934b20fb4 100644 --- a/service/sagemaker/api.go +++ b/service/sagemaker/api.go @@ -104912,8 +104912,10 @@ type SelectiveExecutionConfig struct { // input collaterals needed for the selected steps to run. The execution status // of the pipeline can be either Failed or Success. // - // SourcePipelineExecutionArn is a required field - SourcePipelineExecutionArn *string `type:"string" required:"true"` + // This field is required if the steps you specify for SelectedSteps depend + // on output collaterals from any non-specified pipeline steps. For more information, + // see Selective Execution for Pipeline Steps (https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines-selective-ex.html). + SourcePipelineExecutionArn *string `type:"string"` } // String returns the string representation. @@ -104943,9 +104945,6 @@ func (s *SelectiveExecutionConfig) Validate() error { if s.SelectedSteps != nil && len(s.SelectedSteps) < 1 { invalidParams.Add(request.NewErrParamMinLen("SelectedSteps", 1)) } - if s.SourcePipelineExecutionArn == nil { - invalidParams.Add(request.NewErrParamRequired("SourcePipelineExecutionArn")) - } if s.SelectedSteps != nil { for i, v := range s.SelectedSteps { if v == nil { @@ -123305,6 +123304,9 @@ const ( // ProductionVariantInstanceTypeMlInf248xlarge is a ProductionVariantInstanceType enum value ProductionVariantInstanceTypeMlInf248xlarge = "ml.inf2.48xlarge" + + // ProductionVariantInstanceTypeMlP548xlarge is a ProductionVariantInstanceType enum value + ProductionVariantInstanceTypeMlP548xlarge = "ml.p5.48xlarge" ) // ProductionVariantInstanceType_Values returns all elements of the ProductionVariantInstanceType enum @@ -123457,6 +123459,7 @@ func ProductionVariantInstanceType_Values() []string { ProductionVariantInstanceTypeMlInf28xlarge, ProductionVariantInstanceTypeMlInf224xlarge, ProductionVariantInstanceTypeMlInf248xlarge, + ProductionVariantInstanceTypeMlP548xlarge, } } diff --git a/service/wellarchitected/api.go b/service/wellarchitected/api.go index 1ccd29c24a7..4787bc5af23 100644 --- a/service/wellarchitected/api.go +++ b/service/wellarchitected/api.go @@ -724,6 +724,225 @@ func (c *WellArchitected) CreateProfileShareWithContext(ctx aws.Context, input * return out, req.Send() } +const opCreateReviewTemplate = "CreateReviewTemplate" + +// CreateReviewTemplateRequest generates a "aws/request.Request" representing the +// client's request for the CreateReviewTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateReviewTemplate for more information on using the CreateReviewTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateReviewTemplateRequest method. +// req, resp := client.CreateReviewTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateReviewTemplate +func (c *WellArchitected) CreateReviewTemplateRequest(input *CreateReviewTemplateInput) (req *request.Request, output *CreateReviewTemplateOutput) { + op := &request.Operation{ + Name: opCreateReviewTemplate, + HTTPMethod: "POST", + HTTPPath: "/reviewTemplates", + } + + if input == nil { + input = &CreateReviewTemplateInput{} + } + + output = &CreateReviewTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateReviewTemplate API operation for AWS Well-Architected Tool. +// +// Create a review template. +// +// # Disclaimer +// +// Do not include or gather personal identifiable information (PII) of end users +// or other identifiable individuals in or via your review templates. If your +// review template or those shared with you and used in your account do include +// or collect PII you are responsible for: ensuring that the included PII is +// processed in accordance with applicable law, providing adequate privacy notices, +// and obtaining necessary consents for processing such data. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation CreateReviewTemplate for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - ServiceQuotaExceededException +// The user has reached their resource quota. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateReviewTemplate +func (c *WellArchitected) CreateReviewTemplate(input *CreateReviewTemplateInput) (*CreateReviewTemplateOutput, error) { + req, out := c.CreateReviewTemplateRequest(input) + return out, req.Send() +} + +// CreateReviewTemplateWithContext is the same as CreateReviewTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See CreateReviewTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) CreateReviewTemplateWithContext(ctx aws.Context, input *CreateReviewTemplateInput, opts ...request.Option) (*CreateReviewTemplateOutput, error) { + req, out := c.CreateReviewTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateTemplateShare = "CreateTemplateShare" + +// CreateTemplateShareRequest generates a "aws/request.Request" representing the +// client's request for the CreateTemplateShare operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateTemplateShare for more information on using the CreateTemplateShare +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateTemplateShareRequest method. +// req, resp := client.CreateTemplateShareRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateTemplateShare +func (c *WellArchitected) CreateTemplateShareRequest(input *CreateTemplateShareInput) (req *request.Request, output *CreateTemplateShareOutput) { + op := &request.Operation{ + Name: opCreateTemplateShare, + HTTPMethod: "POST", + HTTPPath: "/templates/shares/{TemplateArn}", + } + + if input == nil { + input = &CreateTemplateShareInput{} + } + + output = &CreateTemplateShareOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTemplateShare API operation for AWS Well-Architected Tool. +// +// Create a review template share. +// +// The owner of a review template can share it with other Amazon Web Services +// accounts, users, an organization, and organizational units (OUs) in the same +// Amazon Web Services Region. +// +// Shared access to a review template is not removed until the review template +// share invitation is deleted. +// +// If you share a review template with an organization or OU, all accounts in +// the organization or OU are granted access to the review template. +// +// # Disclaimer +// +// By sharing your review template with other Amazon Web Services accounts, +// you acknowledge that Amazon Web Services will make your review template available +// to those other accounts. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation CreateTemplateShare for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ServiceQuotaExceededException +// The user has reached their resource quota. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateTemplateShare +func (c *WellArchitected) CreateTemplateShare(input *CreateTemplateShareInput) (*CreateTemplateShareOutput, error) { + req, out := c.CreateTemplateShareRequest(input) + return out, req.Send() +} + +// CreateTemplateShareWithContext is the same as CreateTemplateShare with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTemplateShare for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) CreateTemplateShareWithContext(ctx aws.Context, input *CreateTemplateShareInput, opts ...request.Option) (*CreateTemplateShareOutput, error) { + req, out := c.CreateTemplateShareRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateWorkload = "CreateWorkload" // CreateWorkloadRequest generates a "aws/request.Request" representing the @@ -782,6 +1001,17 @@ func (c *WellArchitected) CreateWorkloadRequest(input *CreateWorkloadInput) (req // You also must specify ReviewOwner, even though the parameter is listed as // not being required in the following section. // +// When creating a workload using a review template, you must have the following +// IAM permissions: +// +// - wellarchitected:GetReviewTemplate +// +// - wellarchitected:GetReviewTemplateAnswer +// +// - wellarchitected:ListReviewTemplateAnswers +// +// - wellarchitected:GetReviewTemplateLensReview +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1353,58 +1583,64 @@ func (c *WellArchitected) DeleteProfileShareWithContext(ctx aws.Context, input * return out, req.Send() } -const opDeleteWorkload = "DeleteWorkload" +const opDeleteReviewTemplate = "DeleteReviewTemplate" -// DeleteWorkloadRequest generates a "aws/request.Request" representing the -// client's request for the DeleteWorkload operation. The "output" return +// DeleteReviewTemplateRequest generates a "aws/request.Request" representing the +// client's request for the DeleteReviewTemplate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See DeleteWorkload for more information on using the DeleteWorkload +// See DeleteReviewTemplate for more information on using the DeleteReviewTemplate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the DeleteWorkloadRequest method. -// req, resp := client.DeleteWorkloadRequest(params) +// // Example sending a request using the DeleteReviewTemplateRequest method. +// req, resp := client.DeleteReviewTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteWorkload -func (c *WellArchitected) DeleteWorkloadRequest(input *DeleteWorkloadInput) (req *request.Request, output *DeleteWorkloadOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteReviewTemplate +func (c *WellArchitected) DeleteReviewTemplateRequest(input *DeleteReviewTemplateInput) (req *request.Request, output *DeleteReviewTemplateOutput) { op := &request.Operation{ - Name: opDeleteWorkload, + Name: opDeleteReviewTemplate, HTTPMethod: "DELETE", - HTTPPath: "/workloads/{WorkloadId}", + HTTPPath: "/reviewTemplates/{TemplateArn}", } if input == nil { - input = &DeleteWorkloadInput{} + input = &DeleteReviewTemplateInput{} } - output = &DeleteWorkloadOutput{} + output = &DeleteReviewTemplateOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// DeleteWorkload API operation for AWS Well-Architected Tool. +// DeleteReviewTemplate API operation for AWS Well-Architected Tool. // -// Delete an existing workload. +// Delete a review template. +// +// Only the owner of a review template can delete it. +// +// After the review template is deleted, Amazon Web Services accounts, users, +// organizations, and organizational units (OUs) that you shared the review +// template with will no longer be able to apply it to new workloads. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation DeleteWorkload for usage and error information. +// API operation DeleteReviewTemplate for usage and error information. // // Returned Error Types: // @@ -1426,80 +1662,84 @@ func (c *WellArchitected) DeleteWorkloadRequest(input *DeleteWorkloadInput) (req // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteWorkload -func (c *WellArchitected) DeleteWorkload(input *DeleteWorkloadInput) (*DeleteWorkloadOutput, error) { - req, out := c.DeleteWorkloadRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteReviewTemplate +func (c *WellArchitected) DeleteReviewTemplate(input *DeleteReviewTemplateInput) (*DeleteReviewTemplateOutput, error) { + req, out := c.DeleteReviewTemplateRequest(input) return out, req.Send() } -// DeleteWorkloadWithContext is the same as DeleteWorkload with the addition of +// DeleteReviewTemplateWithContext is the same as DeleteReviewTemplate with the addition of // the ability to pass a context and additional request options. // -// See DeleteWorkload for details on how to use this API operation. +// See DeleteReviewTemplate for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) DeleteWorkloadWithContext(ctx aws.Context, input *DeleteWorkloadInput, opts ...request.Option) (*DeleteWorkloadOutput, error) { - req, out := c.DeleteWorkloadRequest(input) +func (c *WellArchitected) DeleteReviewTemplateWithContext(ctx aws.Context, input *DeleteReviewTemplateInput, opts ...request.Option) (*DeleteReviewTemplateOutput, error) { + req, out := c.DeleteReviewTemplateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDeleteWorkloadShare = "DeleteWorkloadShare" +const opDeleteTemplateShare = "DeleteTemplateShare" -// DeleteWorkloadShareRequest generates a "aws/request.Request" representing the -// client's request for the DeleteWorkloadShare operation. The "output" return +// DeleteTemplateShareRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTemplateShare operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See DeleteWorkloadShare for more information on using the DeleteWorkloadShare +// See DeleteTemplateShare for more information on using the DeleteTemplateShare // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the DeleteWorkloadShareRequest method. -// req, resp := client.DeleteWorkloadShareRequest(params) +// // Example sending a request using the DeleteTemplateShareRequest method. +// req, resp := client.DeleteTemplateShareRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteWorkloadShare -func (c *WellArchitected) DeleteWorkloadShareRequest(input *DeleteWorkloadShareInput) (req *request.Request, output *DeleteWorkloadShareOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteTemplateShare +func (c *WellArchitected) DeleteTemplateShareRequest(input *DeleteTemplateShareInput) (req *request.Request, output *DeleteTemplateShareOutput) { op := &request.Operation{ - Name: opDeleteWorkloadShare, + Name: opDeleteTemplateShare, HTTPMethod: "DELETE", - HTTPPath: "/workloads/{WorkloadId}/shares/{ShareId}", + HTTPPath: "/templates/shares/{TemplateArn}/{ShareId}", } if input == nil { - input = &DeleteWorkloadShareInput{} + input = &DeleteTemplateShareInput{} } - output = &DeleteWorkloadShareOutput{} + output = &DeleteTemplateShareOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// DeleteWorkloadShare API operation for AWS Well-Architected Tool. +// DeleteTemplateShare API operation for AWS Well-Architected Tool. // -// Delete a workload share. +// Delete a review template share. +// +// After the review template share is deleted, Amazon Web Services accounts, +// users, organizations, and organizational units (OUs) that you shared the +// review template with will no longer be able to apply it to new workloads. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation DeleteWorkloadShare for usage and error information. +// API operation DeleteTemplateShare for usage and error information. // // Returned Error Types: // @@ -1521,85 +1761,80 @@ func (c *WellArchitected) DeleteWorkloadShareRequest(input *DeleteWorkloadShareI // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteWorkloadShare -func (c *WellArchitected) DeleteWorkloadShare(input *DeleteWorkloadShareInput) (*DeleteWorkloadShareOutput, error) { - req, out := c.DeleteWorkloadShareRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteTemplateShare +func (c *WellArchitected) DeleteTemplateShare(input *DeleteTemplateShareInput) (*DeleteTemplateShareOutput, error) { + req, out := c.DeleteTemplateShareRequest(input) return out, req.Send() } -// DeleteWorkloadShareWithContext is the same as DeleteWorkloadShare with the addition of +// DeleteTemplateShareWithContext is the same as DeleteTemplateShare with the addition of // the ability to pass a context and additional request options. // -// See DeleteWorkloadShare for details on how to use this API operation. +// See DeleteTemplateShare for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) DeleteWorkloadShareWithContext(ctx aws.Context, input *DeleteWorkloadShareInput, opts ...request.Option) (*DeleteWorkloadShareOutput, error) { - req, out := c.DeleteWorkloadShareRequest(input) +func (c *WellArchitected) DeleteTemplateShareWithContext(ctx aws.Context, input *DeleteTemplateShareInput, opts ...request.Option) (*DeleteTemplateShareOutput, error) { + req, out := c.DeleteTemplateShareRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDisassociateLenses = "DisassociateLenses" +const opDeleteWorkload = "DeleteWorkload" -// DisassociateLensesRequest generates a "aws/request.Request" representing the -// client's request for the DisassociateLenses operation. The "output" return +// DeleteWorkloadRequest generates a "aws/request.Request" representing the +// client's request for the DeleteWorkload operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See DisassociateLenses for more information on using the DisassociateLenses +// See DeleteWorkload for more information on using the DeleteWorkload // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the DisassociateLensesRequest method. -// req, resp := client.DisassociateLensesRequest(params) +// // Example sending a request using the DeleteWorkloadRequest method. +// req, resp := client.DeleteWorkloadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DisassociateLenses -func (c *WellArchitected) DisassociateLensesRequest(input *DisassociateLensesInput) (req *request.Request, output *DisassociateLensesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteWorkload +func (c *WellArchitected) DeleteWorkloadRequest(input *DeleteWorkloadInput) (req *request.Request, output *DeleteWorkloadOutput) { op := &request.Operation{ - Name: opDisassociateLenses, - HTTPMethod: "PATCH", - HTTPPath: "/workloads/{WorkloadId}/disassociateLenses", + Name: opDeleteWorkload, + HTTPMethod: "DELETE", + HTTPPath: "/workloads/{WorkloadId}", } if input == nil { - input = &DisassociateLensesInput{} + input = &DeleteWorkloadInput{} } - output = &DisassociateLensesOutput{} + output = &DeleteWorkloadOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// DisassociateLenses API operation for AWS Well-Architected Tool. -// -// Disassociate a lens from a workload. -// -// Up to 10 lenses can be disassociated from a workload in a single API operation. +// DeleteWorkload API operation for AWS Well-Architected Tool. // -// The Amazon Web Services Well-Architected Framework lens (wellarchitected) -// cannot be removed from a workload. +// Delete an existing workload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation DisassociateLenses for usage and error information. +// API operation DeleteWorkload for usage and error information. // // Returned Error Types: // @@ -1621,9 +1856,204 @@ func (c *WellArchitected) DisassociateLensesRequest(input *DisassociateLensesInp // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DisassociateLenses -func (c *WellArchitected) DisassociateLenses(input *DisassociateLensesInput) (*DisassociateLensesOutput, error) { - req, out := c.DisassociateLensesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteWorkload +func (c *WellArchitected) DeleteWorkload(input *DeleteWorkloadInput) (*DeleteWorkloadOutput, error) { + req, out := c.DeleteWorkloadRequest(input) + return out, req.Send() +} + +// DeleteWorkloadWithContext is the same as DeleteWorkload with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteWorkload for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) DeleteWorkloadWithContext(ctx aws.Context, input *DeleteWorkloadInput, opts ...request.Option) (*DeleteWorkloadOutput, error) { + req, out := c.DeleteWorkloadRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteWorkloadShare = "DeleteWorkloadShare" + +// DeleteWorkloadShareRequest generates a "aws/request.Request" representing the +// client's request for the DeleteWorkloadShare operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteWorkloadShare for more information on using the DeleteWorkloadShare +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteWorkloadShareRequest method. +// req, resp := client.DeleteWorkloadShareRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteWorkloadShare +func (c *WellArchitected) DeleteWorkloadShareRequest(input *DeleteWorkloadShareInput) (req *request.Request, output *DeleteWorkloadShareOutput) { + op := &request.Operation{ + Name: opDeleteWorkloadShare, + HTTPMethod: "DELETE", + HTTPPath: "/workloads/{WorkloadId}/shares/{ShareId}", + } + + if input == nil { + input = &DeleteWorkloadShareInput{} + } + + output = &DeleteWorkloadShareOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteWorkloadShare API operation for AWS Well-Architected Tool. +// +// Delete a workload share. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation DeleteWorkloadShare for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteWorkloadShare +func (c *WellArchitected) DeleteWorkloadShare(input *DeleteWorkloadShareInput) (*DeleteWorkloadShareOutput, error) { + req, out := c.DeleteWorkloadShareRequest(input) + return out, req.Send() +} + +// DeleteWorkloadShareWithContext is the same as DeleteWorkloadShare with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteWorkloadShare for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) DeleteWorkloadShareWithContext(ctx aws.Context, input *DeleteWorkloadShareInput, opts ...request.Option) (*DeleteWorkloadShareOutput, error) { + req, out := c.DeleteWorkloadShareRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDisassociateLenses = "DisassociateLenses" + +// DisassociateLensesRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateLenses operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DisassociateLenses for more information on using the DisassociateLenses +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DisassociateLensesRequest method. +// req, resp := client.DisassociateLensesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DisassociateLenses +func (c *WellArchitected) DisassociateLensesRequest(input *DisassociateLensesInput) (req *request.Request, output *DisassociateLensesOutput) { + op := &request.Operation{ + Name: opDisassociateLenses, + HTTPMethod: "PATCH", + HTTPPath: "/workloads/{WorkloadId}/disassociateLenses", + } + + if input == nil { + input = &DisassociateLensesInput{} + } + + output = &DisassociateLensesOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DisassociateLenses API operation for AWS Well-Architected Tool. +// +// Disassociate a lens from a workload. +// +// Up to 10 lenses can be disassociated from a workload in a single API operation. +// +// The Amazon Web Services Well-Architected Framework lens (wellarchitected) +// cannot be removed from a workload. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation DisassociateLenses for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DisassociateLenses +func (c *WellArchitected) DisassociateLenses(input *DisassociateLensesInput) (*DisassociateLensesOutput, error) { + req, out := c.DisassociateLensesRequest(input) return out, req.Send() } @@ -2724,57 +3154,57 @@ func (c *WellArchitected) GetProfileTemplateWithContext(ctx aws.Context, input * return out, req.Send() } -const opGetWorkload = "GetWorkload" +const opGetReviewTemplate = "GetReviewTemplate" -// GetWorkloadRequest generates a "aws/request.Request" representing the -// client's request for the GetWorkload operation. The "output" return +// GetReviewTemplateRequest generates a "aws/request.Request" representing the +// client's request for the GetReviewTemplate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetWorkload for more information on using the GetWorkload +// See GetReviewTemplate for more information on using the GetReviewTemplate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the GetWorkloadRequest method. -// req, resp := client.GetWorkloadRequest(params) +// // Example sending a request using the GetReviewTemplateRequest method. +// req, resp := client.GetReviewTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetWorkload -func (c *WellArchitected) GetWorkloadRequest(input *GetWorkloadInput) (req *request.Request, output *GetWorkloadOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplate +func (c *WellArchitected) GetReviewTemplateRequest(input *GetReviewTemplateInput) (req *request.Request, output *GetReviewTemplateOutput) { op := &request.Operation{ - Name: opGetWorkload, + Name: opGetReviewTemplate, HTTPMethod: "GET", - HTTPPath: "/workloads/{WorkloadId}", + HTTPPath: "/reviewTemplates/{TemplateArn}", } if input == nil { - input = &GetWorkloadInput{} + input = &GetReviewTemplateInput{} } - output = &GetWorkloadOutput{} + output = &GetReviewTemplateOutput{} req = c.newRequest(op, input, output) return } -// GetWorkload API operation for AWS Well-Architected Tool. +// GetReviewTemplate API operation for AWS Well-Architected Tool. // -// Get an existing workload. +// Get review template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation GetWorkload for usage and error information. +// API operation GetReviewTemplate for usage and error information. // // Returned Error Types: // @@ -2793,116 +3223,88 @@ func (c *WellArchitected) GetWorkloadRequest(input *GetWorkloadInput) (req *requ // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetWorkload -func (c *WellArchitected) GetWorkload(input *GetWorkloadInput) (*GetWorkloadOutput, error) { - req, out := c.GetWorkloadRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplate +func (c *WellArchitected) GetReviewTemplate(input *GetReviewTemplateInput) (*GetReviewTemplateOutput, error) { + req, out := c.GetReviewTemplateRequest(input) return out, req.Send() } -// GetWorkloadWithContext is the same as GetWorkload with the addition of +// GetReviewTemplateWithContext is the same as GetReviewTemplate with the addition of // the ability to pass a context and additional request options. // -// See GetWorkload for details on how to use this API operation. +// See GetReviewTemplate for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) GetWorkloadWithContext(ctx aws.Context, input *GetWorkloadInput, opts ...request.Option) (*GetWorkloadOutput, error) { - req, out := c.GetWorkloadRequest(input) +func (c *WellArchitected) GetReviewTemplateWithContext(ctx aws.Context, input *GetReviewTemplateInput, opts ...request.Option) (*GetReviewTemplateOutput, error) { + req, out := c.GetReviewTemplateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opImportLens = "ImportLens" +const opGetReviewTemplateAnswer = "GetReviewTemplateAnswer" -// ImportLensRequest generates a "aws/request.Request" representing the -// client's request for the ImportLens operation. The "output" return +// GetReviewTemplateAnswerRequest generates a "aws/request.Request" representing the +// client's request for the GetReviewTemplateAnswer operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ImportLens for more information on using the ImportLens +// See GetReviewTemplateAnswer for more information on using the GetReviewTemplateAnswer // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ImportLensRequest method. -// req, resp := client.ImportLensRequest(params) +// // Example sending a request using the GetReviewTemplateAnswerRequest method. +// req, resp := client.GetReviewTemplateAnswerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ImportLens -func (c *WellArchitected) ImportLensRequest(input *ImportLensInput) (req *request.Request, output *ImportLensOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplateAnswer +func (c *WellArchitected) GetReviewTemplateAnswerRequest(input *GetReviewTemplateAnswerInput) (req *request.Request, output *GetReviewTemplateAnswerOutput) { op := &request.Operation{ - Name: opImportLens, - HTTPMethod: "PUT", - HTTPPath: "/importLens", + Name: opGetReviewTemplateAnswer, + HTTPMethod: "GET", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}", } if input == nil { - input = &ImportLensInput{} + input = &GetReviewTemplateAnswerInput{} } - output = &ImportLensOutput{} + output = &GetReviewTemplateAnswerOutput{} req = c.newRequest(op, input, output) return } -// ImportLens API operation for AWS Well-Architected Tool. -// -// Import a new custom lens or update an existing custom lens. -// -// To update an existing custom lens, specify its ARN as the LensAlias. If no -// ARN is specified, a new custom lens is created. -// -// The new or updated lens will have a status of DRAFT. The lens cannot be applied -// to workloads or shared with other Amazon Web Services accounts until it's -// published with CreateLensVersion. -// -// Lenses are defined in JSON. For more information, see JSON format specification -// (https://docs.aws.amazon.com/wellarchitected/latest/userguide/lenses-format-specification.html) -// in the Well-Architected Tool User Guide. -// -// A custom lens cannot exceed 500 KB in size. -// -// # Disclaimer +// GetReviewTemplateAnswer API operation for AWS Well-Architected Tool. // -// Do not include or gather personal identifiable information (PII) of end users -// or other identifiable individuals in or via your custom lenses. If your custom -// lens or those shared with you and used in your account do include or collect -// PII you are responsible for: ensuring that the included PII is processed -// in accordance with applicable law, providing adequate privacy notices, and -// obtaining necessary consents for processing such data. +// Get review template answer. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ImportLens for usage and error information. +// API operation GetReviewTemplateAnswer for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - ConflictException -// The resource has already been processed, was deleted, or is too large. -// // - ResourceNotFoundException // The requested resource was not found. // -// - ServiceQuotaExceededException -// The user has reached their resource quota. -// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // @@ -2912,233 +3314,170 @@ func (c *WellArchitected) ImportLensRequest(input *ImportLensInput) (req *reques // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ImportLens -func (c *WellArchitected) ImportLens(input *ImportLensInput) (*ImportLensOutput, error) { - req, out := c.ImportLensRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplateAnswer +func (c *WellArchitected) GetReviewTemplateAnswer(input *GetReviewTemplateAnswerInput) (*GetReviewTemplateAnswerOutput, error) { + req, out := c.GetReviewTemplateAnswerRequest(input) return out, req.Send() } -// ImportLensWithContext is the same as ImportLens with the addition of +// GetReviewTemplateAnswerWithContext is the same as GetReviewTemplateAnswer with the addition of // the ability to pass a context and additional request options. // -// See ImportLens for details on how to use this API operation. +// See GetReviewTemplateAnswer for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ImportLensWithContext(ctx aws.Context, input *ImportLensInput, opts ...request.Option) (*ImportLensOutput, error) { - req, out := c.ImportLensRequest(input) +func (c *WellArchitected) GetReviewTemplateAnswerWithContext(ctx aws.Context, input *GetReviewTemplateAnswerInput, opts ...request.Option) (*GetReviewTemplateAnswerOutput, error) { + req, out := c.GetReviewTemplateAnswerRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListAnswers = "ListAnswers" +const opGetReviewTemplateLensReview = "GetReviewTemplateLensReview" -// ListAnswersRequest generates a "aws/request.Request" representing the -// client's request for the ListAnswers operation. The "output" return +// GetReviewTemplateLensReviewRequest generates a "aws/request.Request" representing the +// client's request for the GetReviewTemplateLensReview operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListAnswers for more information on using the ListAnswers +// See GetReviewTemplateLensReview for more information on using the GetReviewTemplateLensReview // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListAnswersRequest method. -// req, resp := client.ListAnswersRequest(params) +// // Example sending a request using the GetReviewTemplateLensReviewRequest method. +// req, resp := client.GetReviewTemplateLensReviewRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListAnswers -func (c *WellArchitected) ListAnswersRequest(input *ListAnswersInput) (req *request.Request, output *ListAnswersOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplateLensReview +func (c *WellArchitected) GetReviewTemplateLensReviewRequest(input *GetReviewTemplateLensReviewInput) (req *request.Request, output *GetReviewTemplateLensReviewOutput) { op := &request.Operation{ - Name: opListAnswers, + Name: opGetReviewTemplateLensReview, HTTPMethod: "GET", - HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}", } if input == nil { - input = &ListAnswersInput{} + input = &GetReviewTemplateLensReviewInput{} } - output = &ListAnswersOutput{} + output = &GetReviewTemplateLensReviewOutput{} req = c.newRequest(op, input, output) return } -// ListAnswers API operation for AWS Well-Architected Tool. +// GetReviewTemplateLensReview API operation for AWS Well-Architected Tool. // -// List of answers for a particular workload and lens. +// Get a lens review associated with a review template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListAnswers for usage and error information. +// API operation GetReviewTemplateLensReview for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - InternalServerException -// There is a problem with the Well-Architected Tool API service. -// // - ResourceNotFoundException // The requested resource was not found. // +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListAnswers -func (c *WellArchitected) ListAnswers(input *ListAnswersInput) (*ListAnswersOutput, error) { - req, out := c.ListAnswersRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetReviewTemplateLensReview +func (c *WellArchitected) GetReviewTemplateLensReview(input *GetReviewTemplateLensReviewInput) (*GetReviewTemplateLensReviewOutput, error) { + req, out := c.GetReviewTemplateLensReviewRequest(input) return out, req.Send() } -// ListAnswersWithContext is the same as ListAnswers with the addition of +// GetReviewTemplateLensReviewWithContext is the same as GetReviewTemplateLensReview with the addition of // the ability to pass a context and additional request options. // -// See ListAnswers for details on how to use this API operation. +// See GetReviewTemplateLensReview for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListAnswersWithContext(ctx aws.Context, input *ListAnswersInput, opts ...request.Option) (*ListAnswersOutput, error) { - req, out := c.ListAnswersRequest(input) +func (c *WellArchitected) GetReviewTemplateLensReviewWithContext(ctx aws.Context, input *GetReviewTemplateLensReviewInput, opts ...request.Option) (*GetReviewTemplateLensReviewOutput, error) { + req, out := c.GetReviewTemplateLensReviewRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListAnswersPages iterates over the pages of a ListAnswers operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListAnswers method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListAnswers operation. -// pageNum := 0 -// err := client.ListAnswersPages(params, -// func(page *wellarchitected.ListAnswersOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *WellArchitected) ListAnswersPages(input *ListAnswersInput, fn func(*ListAnswersOutput, bool) bool) error { - return c.ListAnswersPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListAnswersPagesWithContext same as ListAnswersPages except -// it takes a Context and allows setting request options on the pages. -// -// The context must be non-nil and will be used for request cancellation. If -// the context is nil a panic will occur. In the future the SDK may create -// sub-contexts for http.Requests. See https://golang.org/pkg/context/ -// for more information on using Contexts. -func (c *WellArchitected) ListAnswersPagesWithContext(ctx aws.Context, input *ListAnswersInput, fn func(*ListAnswersOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListAnswersInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListAnswersRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListAnswersOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListCheckDetails = "ListCheckDetails" +const opGetWorkload = "GetWorkload" -// ListCheckDetailsRequest generates a "aws/request.Request" representing the -// client's request for the ListCheckDetails operation. The "output" return +// GetWorkloadRequest generates a "aws/request.Request" representing the +// client's request for the GetWorkload operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListCheckDetails for more information on using the ListCheckDetails +// See GetWorkload for more information on using the GetWorkload // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListCheckDetailsRequest method. -// req, resp := client.ListCheckDetailsRequest(params) +// // Example sending a request using the GetWorkloadRequest method. +// req, resp := client.GetWorkloadRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListCheckDetails -func (c *WellArchitected) ListCheckDetailsRequest(input *ListCheckDetailsInput) (req *request.Request, output *ListCheckDetailsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetWorkload +func (c *WellArchitected) GetWorkloadRequest(input *GetWorkloadInput) (req *request.Request, output *GetWorkloadOutput) { op := &request.Operation{ - Name: opListCheckDetails, - HTTPMethod: "POST", - HTTPPath: "/workloads/{WorkloadId}/checks", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + Name: opGetWorkload, + HTTPMethod: "GET", + HTTPPath: "/workloads/{WorkloadId}", } if input == nil { - input = &ListCheckDetailsInput{} + input = &GetWorkloadInput{} } - output = &ListCheckDetailsOutput{} + output = &GetWorkloadOutput{} req = c.newRequest(op, input, output) return } -// ListCheckDetails API operation for AWS Well-Architected Tool. +// GetWorkload API operation for AWS Well-Architected Tool. // -// List of Trusted Advisor check details by account related to the workload. +// Get an existing workload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListCheckDetails for usage and error information. +// API operation GetWorkload for usage and error information. // // Returned Error Types: // @@ -3157,146 +3496,116 @@ func (c *WellArchitected) ListCheckDetailsRequest(input *ListCheckDetailsInput) // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListCheckDetails -func (c *WellArchitected) ListCheckDetails(input *ListCheckDetailsInput) (*ListCheckDetailsOutput, error) { - req, out := c.ListCheckDetailsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetWorkload +func (c *WellArchitected) GetWorkload(input *GetWorkloadInput) (*GetWorkloadOutput, error) { + req, out := c.GetWorkloadRequest(input) return out, req.Send() } -// ListCheckDetailsWithContext is the same as ListCheckDetails with the addition of +// GetWorkloadWithContext is the same as GetWorkload with the addition of // the ability to pass a context and additional request options. // -// See ListCheckDetails for details on how to use this API operation. +// See GetWorkload for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListCheckDetailsWithContext(ctx aws.Context, input *ListCheckDetailsInput, opts ...request.Option) (*ListCheckDetailsOutput, error) { - req, out := c.ListCheckDetailsRequest(input) +func (c *WellArchitected) GetWorkloadWithContext(ctx aws.Context, input *GetWorkloadInput, opts ...request.Option) (*GetWorkloadOutput, error) { + req, out := c.GetWorkloadRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListCheckDetailsPages iterates over the pages of a ListCheckDetails operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListCheckDetails method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListCheckDetails operation. -// pageNum := 0 -// err := client.ListCheckDetailsPages(params, -// func(page *wellarchitected.ListCheckDetailsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *WellArchitected) ListCheckDetailsPages(input *ListCheckDetailsInput, fn func(*ListCheckDetailsOutput, bool) bool) error { - return c.ListCheckDetailsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListCheckDetailsPagesWithContext same as ListCheckDetailsPages except -// it takes a Context and allows setting request options on the pages. -// -// The context must be non-nil and will be used for request cancellation. If -// the context is nil a panic will occur. In the future the SDK may create -// sub-contexts for http.Requests. See https://golang.org/pkg/context/ -// for more information on using Contexts. -func (c *WellArchitected) ListCheckDetailsPagesWithContext(ctx aws.Context, input *ListCheckDetailsInput, fn func(*ListCheckDetailsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListCheckDetailsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListCheckDetailsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListCheckDetailsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListCheckSummaries = "ListCheckSummaries" +const opImportLens = "ImportLens" -// ListCheckSummariesRequest generates a "aws/request.Request" representing the -// client's request for the ListCheckSummaries operation. The "output" return +// ImportLensRequest generates a "aws/request.Request" representing the +// client's request for the ImportLens operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListCheckSummaries for more information on using the ListCheckSummaries +// See ImportLens for more information on using the ImportLens // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListCheckSummariesRequest method. -// req, resp := client.ListCheckSummariesRequest(params) +// // Example sending a request using the ImportLensRequest method. +// req, resp := client.ImportLensRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListCheckSummaries -func (c *WellArchitected) ListCheckSummariesRequest(input *ListCheckSummariesInput) (req *request.Request, output *ListCheckSummariesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ImportLens +func (c *WellArchitected) ImportLensRequest(input *ImportLensInput) (req *request.Request, output *ImportLensOutput) { op := &request.Operation{ - Name: opListCheckSummaries, - HTTPMethod: "POST", - HTTPPath: "/workloads/{WorkloadId}/checkSummaries", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + Name: opImportLens, + HTTPMethod: "PUT", + HTTPPath: "/importLens", } if input == nil { - input = &ListCheckSummariesInput{} + input = &ImportLensInput{} } - output = &ListCheckSummariesOutput{} + output = &ImportLensOutput{} req = c.newRequest(op, input, output) return } -// ListCheckSummaries API operation for AWS Well-Architected Tool. +// ImportLens API operation for AWS Well-Architected Tool. // -// List of Trusted Advisor checks summarized for all accounts related to the -// workload. +// Import a new custom lens or update an existing custom lens. // -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. +// To update an existing custom lens, specify its ARN as the LensAlias. If no +// ARN is specified, a new custom lens is created. // -// See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListCheckSummaries for usage and error information. +// The new or updated lens will have a status of DRAFT. The lens cannot be applied +// to workloads or shared with other Amazon Web Services accounts until it's +// published with CreateLensVersion. // -// Returned Error Types: +// Lenses are defined in JSON. For more information, see JSON format specification +// (https://docs.aws.amazon.com/wellarchitected/latest/userguide/lenses-format-specification.html) +// in the Well-Architected Tool User Guide. // -// - ValidationException -// The user input is not valid. +// A custom lens cannot exceed 500 KB in size. // -// - ResourceNotFoundException +// # Disclaimer +// +// Do not include or gather personal identifiable information (PII) of end users +// or other identifiable individuals in or via your custom lenses. If your custom +// lens or those shared with you and used in your account do include or collect +// PII you are responsible for: ensuring that the included PII is processed +// in accordance with applicable law, providing adequate privacy notices, and +// obtaining necessary consents for processing such data. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation ImportLens for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - ResourceNotFoundException // The requested resource was not found. // +// - ServiceQuotaExceededException +// The user has reached their resource quota. +// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // @@ -3306,109 +3615,58 @@ func (c *WellArchitected) ListCheckSummariesRequest(input *ListCheckSummariesInp // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListCheckSummaries -func (c *WellArchitected) ListCheckSummaries(input *ListCheckSummariesInput) (*ListCheckSummariesOutput, error) { - req, out := c.ListCheckSummariesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ImportLens +func (c *WellArchitected) ImportLens(input *ImportLensInput) (*ImportLensOutput, error) { + req, out := c.ImportLensRequest(input) return out, req.Send() } -// ListCheckSummariesWithContext is the same as ListCheckSummaries with the addition of +// ImportLensWithContext is the same as ImportLens with the addition of // the ability to pass a context and additional request options. // -// See ListCheckSummaries for details on how to use this API operation. +// See ImportLens for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListCheckSummariesWithContext(ctx aws.Context, input *ListCheckSummariesInput, opts ...request.Option) (*ListCheckSummariesOutput, error) { - req, out := c.ListCheckSummariesRequest(input) +func (c *WellArchitected) ImportLensWithContext(ctx aws.Context, input *ImportLensInput, opts ...request.Option) (*ImportLensOutput, error) { + req, out := c.ImportLensRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListCheckSummariesPages iterates over the pages of a ListCheckSummaries operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListCheckSummaries method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListCheckSummaries operation. -// pageNum := 0 -// err := client.ListCheckSummariesPages(params, -// func(page *wellarchitected.ListCheckSummariesOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *WellArchitected) ListCheckSummariesPages(input *ListCheckSummariesInput, fn func(*ListCheckSummariesOutput, bool) bool) error { - return c.ListCheckSummariesPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListCheckSummariesPagesWithContext same as ListCheckSummariesPages except -// it takes a Context and allows setting request options on the pages. -// -// The context must be non-nil and will be used for request cancellation. If -// the context is nil a panic will occur. In the future the SDK may create -// sub-contexts for http.Requests. See https://golang.org/pkg/context/ -// for more information on using Contexts. -func (c *WellArchitected) ListCheckSummariesPagesWithContext(ctx aws.Context, input *ListCheckSummariesInput, fn func(*ListCheckSummariesOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListCheckSummariesInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListCheckSummariesRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListCheckSummariesOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListLensReviewImprovements = "ListLensReviewImprovements" +const opListAnswers = "ListAnswers" -// ListLensReviewImprovementsRequest generates a "aws/request.Request" representing the -// client's request for the ListLensReviewImprovements operation. The "output" return +// ListAnswersRequest generates a "aws/request.Request" representing the +// client's request for the ListAnswers operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListLensReviewImprovements for more information on using the ListLensReviewImprovements +// See ListAnswers for more information on using the ListAnswers // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListLensReviewImprovementsRequest method. -// req, resp := client.ListLensReviewImprovementsRequest(params) +// // Example sending a request using the ListAnswersRequest method. +// req, resp := client.ListAnswersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviewImprovements -func (c *WellArchitected) ListLensReviewImprovementsRequest(input *ListLensReviewImprovementsInput) (req *request.Request, output *ListLensReviewImprovementsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListAnswers +func (c *WellArchitected) ListAnswersRequest(input *ListAnswersInput) (req *request.Request, output *ListAnswersOutput) { op := &request.Operation{ - Name: opListLensReviewImprovements, + Name: opListAnswers, HTTPMethod: "GET", - HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}/improvements", + HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -3418,24 +3676,24 @@ func (c *WellArchitected) ListLensReviewImprovementsRequest(input *ListLensRevie } if input == nil { - input = &ListLensReviewImprovementsInput{} + input = &ListAnswersInput{} } - output = &ListLensReviewImprovementsOutput{} + output = &ListAnswersOutput{} req = c.newRequest(op, input, output) return } -// ListLensReviewImprovements API operation for AWS Well-Architected Tool. +// ListAnswers API operation for AWS Well-Architected Tool. // -// List lens review improvements. +// List of answers for a particular workload and lens. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListLensReviewImprovements for usage and error information. +// API operation ListAnswers for usage and error information. // // Returned Error Types: // @@ -3454,64 +3712,64 @@ func (c *WellArchitected) ListLensReviewImprovementsRequest(input *ListLensRevie // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviewImprovements -func (c *WellArchitected) ListLensReviewImprovements(input *ListLensReviewImprovementsInput) (*ListLensReviewImprovementsOutput, error) { - req, out := c.ListLensReviewImprovementsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListAnswers +func (c *WellArchitected) ListAnswers(input *ListAnswersInput) (*ListAnswersOutput, error) { + req, out := c.ListAnswersRequest(input) return out, req.Send() } -// ListLensReviewImprovementsWithContext is the same as ListLensReviewImprovements with the addition of +// ListAnswersWithContext is the same as ListAnswers with the addition of // the ability to pass a context and additional request options. // -// See ListLensReviewImprovements for details on how to use this API operation. +// See ListAnswers for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListLensReviewImprovementsWithContext(ctx aws.Context, input *ListLensReviewImprovementsInput, opts ...request.Option) (*ListLensReviewImprovementsOutput, error) { - req, out := c.ListLensReviewImprovementsRequest(input) +func (c *WellArchitected) ListAnswersWithContext(ctx aws.Context, input *ListAnswersInput, opts ...request.Option) (*ListAnswersOutput, error) { + req, out := c.ListAnswersRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListLensReviewImprovementsPages iterates over the pages of a ListLensReviewImprovements operation, +// ListAnswersPages iterates over the pages of a ListAnswers operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListLensReviewImprovements method for more information on how to use this operation. +// See ListAnswers method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListLensReviewImprovements operation. +// // Example iterating over at most 3 pages of a ListAnswers operation. // pageNum := 0 -// err := client.ListLensReviewImprovementsPages(params, -// func(page *wellarchitected.ListLensReviewImprovementsOutput, lastPage bool) bool { +// err := client.ListAnswersPages(params, +// func(page *wellarchitected.ListAnswersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListLensReviewImprovementsPages(input *ListLensReviewImprovementsInput, fn func(*ListLensReviewImprovementsOutput, bool) bool) error { - return c.ListLensReviewImprovementsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListAnswersPages(input *ListAnswersInput, fn func(*ListAnswersOutput, bool) bool) error { + return c.ListAnswersPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListLensReviewImprovementsPagesWithContext same as ListLensReviewImprovementsPages except +// ListAnswersPagesWithContext same as ListAnswersPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListLensReviewImprovementsPagesWithContext(ctx aws.Context, input *ListLensReviewImprovementsInput, fn func(*ListLensReviewImprovementsOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListAnswersPagesWithContext(ctx aws.Context, input *ListAnswersInput, fn func(*ListAnswersOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListLensReviewImprovementsInput + var inCpy *ListAnswersInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListLensReviewImprovementsRequest(inCpy) + req, _ := c.ListAnswersRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -3519,7 +3777,7 @@ func (c *WellArchitected) ListLensReviewImprovementsPagesWithContext(ctx aws.Con } for p.Next() { - if !fn(p.Page().(*ListLensReviewImprovementsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListAnswersOutput), !p.HasNextPage()) { break } } @@ -3527,36 +3785,36 @@ func (c *WellArchitected) ListLensReviewImprovementsPagesWithContext(ctx aws.Con return p.Err() } -const opListLensReviews = "ListLensReviews" +const opListCheckDetails = "ListCheckDetails" -// ListLensReviewsRequest generates a "aws/request.Request" representing the -// client's request for the ListLensReviews operation. The "output" return +// ListCheckDetailsRequest generates a "aws/request.Request" representing the +// client's request for the ListCheckDetails operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListLensReviews for more information on using the ListLensReviews +// See ListCheckDetails for more information on using the ListCheckDetails // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListLensReviewsRequest method. -// req, resp := client.ListLensReviewsRequest(params) +// // Example sending a request using the ListCheckDetailsRequest method. +// req, resp := client.ListCheckDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviews -func (c *WellArchitected) ListLensReviewsRequest(input *ListLensReviewsInput) (req *request.Request, output *ListLensReviewsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListCheckDetails +func (c *WellArchitected) ListCheckDetailsRequest(input *ListCheckDetailsInput) (req *request.Request, output *ListCheckDetailsOutput) { op := &request.Operation{ - Name: opListLensReviews, - HTTPMethod: "GET", - HTTPPath: "/workloads/{WorkloadId}/lensReviews", + Name: opListCheckDetails, + HTTPMethod: "POST", + HTTPPath: "/workloads/{WorkloadId}/checks", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -3566,100 +3824,100 @@ func (c *WellArchitected) ListLensReviewsRequest(input *ListLensReviewsInput) (r } if input == nil { - input = &ListLensReviewsInput{} + input = &ListCheckDetailsInput{} } - output = &ListLensReviewsOutput{} + output = &ListCheckDetailsOutput{} req = c.newRequest(op, input, output) return } -// ListLensReviews API operation for AWS Well-Architected Tool. +// ListCheckDetails API operation for AWS Well-Architected Tool. // -// List lens reviews for a particular workload. +// List of Trusted Advisor check details by account related to the workload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListLensReviews for usage and error information. +// API operation ListCheckDetails for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - InternalServerException -// There is a problem with the Well-Architected Tool API service. -// // - ResourceNotFoundException // The requested resource was not found. // +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviews -func (c *WellArchitected) ListLensReviews(input *ListLensReviewsInput) (*ListLensReviewsOutput, error) { - req, out := c.ListLensReviewsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListCheckDetails +func (c *WellArchitected) ListCheckDetails(input *ListCheckDetailsInput) (*ListCheckDetailsOutput, error) { + req, out := c.ListCheckDetailsRequest(input) return out, req.Send() } -// ListLensReviewsWithContext is the same as ListLensReviews with the addition of +// ListCheckDetailsWithContext is the same as ListCheckDetails with the addition of // the ability to pass a context and additional request options. // -// See ListLensReviews for details on how to use this API operation. +// See ListCheckDetails for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListLensReviewsWithContext(ctx aws.Context, input *ListLensReviewsInput, opts ...request.Option) (*ListLensReviewsOutput, error) { - req, out := c.ListLensReviewsRequest(input) +func (c *WellArchitected) ListCheckDetailsWithContext(ctx aws.Context, input *ListCheckDetailsInput, opts ...request.Option) (*ListCheckDetailsOutput, error) { + req, out := c.ListCheckDetailsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListLensReviewsPages iterates over the pages of a ListLensReviews operation, +// ListCheckDetailsPages iterates over the pages of a ListCheckDetails operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListLensReviews method for more information on how to use this operation. +// See ListCheckDetails method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListLensReviews operation. +// // Example iterating over at most 3 pages of a ListCheckDetails operation. // pageNum := 0 -// err := client.ListLensReviewsPages(params, -// func(page *wellarchitected.ListLensReviewsOutput, lastPage bool) bool { +// err := client.ListCheckDetailsPages(params, +// func(page *wellarchitected.ListCheckDetailsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListLensReviewsPages(input *ListLensReviewsInput, fn func(*ListLensReviewsOutput, bool) bool) error { - return c.ListLensReviewsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListCheckDetailsPages(input *ListCheckDetailsInput, fn func(*ListCheckDetailsOutput, bool) bool) error { + return c.ListCheckDetailsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListLensReviewsPagesWithContext same as ListLensReviewsPages except +// ListCheckDetailsPagesWithContext same as ListCheckDetailsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListLensReviewsPagesWithContext(ctx aws.Context, input *ListLensReviewsInput, fn func(*ListLensReviewsOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListCheckDetailsPagesWithContext(ctx aws.Context, input *ListCheckDetailsInput, fn func(*ListCheckDetailsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListLensReviewsInput + var inCpy *ListCheckDetailsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListLensReviewsRequest(inCpy) + req, _ := c.ListCheckDetailsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -3667,7 +3925,7 @@ func (c *WellArchitected) ListLensReviewsPagesWithContext(ctx aws.Context, input } for p.Next() { - if !fn(p.Page().(*ListLensReviewsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListCheckDetailsOutput), !p.HasNextPage()) { break } } @@ -3675,36 +3933,36 @@ func (c *WellArchitected) ListLensReviewsPagesWithContext(ctx aws.Context, input return p.Err() } -const opListLensShares = "ListLensShares" +const opListCheckSummaries = "ListCheckSummaries" -// ListLensSharesRequest generates a "aws/request.Request" representing the -// client's request for the ListLensShares operation. The "output" return +// ListCheckSummariesRequest generates a "aws/request.Request" representing the +// client's request for the ListCheckSummaries operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListLensShares for more information on using the ListLensShares +// See ListCheckSummaries for more information on using the ListCheckSummaries // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListLensSharesRequest method. -// req, resp := client.ListLensSharesRequest(params) +// // Example sending a request using the ListCheckSummariesRequest method. +// req, resp := client.ListCheckSummariesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensShares -func (c *WellArchitected) ListLensSharesRequest(input *ListLensSharesInput) (req *request.Request, output *ListLensSharesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListCheckSummaries +func (c *WellArchitected) ListCheckSummariesRequest(input *ListCheckSummariesInput) (req *request.Request, output *ListCheckSummariesOutput) { op := &request.Operation{ - Name: opListLensShares, - HTTPMethod: "GET", - HTTPPath: "/lenses/{LensAlias}/shares", + Name: opListCheckSummaries, + HTTPMethod: "POST", + HTTPPath: "/workloads/{WorkloadId}/checkSummaries", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -3714,100 +3972,101 @@ func (c *WellArchitected) ListLensSharesRequest(input *ListLensSharesInput) (req } if input == nil { - input = &ListLensSharesInput{} + input = &ListCheckSummariesInput{} } - output = &ListLensSharesOutput{} + output = &ListCheckSummariesOutput{} req = c.newRequest(op, input, output) return } -// ListLensShares API operation for AWS Well-Architected Tool. +// ListCheckSummaries API operation for AWS Well-Architected Tool. // -// List the lens shares associated with the lens. +// List of Trusted Advisor checks summarized for all accounts related to the +// workload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListLensShares for usage and error information. +// API operation ListCheckSummaries for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - InternalServerException -// There is a problem with the Well-Architected Tool API service. -// // - ResourceNotFoundException // The requested resource was not found. // +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensShares -func (c *WellArchitected) ListLensShares(input *ListLensSharesInput) (*ListLensSharesOutput, error) { - req, out := c.ListLensSharesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListCheckSummaries +func (c *WellArchitected) ListCheckSummaries(input *ListCheckSummariesInput) (*ListCheckSummariesOutput, error) { + req, out := c.ListCheckSummariesRequest(input) return out, req.Send() } -// ListLensSharesWithContext is the same as ListLensShares with the addition of +// ListCheckSummariesWithContext is the same as ListCheckSummaries with the addition of // the ability to pass a context and additional request options. // -// See ListLensShares for details on how to use this API operation. +// See ListCheckSummaries for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListLensSharesWithContext(ctx aws.Context, input *ListLensSharesInput, opts ...request.Option) (*ListLensSharesOutput, error) { - req, out := c.ListLensSharesRequest(input) +func (c *WellArchitected) ListCheckSummariesWithContext(ctx aws.Context, input *ListCheckSummariesInput, opts ...request.Option) (*ListCheckSummariesOutput, error) { + req, out := c.ListCheckSummariesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListLensSharesPages iterates over the pages of a ListLensShares operation, +// ListCheckSummariesPages iterates over the pages of a ListCheckSummaries operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListLensShares method for more information on how to use this operation. +// See ListCheckSummaries method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListLensShares operation. +// // Example iterating over at most 3 pages of a ListCheckSummaries operation. // pageNum := 0 -// err := client.ListLensSharesPages(params, -// func(page *wellarchitected.ListLensSharesOutput, lastPage bool) bool { +// err := client.ListCheckSummariesPages(params, +// func(page *wellarchitected.ListCheckSummariesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListLensSharesPages(input *ListLensSharesInput, fn func(*ListLensSharesOutput, bool) bool) error { - return c.ListLensSharesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListCheckSummariesPages(input *ListCheckSummariesInput, fn func(*ListCheckSummariesOutput, bool) bool) error { + return c.ListCheckSummariesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListLensSharesPagesWithContext same as ListLensSharesPages except +// ListCheckSummariesPagesWithContext same as ListCheckSummariesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListLensSharesPagesWithContext(ctx aws.Context, input *ListLensSharesInput, fn func(*ListLensSharesOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListCheckSummariesPagesWithContext(ctx aws.Context, input *ListCheckSummariesInput, fn func(*ListCheckSummariesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListLensSharesInput + var inCpy *ListCheckSummariesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListLensSharesRequest(inCpy) + req, _ := c.ListCheckSummariesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -3815,7 +4074,7 @@ func (c *WellArchitected) ListLensSharesPagesWithContext(ctx aws.Context, input } for p.Next() { - if !fn(p.Page().(*ListLensSharesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListCheckSummariesOutput), !p.HasNextPage()) { break } } @@ -3823,36 +4082,36 @@ func (c *WellArchitected) ListLensSharesPagesWithContext(ctx aws.Context, input return p.Err() } -const opListLenses = "ListLenses" +const opListLensReviewImprovements = "ListLensReviewImprovements" -// ListLensesRequest generates a "aws/request.Request" representing the -// client's request for the ListLenses operation. The "output" return +// ListLensReviewImprovementsRequest generates a "aws/request.Request" representing the +// client's request for the ListLensReviewImprovements operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListLenses for more information on using the ListLenses +// See ListLensReviewImprovements for more information on using the ListLensReviewImprovements // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListLensesRequest method. -// req, resp := client.ListLensesRequest(params) +// // Example sending a request using the ListLensReviewImprovementsRequest method. +// req, resp := client.ListLensReviewImprovementsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLenses -func (c *WellArchitected) ListLensesRequest(input *ListLensesInput) (req *request.Request, output *ListLensesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviewImprovements +func (c *WellArchitected) ListLensReviewImprovementsRequest(input *ListLensReviewImprovementsInput) (req *request.Request, output *ListLensReviewImprovementsOutput) { op := &request.Operation{ - Name: opListLenses, + Name: opListLensReviewImprovements, HTTPMethod: "GET", - HTTPPath: "/lenses", + HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}/improvements", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -3862,24 +4121,24 @@ func (c *WellArchitected) ListLensesRequest(input *ListLensesInput) (req *reques } if input == nil { - input = &ListLensesInput{} + input = &ListLensReviewImprovementsInput{} } - output = &ListLensesOutput{} + output = &ListLensReviewImprovementsOutput{} req = c.newRequest(op, input, output) return } -// ListLenses API operation for AWS Well-Architected Tool. +// ListLensReviewImprovements API operation for AWS Well-Architected Tool. // -// List the available lenses. +// List lens review improvements. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListLenses for usage and error information. +// API operation ListLensReviewImprovements for usage and error information. // // Returned Error Types: // @@ -3889,70 +4148,73 @@ func (c *WellArchitected) ListLensesRequest(input *ListLensesInput) (req *reques // - InternalServerException // There is a problem with the Well-Architected Tool API service. // +// - ResourceNotFoundException +// The requested resource was not found. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLenses -func (c *WellArchitected) ListLenses(input *ListLensesInput) (*ListLensesOutput, error) { - req, out := c.ListLensesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviewImprovements +func (c *WellArchitected) ListLensReviewImprovements(input *ListLensReviewImprovementsInput) (*ListLensReviewImprovementsOutput, error) { + req, out := c.ListLensReviewImprovementsRequest(input) return out, req.Send() } -// ListLensesWithContext is the same as ListLenses with the addition of +// ListLensReviewImprovementsWithContext is the same as ListLensReviewImprovements with the addition of // the ability to pass a context and additional request options. // -// See ListLenses for details on how to use this API operation. +// See ListLensReviewImprovements for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListLensesWithContext(ctx aws.Context, input *ListLensesInput, opts ...request.Option) (*ListLensesOutput, error) { - req, out := c.ListLensesRequest(input) +func (c *WellArchitected) ListLensReviewImprovementsWithContext(ctx aws.Context, input *ListLensReviewImprovementsInput, opts ...request.Option) (*ListLensReviewImprovementsOutput, error) { + req, out := c.ListLensReviewImprovementsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListLensesPages iterates over the pages of a ListLenses operation, +// ListLensReviewImprovementsPages iterates over the pages of a ListLensReviewImprovements operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListLenses method for more information on how to use this operation. +// See ListLensReviewImprovements method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListLenses operation. +// // Example iterating over at most 3 pages of a ListLensReviewImprovements operation. // pageNum := 0 -// err := client.ListLensesPages(params, -// func(page *wellarchitected.ListLensesOutput, lastPage bool) bool { +// err := client.ListLensReviewImprovementsPages(params, +// func(page *wellarchitected.ListLensReviewImprovementsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListLensesPages(input *ListLensesInput, fn func(*ListLensesOutput, bool) bool) error { - return c.ListLensesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListLensReviewImprovementsPages(input *ListLensReviewImprovementsInput, fn func(*ListLensReviewImprovementsOutput, bool) bool) error { + return c.ListLensReviewImprovementsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListLensesPagesWithContext same as ListLensesPages except +// ListLensReviewImprovementsPagesWithContext same as ListLensReviewImprovementsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListLensesPagesWithContext(ctx aws.Context, input *ListLensesInput, fn func(*ListLensesOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListLensReviewImprovementsPagesWithContext(ctx aws.Context, input *ListLensReviewImprovementsInput, fn func(*ListLensReviewImprovementsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListLensesInput + var inCpy *ListLensReviewImprovementsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListLensesRequest(inCpy) + req, _ := c.ListLensReviewImprovementsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -3960,7 +4222,7 @@ func (c *WellArchitected) ListLensesPagesWithContext(ctx aws.Context, input *Lis } for p.Next() { - if !fn(p.Page().(*ListLensesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListLensReviewImprovementsOutput), !p.HasNextPage()) { break } } @@ -3968,36 +4230,36 @@ func (c *WellArchitected) ListLensesPagesWithContext(ctx aws.Context, input *Lis return p.Err() } -const opListMilestones = "ListMilestones" +const opListLensReviews = "ListLensReviews" -// ListMilestonesRequest generates a "aws/request.Request" representing the -// client's request for the ListMilestones operation. The "output" return +// ListLensReviewsRequest generates a "aws/request.Request" representing the +// client's request for the ListLensReviews operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListMilestones for more information on using the ListMilestones +// See ListLensReviews for more information on using the ListLensReviews // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListMilestonesRequest method. -// req, resp := client.ListMilestonesRequest(params) +// // Example sending a request using the ListLensReviewsRequest method. +// req, resp := client.ListLensReviewsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListMilestones -func (c *WellArchitected) ListMilestonesRequest(input *ListMilestonesInput) (req *request.Request, output *ListMilestonesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviews +func (c *WellArchitected) ListLensReviewsRequest(input *ListLensReviewsInput) (req *request.Request, output *ListLensReviewsOutput) { op := &request.Operation{ - Name: opListMilestones, - HTTPMethod: "POST", - HTTPPath: "/workloads/{WorkloadId}/milestonesSummaries", + Name: opListLensReviews, + HTTPMethod: "GET", + HTTPPath: "/workloads/{WorkloadId}/lensReviews", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4007,24 +4269,24 @@ func (c *WellArchitected) ListMilestonesRequest(input *ListMilestonesInput) (req } if input == nil { - input = &ListMilestonesInput{} + input = &ListLensReviewsInput{} } - output = &ListMilestonesOutput{} + output = &ListLensReviewsOutput{} req = c.newRequest(op, input, output) return } -// ListMilestones API operation for AWS Well-Architected Tool. +// ListLensReviews API operation for AWS Well-Architected Tool. // -// List all milestones for an existing workload. +// List lens reviews for a particular workload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListMilestones for usage and error information. +// API operation ListLensReviews for usage and error information. // // Returned Error Types: // @@ -4043,64 +4305,64 @@ func (c *WellArchitected) ListMilestonesRequest(input *ListMilestonesInput) (req // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListMilestones -func (c *WellArchitected) ListMilestones(input *ListMilestonesInput) (*ListMilestonesOutput, error) { - req, out := c.ListMilestonesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviews +func (c *WellArchitected) ListLensReviews(input *ListLensReviewsInput) (*ListLensReviewsOutput, error) { + req, out := c.ListLensReviewsRequest(input) return out, req.Send() } -// ListMilestonesWithContext is the same as ListMilestones with the addition of +// ListLensReviewsWithContext is the same as ListLensReviews with the addition of // the ability to pass a context and additional request options. // -// See ListMilestones for details on how to use this API operation. +// See ListLensReviews for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListMilestonesWithContext(ctx aws.Context, input *ListMilestonesInput, opts ...request.Option) (*ListMilestonesOutput, error) { - req, out := c.ListMilestonesRequest(input) +func (c *WellArchitected) ListLensReviewsWithContext(ctx aws.Context, input *ListLensReviewsInput, opts ...request.Option) (*ListLensReviewsOutput, error) { + req, out := c.ListLensReviewsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListMilestonesPages iterates over the pages of a ListMilestones operation, +// ListLensReviewsPages iterates over the pages of a ListLensReviews operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListMilestones method for more information on how to use this operation. +// See ListLensReviews method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListMilestones operation. +// // Example iterating over at most 3 pages of a ListLensReviews operation. // pageNum := 0 -// err := client.ListMilestonesPages(params, -// func(page *wellarchitected.ListMilestonesOutput, lastPage bool) bool { +// err := client.ListLensReviewsPages(params, +// func(page *wellarchitected.ListLensReviewsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListMilestonesPages(input *ListMilestonesInput, fn func(*ListMilestonesOutput, bool) bool) error { - return c.ListMilestonesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListLensReviewsPages(input *ListLensReviewsInput, fn func(*ListLensReviewsOutput, bool) bool) error { + return c.ListLensReviewsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListMilestonesPagesWithContext same as ListMilestonesPages except +// ListLensReviewsPagesWithContext same as ListLensReviewsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListMilestonesPagesWithContext(ctx aws.Context, input *ListMilestonesInput, fn func(*ListMilestonesOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListLensReviewsPagesWithContext(ctx aws.Context, input *ListLensReviewsInput, fn func(*ListLensReviewsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListMilestonesInput + var inCpy *ListLensReviewsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListMilestonesRequest(inCpy) + req, _ := c.ListLensReviewsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4108,7 +4370,7 @@ func (c *WellArchitected) ListMilestonesPagesWithContext(ctx aws.Context, input } for p.Next() { - if !fn(p.Page().(*ListMilestonesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListLensReviewsOutput), !p.HasNextPage()) { break } } @@ -4116,36 +4378,36 @@ func (c *WellArchitected) ListMilestonesPagesWithContext(ctx aws.Context, input return p.Err() } -const opListNotifications = "ListNotifications" +const opListLensShares = "ListLensShares" -// ListNotificationsRequest generates a "aws/request.Request" representing the -// client's request for the ListNotifications operation. The "output" return +// ListLensSharesRequest generates a "aws/request.Request" representing the +// client's request for the ListLensShares operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListNotifications for more information on using the ListNotifications +// See ListLensShares for more information on using the ListLensShares // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListNotificationsRequest method. -// req, resp := client.ListNotificationsRequest(params) +// // Example sending a request using the ListLensSharesRequest method. +// req, resp := client.ListLensSharesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListNotifications -func (c *WellArchitected) ListNotificationsRequest(input *ListNotificationsInput) (req *request.Request, output *ListNotificationsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensShares +func (c *WellArchitected) ListLensSharesRequest(input *ListLensSharesInput) (req *request.Request, output *ListLensSharesOutput) { op := &request.Operation{ - Name: opListNotifications, - HTTPMethod: "POST", - HTTPPath: "/notifications", + Name: opListLensShares, + HTTPMethod: "GET", + HTTPPath: "/lenses/{LensAlias}/shares", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4155,24 +4417,24 @@ func (c *WellArchitected) ListNotificationsRequest(input *ListNotificationsInput } if input == nil { - input = &ListNotificationsInput{} + input = &ListLensSharesInput{} } - output = &ListNotificationsOutput{} + output = &ListLensSharesOutput{} req = c.newRequest(op, input, output) return } -// ListNotifications API operation for AWS Well-Architected Tool. +// ListLensShares API operation for AWS Well-Architected Tool. // -// List lens notifications. +// List the lens shares associated with the lens. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListNotifications for usage and error information. +// API operation ListLensShares for usage and error information. // // Returned Error Types: // @@ -4182,70 +4444,73 @@ func (c *WellArchitected) ListNotificationsRequest(input *ListNotificationsInput // - InternalServerException // There is a problem with the Well-Architected Tool API service. // +// - ResourceNotFoundException +// The requested resource was not found. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListNotifications -func (c *WellArchitected) ListNotifications(input *ListNotificationsInput) (*ListNotificationsOutput, error) { - req, out := c.ListNotificationsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensShares +func (c *WellArchitected) ListLensShares(input *ListLensSharesInput) (*ListLensSharesOutput, error) { + req, out := c.ListLensSharesRequest(input) return out, req.Send() } -// ListNotificationsWithContext is the same as ListNotifications with the addition of +// ListLensSharesWithContext is the same as ListLensShares with the addition of // the ability to pass a context and additional request options. // -// See ListNotifications for details on how to use this API operation. +// See ListLensShares for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListNotificationsWithContext(ctx aws.Context, input *ListNotificationsInput, opts ...request.Option) (*ListNotificationsOutput, error) { - req, out := c.ListNotificationsRequest(input) +func (c *WellArchitected) ListLensSharesWithContext(ctx aws.Context, input *ListLensSharesInput, opts ...request.Option) (*ListLensSharesOutput, error) { + req, out := c.ListLensSharesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListNotificationsPages iterates over the pages of a ListNotifications operation, +// ListLensSharesPages iterates over the pages of a ListLensShares operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListNotifications method for more information on how to use this operation. +// See ListLensShares method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListNotifications operation. +// // Example iterating over at most 3 pages of a ListLensShares operation. // pageNum := 0 -// err := client.ListNotificationsPages(params, -// func(page *wellarchitected.ListNotificationsOutput, lastPage bool) bool { +// err := client.ListLensSharesPages(params, +// func(page *wellarchitected.ListLensSharesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListNotificationsPages(input *ListNotificationsInput, fn func(*ListNotificationsOutput, bool) bool) error { - return c.ListNotificationsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListLensSharesPages(input *ListLensSharesInput, fn func(*ListLensSharesOutput, bool) bool) error { + return c.ListLensSharesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListNotificationsPagesWithContext same as ListNotificationsPages except +// ListLensSharesPagesWithContext same as ListLensSharesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListNotificationsPagesWithContext(ctx aws.Context, input *ListNotificationsInput, fn func(*ListNotificationsOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListLensSharesPagesWithContext(ctx aws.Context, input *ListLensSharesInput, fn func(*ListLensSharesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListNotificationsInput + var inCpy *ListLensSharesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListNotificationsRequest(inCpy) + req, _ := c.ListLensSharesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4253,7 +4518,7 @@ func (c *WellArchitected) ListNotificationsPagesWithContext(ctx aws.Context, inp } for p.Next() { - if !fn(p.Page().(*ListNotificationsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListLensSharesOutput), !p.HasNextPage()) { break } } @@ -4261,36 +4526,36 @@ func (c *WellArchitected) ListNotificationsPagesWithContext(ctx aws.Context, inp return p.Err() } -const opListProfileNotifications = "ListProfileNotifications" +const opListLenses = "ListLenses" -// ListProfileNotificationsRequest generates a "aws/request.Request" representing the -// client's request for the ListProfileNotifications operation. The "output" return +// ListLensesRequest generates a "aws/request.Request" representing the +// client's request for the ListLenses operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListProfileNotifications for more information on using the ListProfileNotifications +// See ListLenses for more information on using the ListLenses // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListProfileNotificationsRequest method. -// req, resp := client.ListProfileNotificationsRequest(params) +// // Example sending a request using the ListLensesRequest method. +// req, resp := client.ListLensesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileNotifications -func (c *WellArchitected) ListProfileNotificationsRequest(input *ListProfileNotificationsInput) (req *request.Request, output *ListProfileNotificationsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLenses +func (c *WellArchitected) ListLensesRequest(input *ListLensesInput) (req *request.Request, output *ListLensesOutput) { op := &request.Operation{ - Name: opListProfileNotifications, + Name: opListLenses, HTTPMethod: "GET", - HTTPPath: "/profileNotifications/", + HTTPPath: "/lenses", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4300,24 +4565,24 @@ func (c *WellArchitected) ListProfileNotificationsRequest(input *ListProfileNoti } if input == nil { - input = &ListProfileNotificationsInput{} + input = &ListLensesInput{} } - output = &ListProfileNotificationsOutput{} + output = &ListLensesOutput{} req = c.newRequest(op, input, output) return } -// ListProfileNotifications API operation for AWS Well-Architected Tool. +// ListLenses API operation for AWS Well-Architected Tool. // -// List profile notifications. +// List the available lenses. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListProfileNotifications for usage and error information. +// API operation ListLenses for usage and error information. // // Returned Error Types: // @@ -4333,64 +4598,64 @@ func (c *WellArchitected) ListProfileNotificationsRequest(input *ListProfileNoti // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileNotifications -func (c *WellArchitected) ListProfileNotifications(input *ListProfileNotificationsInput) (*ListProfileNotificationsOutput, error) { - req, out := c.ListProfileNotificationsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLenses +func (c *WellArchitected) ListLenses(input *ListLensesInput) (*ListLensesOutput, error) { + req, out := c.ListLensesRequest(input) return out, req.Send() } -// ListProfileNotificationsWithContext is the same as ListProfileNotifications with the addition of +// ListLensesWithContext is the same as ListLenses with the addition of // the ability to pass a context and additional request options. // -// See ListProfileNotifications for details on how to use this API operation. +// See ListLenses for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListProfileNotificationsWithContext(ctx aws.Context, input *ListProfileNotificationsInput, opts ...request.Option) (*ListProfileNotificationsOutput, error) { - req, out := c.ListProfileNotificationsRequest(input) +func (c *WellArchitected) ListLensesWithContext(ctx aws.Context, input *ListLensesInput, opts ...request.Option) (*ListLensesOutput, error) { + req, out := c.ListLensesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListProfileNotificationsPages iterates over the pages of a ListProfileNotifications operation, +// ListLensesPages iterates over the pages of a ListLenses operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListProfileNotifications method for more information on how to use this operation. +// See ListLenses method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListProfileNotifications operation. +// // Example iterating over at most 3 pages of a ListLenses operation. // pageNum := 0 -// err := client.ListProfileNotificationsPages(params, -// func(page *wellarchitected.ListProfileNotificationsOutput, lastPage bool) bool { +// err := client.ListLensesPages(params, +// func(page *wellarchitected.ListLensesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListProfileNotificationsPages(input *ListProfileNotificationsInput, fn func(*ListProfileNotificationsOutput, bool) bool) error { - return c.ListProfileNotificationsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListLensesPages(input *ListLensesInput, fn func(*ListLensesOutput, bool) bool) error { + return c.ListLensesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListProfileNotificationsPagesWithContext same as ListProfileNotificationsPages except +// ListLensesPagesWithContext same as ListLensesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListProfileNotificationsPagesWithContext(ctx aws.Context, input *ListProfileNotificationsInput, fn func(*ListProfileNotificationsOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListLensesPagesWithContext(ctx aws.Context, input *ListLensesInput, fn func(*ListLensesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListProfileNotificationsInput + var inCpy *ListLensesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListProfileNotificationsRequest(inCpy) + req, _ := c.ListLensesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4398,7 +4663,7 @@ func (c *WellArchitected) ListProfileNotificationsPagesWithContext(ctx aws.Conte } for p.Next() { - if !fn(p.Page().(*ListProfileNotificationsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListLensesOutput), !p.HasNextPage()) { break } } @@ -4406,36 +4671,36 @@ func (c *WellArchitected) ListProfileNotificationsPagesWithContext(ctx aws.Conte return p.Err() } -const opListProfileShares = "ListProfileShares" +const opListMilestones = "ListMilestones" -// ListProfileSharesRequest generates a "aws/request.Request" representing the -// client's request for the ListProfileShares operation. The "output" return +// ListMilestonesRequest generates a "aws/request.Request" representing the +// client's request for the ListMilestones operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListProfileShares for more information on using the ListProfileShares +// See ListMilestones for more information on using the ListMilestones // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListProfileSharesRequest method. -// req, resp := client.ListProfileSharesRequest(params) +// // Example sending a request using the ListMilestonesRequest method. +// req, resp := client.ListMilestonesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileShares -func (c *WellArchitected) ListProfileSharesRequest(input *ListProfileSharesInput) (req *request.Request, output *ListProfileSharesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListMilestones +func (c *WellArchitected) ListMilestonesRequest(input *ListMilestonesInput) (req *request.Request, output *ListMilestonesOutput) { op := &request.Operation{ - Name: opListProfileShares, - HTTPMethod: "GET", - HTTPPath: "/profiles/{ProfileArn}/shares", + Name: opListMilestones, + HTTPMethod: "POST", + HTTPPath: "/workloads/{WorkloadId}/milestonesSummaries", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4445,24 +4710,24 @@ func (c *WellArchitected) ListProfileSharesRequest(input *ListProfileSharesInput } if input == nil { - input = &ListProfileSharesInput{} + input = &ListMilestonesInput{} } - output = &ListProfileSharesOutput{} + output = &ListMilestonesOutput{} req = c.newRequest(op, input, output) return } -// ListProfileShares API operation for AWS Well-Architected Tool. +// ListMilestones API operation for AWS Well-Architected Tool. // -// List profile shares. +// List all milestones for an existing workload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListProfileShares for usage and error information. +// API operation ListMilestones for usage and error information. // // Returned Error Types: // @@ -4481,64 +4746,64 @@ func (c *WellArchitected) ListProfileSharesRequest(input *ListProfileSharesInput // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileShares -func (c *WellArchitected) ListProfileShares(input *ListProfileSharesInput) (*ListProfileSharesOutput, error) { - req, out := c.ListProfileSharesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListMilestones +func (c *WellArchitected) ListMilestones(input *ListMilestonesInput) (*ListMilestonesOutput, error) { + req, out := c.ListMilestonesRequest(input) return out, req.Send() } -// ListProfileSharesWithContext is the same as ListProfileShares with the addition of +// ListMilestonesWithContext is the same as ListMilestones with the addition of // the ability to pass a context and additional request options. // -// See ListProfileShares for details on how to use this API operation. +// See ListMilestones for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListProfileSharesWithContext(ctx aws.Context, input *ListProfileSharesInput, opts ...request.Option) (*ListProfileSharesOutput, error) { - req, out := c.ListProfileSharesRequest(input) +func (c *WellArchitected) ListMilestonesWithContext(ctx aws.Context, input *ListMilestonesInput, opts ...request.Option) (*ListMilestonesOutput, error) { + req, out := c.ListMilestonesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListProfileSharesPages iterates over the pages of a ListProfileShares operation, +// ListMilestonesPages iterates over the pages of a ListMilestones operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListProfileShares method for more information on how to use this operation. +// See ListMilestones method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListProfileShares operation. +// // Example iterating over at most 3 pages of a ListMilestones operation. // pageNum := 0 -// err := client.ListProfileSharesPages(params, -// func(page *wellarchitected.ListProfileSharesOutput, lastPage bool) bool { +// err := client.ListMilestonesPages(params, +// func(page *wellarchitected.ListMilestonesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListProfileSharesPages(input *ListProfileSharesInput, fn func(*ListProfileSharesOutput, bool) bool) error { - return c.ListProfileSharesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListMilestonesPages(input *ListMilestonesInput, fn func(*ListMilestonesOutput, bool) bool) error { + return c.ListMilestonesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListProfileSharesPagesWithContext same as ListProfileSharesPages except +// ListMilestonesPagesWithContext same as ListMilestonesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListProfileSharesPagesWithContext(ctx aws.Context, input *ListProfileSharesInput, fn func(*ListProfileSharesOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListMilestonesPagesWithContext(ctx aws.Context, input *ListMilestonesInput, fn func(*ListMilestonesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListProfileSharesInput + var inCpy *ListMilestonesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListProfileSharesRequest(inCpy) + req, _ := c.ListMilestonesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4546,7 +4811,7 @@ func (c *WellArchitected) ListProfileSharesPagesWithContext(ctx aws.Context, inp } for p.Next() { - if !fn(p.Page().(*ListProfileSharesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListMilestonesOutput), !p.HasNextPage()) { break } } @@ -4554,36 +4819,36 @@ func (c *WellArchitected) ListProfileSharesPagesWithContext(ctx aws.Context, inp return p.Err() } -const opListProfiles = "ListProfiles" +const opListNotifications = "ListNotifications" -// ListProfilesRequest generates a "aws/request.Request" representing the -// client's request for the ListProfiles operation. The "output" return +// ListNotificationsRequest generates a "aws/request.Request" representing the +// client's request for the ListNotifications operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListProfiles for more information on using the ListProfiles +// See ListNotifications for more information on using the ListNotifications // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListProfilesRequest method. -// req, resp := client.ListProfilesRequest(params) +// // Example sending a request using the ListNotificationsRequest method. +// req, resp := client.ListNotificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfiles -func (c *WellArchitected) ListProfilesRequest(input *ListProfilesInput) (req *request.Request, output *ListProfilesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListNotifications +func (c *WellArchitected) ListNotificationsRequest(input *ListNotificationsInput) (req *request.Request, output *ListNotificationsOutput) { op := &request.Operation{ - Name: opListProfiles, - HTTPMethod: "GET", - HTTPPath: "/profileSummaries", + Name: opListNotifications, + HTTPMethod: "POST", + HTTPPath: "/notifications", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4593,24 +4858,24 @@ func (c *WellArchitected) ListProfilesRequest(input *ListProfilesInput) (req *re } if input == nil { - input = &ListProfilesInput{} + input = &ListNotificationsInput{} } - output = &ListProfilesOutput{} + output = &ListNotificationsOutput{} req = c.newRequest(op, input, output) return } -// ListProfiles API operation for AWS Well-Architected Tool. +// ListNotifications API operation for AWS Well-Architected Tool. // -// List profiles. +// List lens notifications. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListProfiles for usage and error information. +// API operation ListNotifications for usage and error information. // // Returned Error Types: // @@ -4626,64 +4891,64 @@ func (c *WellArchitected) ListProfilesRequest(input *ListProfilesInput) (req *re // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfiles -func (c *WellArchitected) ListProfiles(input *ListProfilesInput) (*ListProfilesOutput, error) { - req, out := c.ListProfilesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListNotifications +func (c *WellArchitected) ListNotifications(input *ListNotificationsInput) (*ListNotificationsOutput, error) { + req, out := c.ListNotificationsRequest(input) return out, req.Send() } -// ListProfilesWithContext is the same as ListProfiles with the addition of +// ListNotificationsWithContext is the same as ListNotifications with the addition of // the ability to pass a context and additional request options. // -// See ListProfiles for details on how to use this API operation. +// See ListNotifications for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListProfilesWithContext(ctx aws.Context, input *ListProfilesInput, opts ...request.Option) (*ListProfilesOutput, error) { - req, out := c.ListProfilesRequest(input) +func (c *WellArchitected) ListNotificationsWithContext(ctx aws.Context, input *ListNotificationsInput, opts ...request.Option) (*ListNotificationsOutput, error) { + req, out := c.ListNotificationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListProfilesPages iterates over the pages of a ListProfiles operation, +// ListNotificationsPages iterates over the pages of a ListNotifications operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListProfiles method for more information on how to use this operation. +// See ListNotifications method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListProfiles operation. +// // Example iterating over at most 3 pages of a ListNotifications operation. // pageNum := 0 -// err := client.ListProfilesPages(params, -// func(page *wellarchitected.ListProfilesOutput, lastPage bool) bool { +// err := client.ListNotificationsPages(params, +// func(page *wellarchitected.ListNotificationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListProfilesPages(input *ListProfilesInput, fn func(*ListProfilesOutput, bool) bool) error { - return c.ListProfilesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListNotificationsPages(input *ListNotificationsInput, fn func(*ListNotificationsOutput, bool) bool) error { + return c.ListNotificationsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListProfilesPagesWithContext same as ListProfilesPages except +// ListNotificationsPagesWithContext same as ListNotificationsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListProfilesPagesWithContext(ctx aws.Context, input *ListProfilesInput, fn func(*ListProfilesOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListNotificationsPagesWithContext(ctx aws.Context, input *ListNotificationsInput, fn func(*ListNotificationsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListProfilesInput + var inCpy *ListNotificationsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListProfilesRequest(inCpy) + req, _ := c.ListNotificationsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4691,7 +4956,7 @@ func (c *WellArchitected) ListProfilesPagesWithContext(ctx aws.Context, input *L } for p.Next() { - if !fn(p.Page().(*ListProfilesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListNotificationsOutput), !p.HasNextPage()) { break } } @@ -4699,36 +4964,36 @@ func (c *WellArchitected) ListProfilesPagesWithContext(ctx aws.Context, input *L return p.Err() } -const opListShareInvitations = "ListShareInvitations" +const opListProfileNotifications = "ListProfileNotifications" -// ListShareInvitationsRequest generates a "aws/request.Request" representing the -// client's request for the ListShareInvitations operation. The "output" return +// ListProfileNotificationsRequest generates a "aws/request.Request" representing the +// client's request for the ListProfileNotifications operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListShareInvitations for more information on using the ListShareInvitations +// See ListProfileNotifications for more information on using the ListProfileNotifications // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListShareInvitationsRequest method. -// req, resp := client.ListShareInvitationsRequest(params) +// // Example sending a request using the ListProfileNotificationsRequest method. +// req, resp := client.ListProfileNotificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListShareInvitations -func (c *WellArchitected) ListShareInvitationsRequest(input *ListShareInvitationsInput) (req *request.Request, output *ListShareInvitationsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileNotifications +func (c *WellArchitected) ListProfileNotificationsRequest(input *ListProfileNotificationsInput) (req *request.Request, output *ListProfileNotificationsOutput) { op := &request.Operation{ - Name: opListShareInvitations, + Name: opListProfileNotifications, HTTPMethod: "GET", - HTTPPath: "/shareInvitations", + HTTPPath: "/profileNotifications/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4738,24 +5003,24 @@ func (c *WellArchitected) ListShareInvitationsRequest(input *ListShareInvitation } if input == nil { - input = &ListShareInvitationsInput{} + input = &ListProfileNotificationsInput{} } - output = &ListShareInvitationsOutput{} + output = &ListProfileNotificationsOutput{} req = c.newRequest(op, input, output) return } -// ListShareInvitations API operation for AWS Well-Architected Tool. +// ListProfileNotifications API operation for AWS Well-Architected Tool. // -// List the workload invitations. +// List profile notifications. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListShareInvitations for usage and error information. +// API operation ListProfileNotifications for usage and error information. // // Returned Error Types: // @@ -4771,64 +5036,64 @@ func (c *WellArchitected) ListShareInvitationsRequest(input *ListShareInvitation // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListShareInvitations -func (c *WellArchitected) ListShareInvitations(input *ListShareInvitationsInput) (*ListShareInvitationsOutput, error) { - req, out := c.ListShareInvitationsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileNotifications +func (c *WellArchitected) ListProfileNotifications(input *ListProfileNotificationsInput) (*ListProfileNotificationsOutput, error) { + req, out := c.ListProfileNotificationsRequest(input) return out, req.Send() } -// ListShareInvitationsWithContext is the same as ListShareInvitations with the addition of +// ListProfileNotificationsWithContext is the same as ListProfileNotifications with the addition of // the ability to pass a context and additional request options. // -// See ListShareInvitations for details on how to use this API operation. +// See ListProfileNotifications for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListShareInvitationsWithContext(ctx aws.Context, input *ListShareInvitationsInput, opts ...request.Option) (*ListShareInvitationsOutput, error) { - req, out := c.ListShareInvitationsRequest(input) +func (c *WellArchitected) ListProfileNotificationsWithContext(ctx aws.Context, input *ListProfileNotificationsInput, opts ...request.Option) (*ListProfileNotificationsOutput, error) { + req, out := c.ListProfileNotificationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListShareInvitationsPages iterates over the pages of a ListShareInvitations operation, +// ListProfileNotificationsPages iterates over the pages of a ListProfileNotifications operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListShareInvitations method for more information on how to use this operation. +// See ListProfileNotifications method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListShareInvitations operation. +// // Example iterating over at most 3 pages of a ListProfileNotifications operation. // pageNum := 0 -// err := client.ListShareInvitationsPages(params, -// func(page *wellarchitected.ListShareInvitationsOutput, lastPage bool) bool { +// err := client.ListProfileNotificationsPages(params, +// func(page *wellarchitected.ListProfileNotificationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListShareInvitationsPages(input *ListShareInvitationsInput, fn func(*ListShareInvitationsOutput, bool) bool) error { - return c.ListShareInvitationsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListProfileNotificationsPages(input *ListProfileNotificationsInput, fn func(*ListProfileNotificationsOutput, bool) bool) error { + return c.ListProfileNotificationsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListShareInvitationsPagesWithContext same as ListShareInvitationsPages except +// ListProfileNotificationsPagesWithContext same as ListProfileNotificationsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListShareInvitationsPagesWithContext(ctx aws.Context, input *ListShareInvitationsInput, fn func(*ListShareInvitationsOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListProfileNotificationsPagesWithContext(ctx aws.Context, input *ListProfileNotificationsInput, fn func(*ListProfileNotificationsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListShareInvitationsInput + var inCpy *ListProfileNotificationsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListShareInvitationsRequest(inCpy) + req, _ := c.ListProfileNotificationsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4836,7 +5101,7 @@ func (c *WellArchitected) ListShareInvitationsPagesWithContext(ctx aws.Context, } for p.Next() { - if !fn(p.Page().(*ListShareInvitationsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListProfileNotificationsOutput), !p.HasNextPage()) { break } } @@ -4844,121 +5109,184 @@ func (c *WellArchitected) ListShareInvitationsPagesWithContext(ctx aws.Context, return p.Err() } -const opListTagsForResource = "ListTagsForResource" +const opListProfileShares = "ListProfileShares" -// ListTagsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListTagsForResource operation. The "output" return +// ListProfileSharesRequest generates a "aws/request.Request" representing the +// client's request for the ListProfileShares operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListTagsForResource for more information on using the ListTagsForResource +// See ListProfileShares for more information on using the ListProfileShares // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListTagsForResourceRequest method. -// req, resp := client.ListTagsForResourceRequest(params) +// // Example sending a request using the ListProfileSharesRequest method. +// req, resp := client.ListProfileSharesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListTagsForResource -func (c *WellArchitected) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileShares +func (c *WellArchitected) ListProfileSharesRequest(input *ListProfileSharesInput) (req *request.Request, output *ListProfileSharesOutput) { op := &request.Operation{ - Name: opListTagsForResource, + Name: opListProfileShares, HTTPMethod: "GET", - HTTPPath: "/tags/{WorkloadArn}", + HTTPPath: "/profiles/{ProfileArn}/shares", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &ListTagsForResourceInput{} + input = &ListProfileSharesInput{} } - output = &ListTagsForResourceOutput{} + output = &ListProfileSharesOutput{} req = c.newRequest(op, input, output) return } -// ListTagsForResource API operation for AWS Well-Architected Tool. -// -// List the tags for a resource. +// ListProfileShares API operation for AWS Well-Architected Tool. // -// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a -// profile ARN. +// List profile shares. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListTagsForResource for usage and error information. +// API operation ListProfileShares for usage and error information. // // Returned Error Types: // +// - ValidationException +// The user input is not valid. +// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // // - ResourceNotFoundException // The requested resource was not found. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListTagsForResource -func (c *WellArchitected) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileShares +func (c *WellArchitected) ListProfileShares(input *ListProfileSharesInput) (*ListProfileSharesOutput, error) { + req, out := c.ListProfileSharesRequest(input) return out, req.Send() } -// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// ListProfileSharesWithContext is the same as ListProfileShares with the addition of // the ability to pass a context and additional request options. // -// See ListTagsForResource for details on how to use this API operation. +// See ListProfileShares for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) +func (c *WellArchitected) ListProfileSharesWithContext(ctx aws.Context, input *ListProfileSharesInput, opts ...request.Option) (*ListProfileSharesOutput, error) { + req, out := c.ListProfileSharesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListWorkloadShares = "ListWorkloadShares" +// ListProfileSharesPages iterates over the pages of a ListProfileShares operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListProfileShares method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListProfileShares operation. +// pageNum := 0 +// err := client.ListProfileSharesPages(params, +// func(page *wellarchitected.ListProfileSharesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListProfileSharesPages(input *ListProfileSharesInput, fn func(*ListProfileSharesOutput, bool) bool) error { + return c.ListProfileSharesPagesWithContext(aws.BackgroundContext(), input, fn) +} -// ListWorkloadSharesRequest generates a "aws/request.Request" representing the -// client's request for the ListWorkloadShares operation. The "output" return +// ListProfileSharesPagesWithContext same as ListProfileSharesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) ListProfileSharesPagesWithContext(ctx aws.Context, input *ListProfileSharesInput, fn func(*ListProfileSharesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListProfileSharesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListProfileSharesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListProfileSharesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListProfiles = "ListProfiles" + +// ListProfilesRequest generates a "aws/request.Request" representing the +// client's request for the ListProfiles operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListWorkloadShares for more information on using the ListWorkloadShares +// See ListProfiles for more information on using the ListProfiles // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListWorkloadSharesRequest method. -// req, resp := client.ListWorkloadSharesRequest(params) +// // Example sending a request using the ListProfilesRequest method. +// req, resp := client.ListProfilesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloadShares -func (c *WellArchitected) ListWorkloadSharesRequest(input *ListWorkloadSharesInput) (req *request.Request, output *ListWorkloadSharesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfiles +func (c *WellArchitected) ListProfilesRequest(input *ListProfilesInput) (req *request.Request, output *ListProfilesOutput) { op := &request.Operation{ - Name: opListWorkloadShares, + Name: opListProfiles, HTTPMethod: "GET", - HTTPPath: "/workloads/{WorkloadId}/shares", + HTTPPath: "/profileSummaries", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4968,24 +5296,24 @@ func (c *WellArchitected) ListWorkloadSharesRequest(input *ListWorkloadSharesInp } if input == nil { - input = &ListWorkloadSharesInput{} + input = &ListProfilesInput{} } - output = &ListWorkloadSharesOutput{} + output = &ListProfilesOutput{} req = c.newRequest(op, input, output) return } -// ListWorkloadShares API operation for AWS Well-Architected Tool. +// ListProfiles API operation for AWS Well-Architected Tool. // -// List the workload shares associated with the workload. +// List profiles. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListWorkloadShares for usage and error information. +// API operation ListProfiles for usage and error information. // // Returned Error Types: // @@ -4995,73 +5323,70 @@ func (c *WellArchitected) ListWorkloadSharesRequest(input *ListWorkloadSharesInp // - InternalServerException // There is a problem with the Well-Architected Tool API service. // -// - ResourceNotFoundException -// The requested resource was not found. -// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloadShares -func (c *WellArchitected) ListWorkloadShares(input *ListWorkloadSharesInput) (*ListWorkloadSharesOutput, error) { - req, out := c.ListWorkloadSharesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfiles +func (c *WellArchitected) ListProfiles(input *ListProfilesInput) (*ListProfilesOutput, error) { + req, out := c.ListProfilesRequest(input) return out, req.Send() } -// ListWorkloadSharesWithContext is the same as ListWorkloadShares with the addition of +// ListProfilesWithContext is the same as ListProfiles with the addition of // the ability to pass a context and additional request options. // -// See ListWorkloadShares for details on how to use this API operation. +// See ListProfiles for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListWorkloadSharesWithContext(ctx aws.Context, input *ListWorkloadSharesInput, opts ...request.Option) (*ListWorkloadSharesOutput, error) { - req, out := c.ListWorkloadSharesRequest(input) +func (c *WellArchitected) ListProfilesWithContext(ctx aws.Context, input *ListProfilesInput, opts ...request.Option) (*ListProfilesOutput, error) { + req, out := c.ListProfilesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListWorkloadSharesPages iterates over the pages of a ListWorkloadShares operation, +// ListProfilesPages iterates over the pages of a ListProfiles operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListWorkloadShares method for more information on how to use this operation. +// See ListProfiles method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListWorkloadShares operation. +// // Example iterating over at most 3 pages of a ListProfiles operation. // pageNum := 0 -// err := client.ListWorkloadSharesPages(params, -// func(page *wellarchitected.ListWorkloadSharesOutput, lastPage bool) bool { +// err := client.ListProfilesPages(params, +// func(page *wellarchitected.ListProfilesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListWorkloadSharesPages(input *ListWorkloadSharesInput, fn func(*ListWorkloadSharesOutput, bool) bool) error { - return c.ListWorkloadSharesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListProfilesPages(input *ListProfilesInput, fn func(*ListProfilesOutput, bool) bool) error { + return c.ListProfilesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListWorkloadSharesPagesWithContext same as ListWorkloadSharesPages except +// ListProfilesPagesWithContext same as ListProfilesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListWorkloadSharesPagesWithContext(ctx aws.Context, input *ListWorkloadSharesInput, fn func(*ListWorkloadSharesOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListProfilesPagesWithContext(ctx aws.Context, input *ListProfilesInput, fn func(*ListProfilesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListWorkloadSharesInput + var inCpy *ListProfilesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListWorkloadSharesRequest(inCpy) + req, _ := c.ListProfilesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5069,7 +5394,7 @@ func (c *WellArchitected) ListWorkloadSharesPagesWithContext(ctx aws.Context, in } for p.Next() { - if !fn(p.Page().(*ListWorkloadSharesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListProfilesOutput), !p.HasNextPage()) { break } } @@ -5077,36 +5402,36 @@ func (c *WellArchitected) ListWorkloadSharesPagesWithContext(ctx aws.Context, in return p.Err() } -const opListWorkloads = "ListWorkloads" +const opListReviewTemplateAnswers = "ListReviewTemplateAnswers" -// ListWorkloadsRequest generates a "aws/request.Request" representing the -// client's request for the ListWorkloads operation. The "output" return +// ListReviewTemplateAnswersRequest generates a "aws/request.Request" representing the +// client's request for the ListReviewTemplateAnswers operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListWorkloads for more information on using the ListWorkloads +// See ListReviewTemplateAnswers for more information on using the ListReviewTemplateAnswers // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListWorkloadsRequest method. -// req, resp := client.ListWorkloadsRequest(params) +// // Example sending a request using the ListReviewTemplateAnswersRequest method. +// req, resp := client.ListReviewTemplateAnswersRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloads -func (c *WellArchitected) ListWorkloadsRequest(input *ListWorkloadsInput) (req *request.Request, output *ListWorkloadsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListReviewTemplateAnswers +func (c *WellArchitected) ListReviewTemplateAnswersRequest(input *ListReviewTemplateAnswersInput) (req *request.Request, output *ListReviewTemplateAnswersOutput) { op := &request.Operation{ - Name: opListWorkloads, - HTTPMethod: "POST", - HTTPPath: "/workloadsSummaries", + Name: opListReviewTemplateAnswers, + HTTPMethod: "GET", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -5116,24 +5441,24 @@ func (c *WellArchitected) ListWorkloadsRequest(input *ListWorkloadsInput) (req * } if input == nil { - input = &ListWorkloadsInput{} + input = &ListReviewTemplateAnswersInput{} } - output = &ListWorkloadsOutput{} + output = &ListReviewTemplateAnswersOutput{} req = c.newRequest(op, input, output) return } -// ListWorkloads API operation for AWS Well-Architected Tool. +// ListReviewTemplateAnswers API operation for AWS Well-Architected Tool. // -// Paginated list of workloads. +// List the answers of a review template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation ListWorkloads for usage and error information. +// API operation ListReviewTemplateAnswers for usage and error information. // // Returned Error Types: // @@ -5143,70 +5468,73 @@ func (c *WellArchitected) ListWorkloadsRequest(input *ListWorkloadsInput) (req * // - InternalServerException // There is a problem with the Well-Architected Tool API service. // +// - ResourceNotFoundException +// The requested resource was not found. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloads -func (c *WellArchitected) ListWorkloads(input *ListWorkloadsInput) (*ListWorkloadsOutput, error) { - req, out := c.ListWorkloadsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListReviewTemplateAnswers +func (c *WellArchitected) ListReviewTemplateAnswers(input *ListReviewTemplateAnswersInput) (*ListReviewTemplateAnswersOutput, error) { + req, out := c.ListReviewTemplateAnswersRequest(input) return out, req.Send() } -// ListWorkloadsWithContext is the same as ListWorkloads with the addition of +// ListReviewTemplateAnswersWithContext is the same as ListReviewTemplateAnswers with the addition of // the ability to pass a context and additional request options. // -// See ListWorkloads for details on how to use this API operation. +// See ListReviewTemplateAnswers for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListWorkloadsWithContext(ctx aws.Context, input *ListWorkloadsInput, opts ...request.Option) (*ListWorkloadsOutput, error) { - req, out := c.ListWorkloadsRequest(input) +func (c *WellArchitected) ListReviewTemplateAnswersWithContext(ctx aws.Context, input *ListReviewTemplateAnswersInput, opts ...request.Option) (*ListReviewTemplateAnswersOutput, error) { + req, out := c.ListReviewTemplateAnswersRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListWorkloadsPages iterates over the pages of a ListWorkloads operation, +// ListReviewTemplateAnswersPages iterates over the pages of a ListReviewTemplateAnswers operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListWorkloads method for more information on how to use this operation. +// See ListReviewTemplateAnswers method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListWorkloads operation. +// // Example iterating over at most 3 pages of a ListReviewTemplateAnswers operation. // pageNum := 0 -// err := client.ListWorkloadsPages(params, -// func(page *wellarchitected.ListWorkloadsOutput, lastPage bool) bool { +// err := client.ListReviewTemplateAnswersPages(params, +// func(page *wellarchitected.ListReviewTemplateAnswersOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *WellArchitected) ListWorkloadsPages(input *ListWorkloadsInput, fn func(*ListWorkloadsOutput, bool) bool) error { - return c.ListWorkloadsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *WellArchitected) ListReviewTemplateAnswersPages(input *ListReviewTemplateAnswersInput, fn func(*ListReviewTemplateAnswersOutput, bool) bool) error { + return c.ListReviewTemplateAnswersPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListWorkloadsPagesWithContext same as ListWorkloadsPages except +// ListReviewTemplateAnswersPagesWithContext same as ListReviewTemplateAnswersPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) ListWorkloadsPagesWithContext(ctx aws.Context, input *ListWorkloadsInput, fn func(*ListWorkloadsOutput, bool) bool, opts ...request.Option) error { +func (c *WellArchitected) ListReviewTemplateAnswersPagesWithContext(ctx aws.Context, input *ListReviewTemplateAnswersInput, fn func(*ListReviewTemplateAnswersOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListWorkloadsInput + var inCpy *ListReviewTemplateAnswersInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListWorkloadsRequest(inCpy) + req, _ := c.ListReviewTemplateAnswersRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5214,7 +5542,7 @@ func (c *WellArchitected) ListWorkloadsPagesWithContext(ctx aws.Context, input * } for p.Next() { - if !fn(p.Page().(*ListWorkloadsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListReviewTemplateAnswersOutput), !p.HasNextPage()) { break } } @@ -5222,526 +5550,743 @@ func (c *WellArchitected) ListWorkloadsPagesWithContext(ctx aws.Context, input * return p.Err() } -const opTagResource = "TagResource" +const opListReviewTemplates = "ListReviewTemplates" -// TagResourceRequest generates a "aws/request.Request" representing the -// client's request for the TagResource operation. The "output" return +// ListReviewTemplatesRequest generates a "aws/request.Request" representing the +// client's request for the ListReviewTemplates operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See TagResource for more information on using the TagResource +// See ListReviewTemplates for more information on using the ListReviewTemplates // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the TagResourceRequest method. -// req, resp := client.TagResourceRequest(params) +// // Example sending a request using the ListReviewTemplatesRequest method. +// req, resp := client.ListReviewTemplatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/TagResource -func (c *WellArchitected) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListReviewTemplates +func (c *WellArchitected) ListReviewTemplatesRequest(input *ListReviewTemplatesInput) (req *request.Request, output *ListReviewTemplatesOutput) { op := &request.Operation{ - Name: opTagResource, - HTTPMethod: "POST", - HTTPPath: "/tags/{WorkloadArn}", + Name: opListReviewTemplates, + HTTPMethod: "GET", + HTTPPath: "/reviewTemplates", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &TagResourceInput{} + input = &ListReviewTemplatesInput{} } - output = &TagResourceOutput{} + output = &ListReviewTemplatesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// TagResource API operation for AWS Well-Architected Tool. -// -// Adds one or more tags to the specified resource. +// ListReviewTemplates API operation for AWS Well-Architected Tool. // -// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a -// profile ARN. +// List review templates. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation TagResource for usage and error information. +// API operation ListReviewTemplates for usage and error information. // // Returned Error Types: // +// - ValidationException +// The user input is not valid. +// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // -// - ResourceNotFoundException -// The requested resource was not found. +// - AccessDeniedException +// User does not have sufficient access to perform this action. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/TagResource -func (c *WellArchitected) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListReviewTemplates +func (c *WellArchitected) ListReviewTemplates(input *ListReviewTemplatesInput) (*ListReviewTemplatesOutput, error) { + req, out := c.ListReviewTemplatesRequest(input) return out, req.Send() } -// TagResourceWithContext is the same as TagResource with the addition of +// ListReviewTemplatesWithContext is the same as ListReviewTemplates with the addition of // the ability to pass a context and additional request options. // -// See TagResource for details on how to use this API operation. +// See ListReviewTemplates for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +func (c *WellArchitected) ListReviewTemplatesWithContext(ctx aws.Context, input *ListReviewTemplatesInput, opts ...request.Option) (*ListReviewTemplatesOutput, error) { + req, out := c.ListReviewTemplatesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUntagResource = "UntagResource" +// ListReviewTemplatesPages iterates over the pages of a ListReviewTemplates operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListReviewTemplates method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListReviewTemplates operation. +// pageNum := 0 +// err := client.ListReviewTemplatesPages(params, +// func(page *wellarchitected.ListReviewTemplatesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListReviewTemplatesPages(input *ListReviewTemplatesInput, fn func(*ListReviewTemplatesOutput, bool) bool) error { + return c.ListReviewTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) +} -// UntagResourceRequest generates a "aws/request.Request" representing the -// client's request for the UntagResource operation. The "output" return +// ListReviewTemplatesPagesWithContext same as ListReviewTemplatesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) ListReviewTemplatesPagesWithContext(ctx aws.Context, input *ListReviewTemplatesInput, fn func(*ListReviewTemplatesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListReviewTemplatesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListReviewTemplatesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListReviewTemplatesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListShareInvitations = "ListShareInvitations" + +// ListShareInvitationsRequest generates a "aws/request.Request" representing the +// client's request for the ListShareInvitations operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UntagResource for more information on using the UntagResource +// See ListShareInvitations for more information on using the ListShareInvitations // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UntagResourceRequest method. -// req, resp := client.UntagResourceRequest(params) +// // Example sending a request using the ListShareInvitationsRequest method. +// req, resp := client.ListShareInvitationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UntagResource -func (c *WellArchitected) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListShareInvitations +func (c *WellArchitected) ListShareInvitationsRequest(input *ListShareInvitationsInput) (req *request.Request, output *ListShareInvitationsOutput) { op := &request.Operation{ - Name: opUntagResource, - HTTPMethod: "DELETE", - HTTPPath: "/tags/{WorkloadArn}", + Name: opListShareInvitations, + HTTPMethod: "GET", + HTTPPath: "/shareInvitations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &UntagResourceInput{} + input = &ListShareInvitationsInput{} } - output = &UntagResourceOutput{} + output = &ListShareInvitationsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UntagResource API operation for AWS Well-Architected Tool. -// -// Deletes specified tags from a resource. -// -// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or a -// profile ARN. +// ListShareInvitations API operation for AWS Well-Architected Tool. // -// To specify multiple tags, use separate tagKeys parameters, for example: +// List the share invitations. // -// DELETE /tags/WorkloadArn?tagKeys=key1&tagKeys=key2 +// WorkloadNamePrefix, LensNamePrefix, ProfileNamePrefix, and TemplateNamePrefix +// are mutually exclusive. Use the parameter that matches your ShareResourceType. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UntagResource for usage and error information. +// API operation ListShareInvitations for usage and error information. // // Returned Error Types: // +// - ValidationException +// The user input is not valid. +// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // -// - ResourceNotFoundException -// The requested resource was not found. +// - AccessDeniedException +// User does not have sufficient access to perform this action. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UntagResource -func (c *WellArchitected) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListShareInvitations +func (c *WellArchitected) ListShareInvitations(input *ListShareInvitationsInput) (*ListShareInvitationsOutput, error) { + req, out := c.ListShareInvitationsRequest(input) return out, req.Send() } -// UntagResourceWithContext is the same as UntagResource with the addition of +// ListShareInvitationsWithContext is the same as ListShareInvitations with the addition of // the ability to pass a context and additional request options. // -// See UntagResource for details on how to use this API operation. +// See ListShareInvitations for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +func (c *WellArchitected) ListShareInvitationsWithContext(ctx aws.Context, input *ListShareInvitationsInput, opts ...request.Option) (*ListShareInvitationsOutput, error) { + req, out := c.ListShareInvitationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateAnswer = "UpdateAnswer" +// ListShareInvitationsPages iterates over the pages of a ListShareInvitations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListShareInvitations method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListShareInvitations operation. +// pageNum := 0 +// err := client.ListShareInvitationsPages(params, +// func(page *wellarchitected.ListShareInvitationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListShareInvitationsPages(input *ListShareInvitationsInput, fn func(*ListShareInvitationsOutput, bool) bool) error { + return c.ListShareInvitationsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// UpdateAnswerRequest generates a "aws/request.Request" representing the -// client's request for the UpdateAnswer operation. The "output" return +// ListShareInvitationsPagesWithContext same as ListShareInvitationsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) ListShareInvitationsPagesWithContext(ctx aws.Context, input *ListShareInvitationsInput, fn func(*ListShareInvitationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListShareInvitationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListShareInvitationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListShareInvitationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateAnswer for more information on using the UpdateAnswer +// See ListTagsForResource for more information on using the ListTagsForResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateAnswerRequest method. -// req, resp := client.UpdateAnswerRequest(params) +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateAnswer -func (c *WellArchitected) UpdateAnswerRequest(input *UpdateAnswerInput) (req *request.Request, output *UpdateAnswerOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListTagsForResource +func (c *WellArchitected) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ - Name: opUpdateAnswer, - HTTPMethod: "PATCH", - HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers/{QuestionId}", + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{WorkloadArn}", } if input == nil { - input = &UpdateAnswerInput{} + input = &ListTagsForResourceInput{} } - output = &UpdateAnswerOutput{} + output = &ListTagsForResourceOutput{} req = c.newRequest(op, input, output) return } -// UpdateAnswer API operation for AWS Well-Architected Tool. +// ListTagsForResource API operation for AWS Well-Architected Tool. // -// Update the answer to a specific question in a workload review. +// List the tags for a resource. +// +// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile +// ARN, or review template ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpdateAnswer for usage and error information. +// API operation ListTagsForResource for usage and error information. // // Returned Error Types: // -// - ValidationException -// The user input is not valid. -// -// - ResourceNotFoundException -// The requested resource was not found. -// -// - ConflictException -// The resource has already been processed, was deleted, or is too large. -// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // -// - AccessDeniedException -// User does not have sufficient access to perform this action. -// -// - ThrottlingException -// Request was denied due to request throttling. +// - ResourceNotFoundException +// The requested resource was not found. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateAnswer -func (c *WellArchitected) UpdateAnswer(input *UpdateAnswerInput) (*UpdateAnswerOutput, error) { - req, out := c.UpdateAnswerRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListTagsForResource +func (c *WellArchitected) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) return out, req.Send() } -// UpdateAnswerWithContext is the same as UpdateAnswer with the addition of +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of // the ability to pass a context and additional request options. // -// See UpdateAnswer for details on how to use this API operation. +// See ListTagsForResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpdateAnswerWithContext(ctx aws.Context, input *UpdateAnswerInput, opts ...request.Option) (*UpdateAnswerOutput, error) { - req, out := c.UpdateAnswerRequest(input) +func (c *WellArchitected) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateGlobalSettings = "UpdateGlobalSettings" +const opListTemplateShares = "ListTemplateShares" -// UpdateGlobalSettingsRequest generates a "aws/request.Request" representing the -// client's request for the UpdateGlobalSettings operation. The "output" return +// ListTemplateSharesRequest generates a "aws/request.Request" representing the +// client's request for the ListTemplateShares operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateGlobalSettings for more information on using the UpdateGlobalSettings +// See ListTemplateShares for more information on using the ListTemplateShares // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateGlobalSettingsRequest method. -// req, resp := client.UpdateGlobalSettingsRequest(params) +// // Example sending a request using the ListTemplateSharesRequest method. +// req, resp := client.ListTemplateSharesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateGlobalSettings -func (c *WellArchitected) UpdateGlobalSettingsRequest(input *UpdateGlobalSettingsInput) (req *request.Request, output *UpdateGlobalSettingsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListTemplateShares +func (c *WellArchitected) ListTemplateSharesRequest(input *ListTemplateSharesInput) (req *request.Request, output *ListTemplateSharesOutput) { op := &request.Operation{ - Name: opUpdateGlobalSettings, - HTTPMethod: "PATCH", - HTTPPath: "/global-settings", + Name: opListTemplateShares, + HTTPMethod: "GET", + HTTPPath: "/templates/shares/{TemplateArn}", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &UpdateGlobalSettingsInput{} + input = &ListTemplateSharesInput{} } - output = &UpdateGlobalSettingsOutput{} + output = &ListTemplateSharesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateGlobalSettings API operation for AWS Well-Architected Tool. +// ListTemplateShares API operation for AWS Well-Architected Tool. // -// Updates whether the Amazon Web Services account is opted into organization -// sharing and discovery integration features. +// List review template shares. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpdateGlobalSettings for usage and error information. +// API operation ListTemplateShares for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - ConflictException -// The resource has already been processed, was deleted, or is too large. -// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // +// - ResourceNotFoundException +// The requested resource was not found. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateGlobalSettings -func (c *WellArchitected) UpdateGlobalSettings(input *UpdateGlobalSettingsInput) (*UpdateGlobalSettingsOutput, error) { - req, out := c.UpdateGlobalSettingsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListTemplateShares +func (c *WellArchitected) ListTemplateShares(input *ListTemplateSharesInput) (*ListTemplateSharesOutput, error) { + req, out := c.ListTemplateSharesRequest(input) return out, req.Send() } -// UpdateGlobalSettingsWithContext is the same as UpdateGlobalSettings with the addition of +// ListTemplateSharesWithContext is the same as ListTemplateShares with the addition of // the ability to pass a context and additional request options. // -// See UpdateGlobalSettings for details on how to use this API operation. +// See ListTemplateShares for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpdateGlobalSettingsWithContext(ctx aws.Context, input *UpdateGlobalSettingsInput, opts ...request.Option) (*UpdateGlobalSettingsOutput, error) { - req, out := c.UpdateGlobalSettingsRequest(input) +func (c *WellArchitected) ListTemplateSharesWithContext(ctx aws.Context, input *ListTemplateSharesInput, opts ...request.Option) (*ListTemplateSharesOutput, error) { + req, out := c.ListTemplateSharesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateLensReview = "UpdateLensReview" +// ListTemplateSharesPages iterates over the pages of a ListTemplateShares operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTemplateShares method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListTemplateShares operation. +// pageNum := 0 +// err := client.ListTemplateSharesPages(params, +// func(page *wellarchitected.ListTemplateSharesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListTemplateSharesPages(input *ListTemplateSharesInput, fn func(*ListTemplateSharesOutput, bool) bool) error { + return c.ListTemplateSharesPagesWithContext(aws.BackgroundContext(), input, fn) +} -// UpdateLensReviewRequest generates a "aws/request.Request" representing the -// client's request for the UpdateLensReview operation. The "output" return +// ListTemplateSharesPagesWithContext same as ListTemplateSharesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) ListTemplateSharesPagesWithContext(ctx aws.Context, input *ListTemplateSharesInput, fn func(*ListTemplateSharesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTemplateSharesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTemplateSharesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTemplateSharesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListWorkloadShares = "ListWorkloadShares" + +// ListWorkloadSharesRequest generates a "aws/request.Request" representing the +// client's request for the ListWorkloadShares operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateLensReview for more information on using the UpdateLensReview +// See ListWorkloadShares for more information on using the ListWorkloadShares // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateLensReviewRequest method. -// req, resp := client.UpdateLensReviewRequest(params) +// // Example sending a request using the ListWorkloadSharesRequest method. +// req, resp := client.ListWorkloadSharesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateLensReview -func (c *WellArchitected) UpdateLensReviewRequest(input *UpdateLensReviewInput) (req *request.Request, output *UpdateLensReviewOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloadShares +func (c *WellArchitected) ListWorkloadSharesRequest(input *ListWorkloadSharesInput) (req *request.Request, output *ListWorkloadSharesOutput) { op := &request.Operation{ - Name: opUpdateLensReview, - HTTPMethod: "PATCH", - HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}", + Name: opListWorkloadShares, + HTTPMethod: "GET", + HTTPPath: "/workloads/{WorkloadId}/shares", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &UpdateLensReviewInput{} + input = &ListWorkloadSharesInput{} } - output = &UpdateLensReviewOutput{} + output = &ListWorkloadSharesOutput{} req = c.newRequest(op, input, output) return } -// UpdateLensReview API operation for AWS Well-Architected Tool. +// ListWorkloadShares API operation for AWS Well-Architected Tool. // -// Update lens review for a particular workload. +// List the workload shares associated with the workload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpdateLensReview for usage and error information. +// API operation ListWorkloadShares for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - ResourceNotFoundException -// The requested resource was not found. -// -// - ConflictException -// The resource has already been processed, was deleted, or is too large. -// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // +// - ResourceNotFoundException +// The requested resource was not found. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateLensReview -func (c *WellArchitected) UpdateLensReview(input *UpdateLensReviewInput) (*UpdateLensReviewOutput, error) { - req, out := c.UpdateLensReviewRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloadShares +func (c *WellArchitected) ListWorkloadShares(input *ListWorkloadSharesInput) (*ListWorkloadSharesOutput, error) { + req, out := c.ListWorkloadSharesRequest(input) return out, req.Send() } -// UpdateLensReviewWithContext is the same as UpdateLensReview with the addition of +// ListWorkloadSharesWithContext is the same as ListWorkloadShares with the addition of // the ability to pass a context and additional request options. // -// See UpdateLensReview for details on how to use this API operation. +// See ListWorkloadShares for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpdateLensReviewWithContext(ctx aws.Context, input *UpdateLensReviewInput, opts ...request.Option) (*UpdateLensReviewOutput, error) { - req, out := c.UpdateLensReviewRequest(input) +func (c *WellArchitected) ListWorkloadSharesWithContext(ctx aws.Context, input *ListWorkloadSharesInput, opts ...request.Option) (*ListWorkloadSharesOutput, error) { + req, out := c.ListWorkloadSharesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateProfile = "UpdateProfile" +// ListWorkloadSharesPages iterates over the pages of a ListWorkloadShares operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListWorkloadShares method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListWorkloadShares operation. +// pageNum := 0 +// err := client.ListWorkloadSharesPages(params, +// func(page *wellarchitected.ListWorkloadSharesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListWorkloadSharesPages(input *ListWorkloadSharesInput, fn func(*ListWorkloadSharesOutput, bool) bool) error { + return c.ListWorkloadSharesPagesWithContext(aws.BackgroundContext(), input, fn) +} -// UpdateProfileRequest generates a "aws/request.Request" representing the -// client's request for the UpdateProfile operation. The "output" return +// ListWorkloadSharesPagesWithContext same as ListWorkloadSharesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) ListWorkloadSharesPagesWithContext(ctx aws.Context, input *ListWorkloadSharesInput, fn func(*ListWorkloadSharesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListWorkloadSharesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListWorkloadSharesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListWorkloadSharesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListWorkloads = "ListWorkloads" + +// ListWorkloadsRequest generates a "aws/request.Request" representing the +// client's request for the ListWorkloads operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateProfile for more information on using the UpdateProfile +// See ListWorkloads for more information on using the ListWorkloads // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateProfileRequest method. -// req, resp := client.UpdateProfileRequest(params) +// // Example sending a request using the ListWorkloadsRequest method. +// req, resp := client.ListWorkloadsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateProfile -func (c *WellArchitected) UpdateProfileRequest(input *UpdateProfileInput) (req *request.Request, output *UpdateProfileOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloads +func (c *WellArchitected) ListWorkloadsRequest(input *ListWorkloadsInput) (req *request.Request, output *ListWorkloadsOutput) { op := &request.Operation{ - Name: opUpdateProfile, - HTTPMethod: "PATCH", - HTTPPath: "/profiles/{ProfileArn}", + Name: opListWorkloads, + HTTPMethod: "POST", + HTTPPath: "/workloadsSummaries", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &UpdateProfileInput{} + input = &ListWorkloadsInput{} } - output = &UpdateProfileOutput{} + output = &ListWorkloadsOutput{} req = c.newRequest(op, input, output) return } -// UpdateProfile API operation for AWS Well-Architected Tool. +// ListWorkloads API operation for AWS Well-Architected Tool. // -// Update a profile. +// Paginated list of workloads. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpdateProfile for usage and error information. +// API operation ListWorkloads for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - ResourceNotFoundException -// The requested resource was not found. -// -// - ConflictException -// The resource has already been processed, was deleted, or is too large. -// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // @@ -5751,374 +6296,408 @@ func (c *WellArchitected) UpdateProfileRequest(input *UpdateProfileInput) (req * // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateProfile -func (c *WellArchitected) UpdateProfile(input *UpdateProfileInput) (*UpdateProfileOutput, error) { - req, out := c.UpdateProfileRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloads +func (c *WellArchitected) ListWorkloads(input *ListWorkloadsInput) (*ListWorkloadsOutput, error) { + req, out := c.ListWorkloadsRequest(input) return out, req.Send() } -// UpdateProfileWithContext is the same as UpdateProfile with the addition of +// ListWorkloadsWithContext is the same as ListWorkloads with the addition of // the ability to pass a context and additional request options. // -// See UpdateProfile for details on how to use this API operation. +// See ListWorkloads for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpdateProfileWithContext(ctx aws.Context, input *UpdateProfileInput, opts ...request.Option) (*UpdateProfileOutput, error) { - req, out := c.UpdateProfileRequest(input) +func (c *WellArchitected) ListWorkloadsWithContext(ctx aws.Context, input *ListWorkloadsInput, opts ...request.Option) (*ListWorkloadsOutput, error) { + req, out := c.ListWorkloadsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateShareInvitation = "UpdateShareInvitation" - -// UpdateShareInvitationRequest generates a "aws/request.Request" representing the -// client's request for the UpdateShareInvitation operation. The "output" return +// ListWorkloadsPages iterates over the pages of a ListWorkloads operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListWorkloads method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListWorkloads operation. +// pageNum := 0 +// err := client.ListWorkloadsPages(params, +// func(page *wellarchitected.ListWorkloadsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *WellArchitected) ListWorkloadsPages(input *ListWorkloadsInput, fn func(*ListWorkloadsOutput, bool) bool) error { + return c.ListWorkloadsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListWorkloadsPagesWithContext same as ListWorkloadsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) ListWorkloadsPagesWithContext(ctx aws.Context, input *ListWorkloadsInput, fn func(*ListWorkloadsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListWorkloadsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListWorkloadsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListWorkloadsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateShareInvitation for more information on using the UpdateShareInvitation +// See TagResource for more information on using the TagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateShareInvitationRequest method. -// req, resp := client.UpdateShareInvitationRequest(params) +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateShareInvitation -func (c *WellArchitected) UpdateShareInvitationRequest(input *UpdateShareInvitationInput) (req *request.Request, output *UpdateShareInvitationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/TagResource +func (c *WellArchitected) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ - Name: opUpdateShareInvitation, - HTTPMethod: "PATCH", - HTTPPath: "/shareInvitations/{ShareInvitationId}", + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{WorkloadArn}", } if input == nil { - input = &UpdateShareInvitationInput{} + input = &TagResourceInput{} } - output = &UpdateShareInvitationOutput{} + output = &TagResourceOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateShareInvitation API operation for AWS Well-Architected Tool. +// TagResource API operation for AWS Well-Architected Tool. // -// Update a workload or custom lens share invitation. +// Adds one or more tags to the specified resource. // -// This API operation can be called independently of any resource. Previous -// documentation implied that a workload ARN must be specified. +// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile +// ARN, or review template ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpdateShareInvitation for usage and error information. +// API operation TagResource for usage and error information. // // Returned Error Types: // -// - ValidationException -// The user input is not valid. -// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // // - ResourceNotFoundException // The requested resource was not found. // -// - ConflictException -// The resource has already been processed, was deleted, or is too large. -// -// - AccessDeniedException -// User does not have sufficient access to perform this action. -// -// - ThrottlingException -// Request was denied due to request throttling. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateShareInvitation -func (c *WellArchitected) UpdateShareInvitation(input *UpdateShareInvitationInput) (*UpdateShareInvitationOutput, error) { - req, out := c.UpdateShareInvitationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/TagResource +func (c *WellArchitected) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) return out, req.Send() } -// UpdateShareInvitationWithContext is the same as UpdateShareInvitation with the addition of +// TagResourceWithContext is the same as TagResource with the addition of // the ability to pass a context and additional request options. // -// See UpdateShareInvitation for details on how to use this API operation. +// See TagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpdateShareInvitationWithContext(ctx aws.Context, input *UpdateShareInvitationInput, opts ...request.Option) (*UpdateShareInvitationOutput, error) { - req, out := c.UpdateShareInvitationRequest(input) +func (c *WellArchitected) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateWorkload = "UpdateWorkload" +const opUntagResource = "UntagResource" -// UpdateWorkloadRequest generates a "aws/request.Request" representing the -// client's request for the UpdateWorkload operation. The "output" return +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateWorkload for more information on using the UpdateWorkload +// See UntagResource for more information on using the UntagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateWorkloadRequest method. -// req, resp := client.UpdateWorkloadRequest(params) +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkload -func (c *WellArchitected) UpdateWorkloadRequest(input *UpdateWorkloadInput) (req *request.Request, output *UpdateWorkloadOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UntagResource +func (c *WellArchitected) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { op := &request.Operation{ - Name: opUpdateWorkload, - HTTPMethod: "PATCH", - HTTPPath: "/workloads/{WorkloadId}", + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{WorkloadArn}", } if input == nil { - input = &UpdateWorkloadInput{} + input = &UntagResourceInput{} } - output = &UpdateWorkloadOutput{} + output = &UntagResourceOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateWorkload API operation for AWS Well-Architected Tool. +// UntagResource API operation for AWS Well-Architected Tool. // -// Update an existing workload. +// Deletes specified tags from a resource. +// +// The WorkloadArn parameter can be a workload ARN, a custom lens ARN, a profile +// ARN, or review template ARN. +// +// To specify multiple tags, use separate tagKeys parameters, for example: +// +// DELETE /tags/WorkloadArn?tagKeys=key1&tagKeys=key2 // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpdateWorkload for usage and error information. +// API operation UntagResource for usage and error information. // // Returned Error Types: // -// - ValidationException -// The user input is not valid. -// -// - ResourceNotFoundException -// The requested resource was not found. -// -// - ConflictException -// The resource has already been processed, was deleted, or is too large. -// // - InternalServerException // There is a problem with the Well-Architected Tool API service. // -// - AccessDeniedException -// User does not have sufficient access to perform this action. -// -// - ThrottlingException -// Request was denied due to request throttling. +// - ResourceNotFoundException +// The requested resource was not found. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkload -func (c *WellArchitected) UpdateWorkload(input *UpdateWorkloadInput) (*UpdateWorkloadOutput, error) { - req, out := c.UpdateWorkloadRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UntagResource +func (c *WellArchitected) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) return out, req.Send() } -// UpdateWorkloadWithContext is the same as UpdateWorkload with the addition of +// UntagResourceWithContext is the same as UntagResource with the addition of // the ability to pass a context and additional request options. // -// See UpdateWorkload for details on how to use this API operation. +// See UntagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpdateWorkloadWithContext(ctx aws.Context, input *UpdateWorkloadInput, opts ...request.Option) (*UpdateWorkloadOutput, error) { - req, out := c.UpdateWorkloadRequest(input) +func (c *WellArchitected) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateWorkloadShare = "UpdateWorkloadShare" +const opUpdateAnswer = "UpdateAnswer" -// UpdateWorkloadShareRequest generates a "aws/request.Request" representing the -// client's request for the UpdateWorkloadShare operation. The "output" return +// UpdateAnswerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAnswer operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateWorkloadShare for more information on using the UpdateWorkloadShare +// See UpdateAnswer for more information on using the UpdateAnswer // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateWorkloadShareRequest method. -// req, resp := client.UpdateWorkloadShareRequest(params) +// // Example sending a request using the UpdateAnswerRequest method. +// req, resp := client.UpdateAnswerRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkloadShare -func (c *WellArchitected) UpdateWorkloadShareRequest(input *UpdateWorkloadShareInput) (req *request.Request, output *UpdateWorkloadShareOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateAnswer +func (c *WellArchitected) UpdateAnswerRequest(input *UpdateAnswerInput) (req *request.Request, output *UpdateAnswerOutput) { op := &request.Operation{ - Name: opUpdateWorkloadShare, + Name: opUpdateAnswer, HTTPMethod: "PATCH", - HTTPPath: "/workloads/{WorkloadId}/shares/{ShareId}", + HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers/{QuestionId}", } if input == nil { - input = &UpdateWorkloadShareInput{} + input = &UpdateAnswerInput{} } - output = &UpdateWorkloadShareOutput{} + output = &UpdateAnswerOutput{} req = c.newRequest(op, input, output) return } -// UpdateWorkloadShare API operation for AWS Well-Architected Tool. +// UpdateAnswer API operation for AWS Well-Architected Tool. // -// Update a workload share. +// Update the answer to a specific question in a workload review. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpdateWorkloadShare for usage and error information. +// API operation UpdateAnswer for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - InternalServerException -// There is a problem with the Well-Architected Tool API service. -// // - ResourceNotFoundException // The requested resource was not found. // // - ConflictException // The resource has already been processed, was deleted, or is too large. // +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// // - AccessDeniedException // User does not have sufficient access to perform this action. // // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkloadShare -func (c *WellArchitected) UpdateWorkloadShare(input *UpdateWorkloadShareInput) (*UpdateWorkloadShareOutput, error) { - req, out := c.UpdateWorkloadShareRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateAnswer +func (c *WellArchitected) UpdateAnswer(input *UpdateAnswerInput) (*UpdateAnswerOutput, error) { + req, out := c.UpdateAnswerRequest(input) return out, req.Send() } -// UpdateWorkloadShareWithContext is the same as UpdateWorkloadShare with the addition of +// UpdateAnswerWithContext is the same as UpdateAnswer with the addition of // the ability to pass a context and additional request options. // -// See UpdateWorkloadShare for details on how to use this API operation. +// See UpdateAnswer for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpdateWorkloadShareWithContext(ctx aws.Context, input *UpdateWorkloadShareInput, opts ...request.Option) (*UpdateWorkloadShareOutput, error) { - req, out := c.UpdateWorkloadShareRequest(input) +func (c *WellArchitected) UpdateAnswerWithContext(ctx aws.Context, input *UpdateAnswerInput, opts ...request.Option) (*UpdateAnswerOutput, error) { + req, out := c.UpdateAnswerRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpgradeLensReview = "UpgradeLensReview" +const opUpdateGlobalSettings = "UpdateGlobalSettings" -// UpgradeLensReviewRequest generates a "aws/request.Request" representing the -// client's request for the UpgradeLensReview operation. The "output" return +// UpdateGlobalSettingsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateGlobalSettings operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpgradeLensReview for more information on using the UpgradeLensReview +// See UpdateGlobalSettings for more information on using the UpdateGlobalSettings // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpgradeLensReviewRequest method. -// req, resp := client.UpgradeLensReviewRequest(params) +// // Example sending a request using the UpdateGlobalSettingsRequest method. +// req, resp := client.UpdateGlobalSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeLensReview -func (c *WellArchitected) UpgradeLensReviewRequest(input *UpgradeLensReviewInput) (req *request.Request, output *UpgradeLensReviewOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateGlobalSettings +func (c *WellArchitected) UpdateGlobalSettingsRequest(input *UpdateGlobalSettingsInput) (req *request.Request, output *UpdateGlobalSettingsOutput) { op := &request.Operation{ - Name: opUpgradeLensReview, - HTTPMethod: "PUT", - HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}/upgrade", + Name: opUpdateGlobalSettings, + HTTPMethod: "PATCH", + HTTPPath: "/global-settings", } if input == nil { - input = &UpgradeLensReviewInput{} + input = &UpdateGlobalSettingsInput{} } - output = &UpgradeLensReviewOutput{} + output = &UpdateGlobalSettingsOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpgradeLensReview API operation for AWS Well-Architected Tool. +// UpdateGlobalSettings API operation for AWS Well-Architected Tool. // -// Upgrade lens review for a particular workload. +// Updates whether the Amazon Web Services account is opted into organization +// sharing and discovery integration features. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpgradeLensReview for usage and error information. +// API operation UpdateGlobalSettings for usage and error information. // // Returned Error Types: // // - ValidationException // The user input is not valid. // -// - ResourceNotFoundException -// The requested resource was not found. -// // - ConflictException // The resource has already been processed, was deleted, or is too large. // @@ -6131,80 +6710,79 @@ func (c *WellArchitected) UpgradeLensReviewRequest(input *UpgradeLensReviewInput // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeLensReview -func (c *WellArchitected) UpgradeLensReview(input *UpgradeLensReviewInput) (*UpgradeLensReviewOutput, error) { - req, out := c.UpgradeLensReviewRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateGlobalSettings +func (c *WellArchitected) UpdateGlobalSettings(input *UpdateGlobalSettingsInput) (*UpdateGlobalSettingsOutput, error) { + req, out := c.UpdateGlobalSettingsRequest(input) return out, req.Send() } -// UpgradeLensReviewWithContext is the same as UpgradeLensReview with the addition of +// UpdateGlobalSettingsWithContext is the same as UpdateGlobalSettings with the addition of // the ability to pass a context and additional request options. // -// See UpgradeLensReview for details on how to use this API operation. +// See UpdateGlobalSettings for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpgradeLensReviewWithContext(ctx aws.Context, input *UpgradeLensReviewInput, opts ...request.Option) (*UpgradeLensReviewOutput, error) { - req, out := c.UpgradeLensReviewRequest(input) +func (c *WellArchitected) UpdateGlobalSettingsWithContext(ctx aws.Context, input *UpdateGlobalSettingsInput, opts ...request.Option) (*UpdateGlobalSettingsOutput, error) { + req, out := c.UpdateGlobalSettingsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpgradeProfileVersion = "UpgradeProfileVersion" +const opUpdateLensReview = "UpdateLensReview" -// UpgradeProfileVersionRequest generates a "aws/request.Request" representing the -// client's request for the UpgradeProfileVersion operation. The "output" return +// UpdateLensReviewRequest generates a "aws/request.Request" representing the +// client's request for the UpdateLensReview operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpgradeProfileVersion for more information on using the UpgradeProfileVersion +// See UpdateLensReview for more information on using the UpdateLensReview // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpgradeProfileVersionRequest method. -// req, resp := client.UpgradeProfileVersionRequest(params) +// // Example sending a request using the UpdateLensReviewRequest method. +// req, resp := client.UpdateLensReviewRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeProfileVersion -func (c *WellArchitected) UpgradeProfileVersionRequest(input *UpgradeProfileVersionInput) (req *request.Request, output *UpgradeProfileVersionOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateLensReview +func (c *WellArchitected) UpdateLensReviewRequest(input *UpdateLensReviewInput) (req *request.Request, output *UpdateLensReviewOutput) { op := &request.Operation{ - Name: opUpgradeProfileVersion, - HTTPMethod: "PUT", - HTTPPath: "/workloads/{WorkloadId}/profiles/{ProfileArn}/upgrade", + Name: opUpdateLensReview, + HTTPMethod: "PATCH", + HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}", } if input == nil { - input = &UpgradeProfileVersionInput{} + input = &UpdateLensReviewInput{} } - output = &UpgradeProfileVersionOutput{} + output = &UpdateLensReviewOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpgradeProfileVersion API operation for AWS Well-Architected Tool. +// UpdateLensReview API operation for AWS Well-Architected Tool. // -// Upgrade a profile. +// Update lens review for a particular workload. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Well-Architected Tool's -// API operation UpgradeProfileVersion for usage and error information. +// API operation UpdateLensReview for usage and error information. // // Returned Error Types: // @@ -6226,199 +6804,3536 @@ func (c *WellArchitected) UpgradeProfileVersionRequest(input *UpgradeProfileVers // - ThrottlingException // Request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeProfileVersion -func (c *WellArchitected) UpgradeProfileVersion(input *UpgradeProfileVersionInput) (*UpgradeProfileVersionOutput, error) { - req, out := c.UpgradeProfileVersionRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateLensReview +func (c *WellArchitected) UpdateLensReview(input *UpdateLensReviewInput) (*UpdateLensReviewOutput, error) { + req, out := c.UpdateLensReviewRequest(input) return out, req.Send() } -// UpgradeProfileVersionWithContext is the same as UpgradeProfileVersion with the addition of +// UpdateLensReviewWithContext is the same as UpdateLensReview with the addition of // the ability to pass a context and additional request options. // -// See UpgradeProfileVersion for details on how to use this API operation. +// See UpdateLensReview for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *WellArchitected) UpgradeProfileVersionWithContext(ctx aws.Context, input *UpgradeProfileVersionInput, opts ...request.Option) (*UpgradeProfileVersionOutput, error) { - req, out := c.UpgradeProfileVersionRequest(input) +func (c *WellArchitected) UpdateLensReviewWithContext(ctx aws.Context, input *UpdateLensReviewInput, opts ...request.Option) (*UpdateLensReviewOutput, error) { + req, out := c.UpdateLensReviewRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// User does not have sufficient access to perform this action. -type AccessDeniedException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - // Description of the error. - Message_ *string `locationName:"Message" type:"string"` -} +const opUpdateProfile = "UpdateProfile" -// String returns the string representation. +// UpdateProfileRequest generates a "aws/request.Request" representing the +// client's request for the UpdateProfile operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. // -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AccessDeniedException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. // -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AccessDeniedException) GoString() string { - return s.String() -} - -func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { - return &AccessDeniedException{ - RespMetadata: v, +// See UpdateProfile for more information on using the UpdateProfile +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateProfileRequest method. +// req, resp := client.UpdateProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateProfile +func (c *WellArchitected) UpdateProfileRequest(input *UpdateProfileInput) (req *request.Request, output *UpdateProfileOutput) { + op := &request.Operation{ + Name: opUpdateProfile, + HTTPMethod: "PATCH", + HTTPPath: "/profiles/{ProfileArn}", } -} - -// Code returns the exception type name. -func (s *AccessDeniedException) Code() string { - return "AccessDeniedException" -} -// Message returns the exception's message. -func (s *AccessDeniedException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if input == nil { + input = &UpdateProfileInput{} } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AccessDeniedException) OrigErr() error { - return nil + output = &UpdateProfileOutput{} + req = c.newRequest(op, input, output) + return } -func (s *AccessDeniedException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// UpdateProfile API operation for AWS Well-Architected Tool. +// +// Update a profile. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateProfile for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateProfile +func (c *WellArchitected) UpdateProfile(input *UpdateProfileInput) (*UpdateProfileOutput, error) { + req, out := c.UpdateProfileRequest(input) + return out, req.Send() } -// Status code returns the HTTP status code for the request's response error. -func (s *AccessDeniedException) StatusCode() int { - return s.RespMetadata.StatusCode +// UpdateProfileWithContext is the same as UpdateProfile with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateProfile for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpdateProfileWithContext(ctx aws.Context, input *UpdateProfileInput, opts ...request.Option) (*UpdateProfileOutput, error) { + req, out := c.UpdateProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() } -// RequestID returns the service's response RequestID for request. -func (s *AccessDeniedException) RequestID() string { - return s.RespMetadata.RequestID -} +const opUpdateReviewTemplate = "UpdateReviewTemplate" -// The choice level additional resources for a custom lens. +// UpdateReviewTemplateRequest generates a "aws/request.Request" representing the +// client's request for the UpdateReviewTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. // -// This field does not apply to Amazon Web Services official lenses. -type AdditionalResources struct { - _ struct{} `type:"structure"` +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateReviewTemplate for more information on using the UpdateReviewTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateReviewTemplateRequest method. +// req, resp := client.UpdateReviewTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplate +func (c *WellArchitected) UpdateReviewTemplateRequest(input *UpdateReviewTemplateInput) (req *request.Request, output *UpdateReviewTemplateOutput) { + op := &request.Operation{ + Name: opUpdateReviewTemplate, + HTTPMethod: "PATCH", + HTTPPath: "/reviewTemplates/{TemplateArn}", + } - // The URLs for additional resources, either helpful resources or improvement - // plans, for a custom lens. Up to five additional URLs can be specified. - Content []*ChoiceContent `type:"list"` + if input == nil { + input = &UpdateReviewTemplateInput{} + } - // Type of additional resource for a custom lens. - Type *string `type:"string" enum:"AdditionalResourceType"` + output = &UpdateReviewTemplateOutput{} + req = c.newRequest(op, input, output) + return } -// String returns the string representation. +// UpdateReviewTemplate API operation for AWS Well-Architected Tool. // -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AdditionalResources) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. +// Update a review template. // -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AdditionalResources) GoString() string { - return s.String() -} - -// SetContent sets the Content field's value. -func (s *AdditionalResources) SetContent(v []*ChoiceContent) *AdditionalResources { - s.Content = v - return s -} - -// SetType sets the Type field's value. +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateReviewTemplate for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplate +func (c *WellArchitected) UpdateReviewTemplate(input *UpdateReviewTemplateInput) (*UpdateReviewTemplateOutput, error) { + req, out := c.UpdateReviewTemplateRequest(input) + return out, req.Send() +} + +// UpdateReviewTemplateWithContext is the same as UpdateReviewTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateReviewTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpdateReviewTemplateWithContext(ctx aws.Context, input *UpdateReviewTemplateInput, opts ...request.Option) (*UpdateReviewTemplateOutput, error) { + req, out := c.UpdateReviewTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateReviewTemplateAnswer = "UpdateReviewTemplateAnswer" + +// UpdateReviewTemplateAnswerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateReviewTemplateAnswer operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateReviewTemplateAnswer for more information on using the UpdateReviewTemplateAnswer +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateReviewTemplateAnswerRequest method. +// req, resp := client.UpdateReviewTemplateAnswerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateAnswer +func (c *WellArchitected) UpdateReviewTemplateAnswerRequest(input *UpdateReviewTemplateAnswerInput) (req *request.Request, output *UpdateReviewTemplateAnswerOutput) { + op := &request.Operation{ + Name: opUpdateReviewTemplateAnswer, + HTTPMethod: "PATCH", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/answers/{QuestionId}", + } + + if input == nil { + input = &UpdateReviewTemplateAnswerInput{} + } + + output = &UpdateReviewTemplateAnswerOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateReviewTemplateAnswer API operation for AWS Well-Architected Tool. +// +// Update a review template answer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateReviewTemplateAnswer for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateAnswer +func (c *WellArchitected) UpdateReviewTemplateAnswer(input *UpdateReviewTemplateAnswerInput) (*UpdateReviewTemplateAnswerOutput, error) { + req, out := c.UpdateReviewTemplateAnswerRequest(input) + return out, req.Send() +} + +// UpdateReviewTemplateAnswerWithContext is the same as UpdateReviewTemplateAnswer with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateReviewTemplateAnswer for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpdateReviewTemplateAnswerWithContext(ctx aws.Context, input *UpdateReviewTemplateAnswerInput, opts ...request.Option) (*UpdateReviewTemplateAnswerOutput, error) { + req, out := c.UpdateReviewTemplateAnswerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateReviewTemplateLensReview = "UpdateReviewTemplateLensReview" + +// UpdateReviewTemplateLensReviewRequest generates a "aws/request.Request" representing the +// client's request for the UpdateReviewTemplateLensReview operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateReviewTemplateLensReview for more information on using the UpdateReviewTemplateLensReview +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateReviewTemplateLensReviewRequest method. +// req, resp := client.UpdateReviewTemplateLensReviewRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateLensReview +func (c *WellArchitected) UpdateReviewTemplateLensReviewRequest(input *UpdateReviewTemplateLensReviewInput) (req *request.Request, output *UpdateReviewTemplateLensReviewOutput) { + op := &request.Operation{ + Name: opUpdateReviewTemplateLensReview, + HTTPMethod: "PATCH", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}", + } + + if input == nil { + input = &UpdateReviewTemplateLensReviewInput{} + } + + output = &UpdateReviewTemplateLensReviewOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateReviewTemplateLensReview API operation for AWS Well-Architected Tool. +// +// Update a lens review associated with a review template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateReviewTemplateLensReview for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateLensReview +func (c *WellArchitected) UpdateReviewTemplateLensReview(input *UpdateReviewTemplateLensReviewInput) (*UpdateReviewTemplateLensReviewOutput, error) { + req, out := c.UpdateReviewTemplateLensReviewRequest(input) + return out, req.Send() +} + +// UpdateReviewTemplateLensReviewWithContext is the same as UpdateReviewTemplateLensReview with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateReviewTemplateLensReview for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpdateReviewTemplateLensReviewWithContext(ctx aws.Context, input *UpdateReviewTemplateLensReviewInput, opts ...request.Option) (*UpdateReviewTemplateLensReviewOutput, error) { + req, out := c.UpdateReviewTemplateLensReviewRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateShareInvitation = "UpdateShareInvitation" + +// UpdateShareInvitationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateShareInvitation operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateShareInvitation for more information on using the UpdateShareInvitation +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateShareInvitationRequest method. +// req, resp := client.UpdateShareInvitationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateShareInvitation +func (c *WellArchitected) UpdateShareInvitationRequest(input *UpdateShareInvitationInput) (req *request.Request, output *UpdateShareInvitationOutput) { + op := &request.Operation{ + Name: opUpdateShareInvitation, + HTTPMethod: "PATCH", + HTTPPath: "/shareInvitations/{ShareInvitationId}", + } + + if input == nil { + input = &UpdateShareInvitationInput{} + } + + output = &UpdateShareInvitationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateShareInvitation API operation for AWS Well-Architected Tool. +// +// Update a workload or custom lens share invitation. +// +// This API operation can be called independently of any resource. Previous +// documentation implied that a workload ARN must be specified. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateShareInvitation for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateShareInvitation +func (c *WellArchitected) UpdateShareInvitation(input *UpdateShareInvitationInput) (*UpdateShareInvitationOutput, error) { + req, out := c.UpdateShareInvitationRequest(input) + return out, req.Send() +} + +// UpdateShareInvitationWithContext is the same as UpdateShareInvitation with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateShareInvitation for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpdateShareInvitationWithContext(ctx aws.Context, input *UpdateShareInvitationInput, opts ...request.Option) (*UpdateShareInvitationOutput, error) { + req, out := c.UpdateShareInvitationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateWorkload = "UpdateWorkload" + +// UpdateWorkloadRequest generates a "aws/request.Request" representing the +// client's request for the UpdateWorkload operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateWorkload for more information on using the UpdateWorkload +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateWorkloadRequest method. +// req, resp := client.UpdateWorkloadRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkload +func (c *WellArchitected) UpdateWorkloadRequest(input *UpdateWorkloadInput) (req *request.Request, output *UpdateWorkloadOutput) { + op := &request.Operation{ + Name: opUpdateWorkload, + HTTPMethod: "PATCH", + HTTPPath: "/workloads/{WorkloadId}", + } + + if input == nil { + input = &UpdateWorkloadInput{} + } + + output = &UpdateWorkloadOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateWorkload API operation for AWS Well-Architected Tool. +// +// Update an existing workload. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateWorkload for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkload +func (c *WellArchitected) UpdateWorkload(input *UpdateWorkloadInput) (*UpdateWorkloadOutput, error) { + req, out := c.UpdateWorkloadRequest(input) + return out, req.Send() +} + +// UpdateWorkloadWithContext is the same as UpdateWorkload with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateWorkload for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpdateWorkloadWithContext(ctx aws.Context, input *UpdateWorkloadInput, opts ...request.Option) (*UpdateWorkloadOutput, error) { + req, out := c.UpdateWorkloadRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateWorkloadShare = "UpdateWorkloadShare" + +// UpdateWorkloadShareRequest generates a "aws/request.Request" representing the +// client's request for the UpdateWorkloadShare operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateWorkloadShare for more information on using the UpdateWorkloadShare +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateWorkloadShareRequest method. +// req, resp := client.UpdateWorkloadShareRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkloadShare +func (c *WellArchitected) UpdateWorkloadShareRequest(input *UpdateWorkloadShareInput) (req *request.Request, output *UpdateWorkloadShareOutput) { + op := &request.Operation{ + Name: opUpdateWorkloadShare, + HTTPMethod: "PATCH", + HTTPPath: "/workloads/{WorkloadId}/shares/{ShareId}", + } + + if input == nil { + input = &UpdateWorkloadShareInput{} + } + + output = &UpdateWorkloadShareOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateWorkloadShare API operation for AWS Well-Architected Tool. +// +// Update a workload share. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpdateWorkloadShare for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkloadShare +func (c *WellArchitected) UpdateWorkloadShare(input *UpdateWorkloadShareInput) (*UpdateWorkloadShareOutput, error) { + req, out := c.UpdateWorkloadShareRequest(input) + return out, req.Send() +} + +// UpdateWorkloadShareWithContext is the same as UpdateWorkloadShare with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateWorkloadShare for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpdateWorkloadShareWithContext(ctx aws.Context, input *UpdateWorkloadShareInput, opts ...request.Option) (*UpdateWorkloadShareOutput, error) { + req, out := c.UpdateWorkloadShareRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpgradeLensReview = "UpgradeLensReview" + +// UpgradeLensReviewRequest generates a "aws/request.Request" representing the +// client's request for the UpgradeLensReview operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpgradeLensReview for more information on using the UpgradeLensReview +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpgradeLensReviewRequest method. +// req, resp := client.UpgradeLensReviewRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeLensReview +func (c *WellArchitected) UpgradeLensReviewRequest(input *UpgradeLensReviewInput) (req *request.Request, output *UpgradeLensReviewOutput) { + op := &request.Operation{ + Name: opUpgradeLensReview, + HTTPMethod: "PUT", + HTTPPath: "/workloads/{WorkloadId}/lensReviews/{LensAlias}/upgrade", + } + + if input == nil { + input = &UpgradeLensReviewInput{} + } + + output = &UpgradeLensReviewOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpgradeLensReview API operation for AWS Well-Architected Tool. +// +// Upgrade lens review for a particular workload. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpgradeLensReview for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeLensReview +func (c *WellArchitected) UpgradeLensReview(input *UpgradeLensReviewInput) (*UpgradeLensReviewOutput, error) { + req, out := c.UpgradeLensReviewRequest(input) + return out, req.Send() +} + +// UpgradeLensReviewWithContext is the same as UpgradeLensReview with the addition of +// the ability to pass a context and additional request options. +// +// See UpgradeLensReview for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpgradeLensReviewWithContext(ctx aws.Context, input *UpgradeLensReviewInput, opts ...request.Option) (*UpgradeLensReviewOutput, error) { + req, out := c.UpgradeLensReviewRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpgradeProfileVersion = "UpgradeProfileVersion" + +// UpgradeProfileVersionRequest generates a "aws/request.Request" representing the +// client's request for the UpgradeProfileVersion operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpgradeProfileVersion for more information on using the UpgradeProfileVersion +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpgradeProfileVersionRequest method. +// req, resp := client.UpgradeProfileVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeProfileVersion +func (c *WellArchitected) UpgradeProfileVersionRequest(input *UpgradeProfileVersionInput) (req *request.Request, output *UpgradeProfileVersionOutput) { + op := &request.Operation{ + Name: opUpgradeProfileVersion, + HTTPMethod: "PUT", + HTTPPath: "/workloads/{WorkloadId}/profiles/{ProfileArn}/upgrade", + } + + if input == nil { + input = &UpgradeProfileVersionInput{} + } + + output = &UpgradeProfileVersionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpgradeProfileVersion API operation for AWS Well-Architected Tool. +// +// Upgrade a profile. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpgradeProfileVersion for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeProfileVersion +func (c *WellArchitected) UpgradeProfileVersion(input *UpgradeProfileVersionInput) (*UpgradeProfileVersionOutput, error) { + req, out := c.UpgradeProfileVersionRequest(input) + return out, req.Send() +} + +// UpgradeProfileVersionWithContext is the same as UpgradeProfileVersion with the addition of +// the ability to pass a context and additional request options. +// +// See UpgradeProfileVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpgradeProfileVersionWithContext(ctx aws.Context, input *UpgradeProfileVersionInput, opts ...request.Option) (*UpgradeProfileVersionOutput, error) { + req, out := c.UpgradeProfileVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpgradeReviewTemplateLensReview = "UpgradeReviewTemplateLensReview" + +// UpgradeReviewTemplateLensReviewRequest generates a "aws/request.Request" representing the +// client's request for the UpgradeReviewTemplateLensReview operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpgradeReviewTemplateLensReview for more information on using the UpgradeReviewTemplateLensReview +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpgradeReviewTemplateLensReviewRequest method. +// req, resp := client.UpgradeReviewTemplateLensReviewRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeReviewTemplateLensReview +func (c *WellArchitected) UpgradeReviewTemplateLensReviewRequest(input *UpgradeReviewTemplateLensReviewInput) (req *request.Request, output *UpgradeReviewTemplateLensReviewOutput) { + op := &request.Operation{ + Name: opUpgradeReviewTemplateLensReview, + HTTPMethod: "PUT", + HTTPPath: "/reviewTemplates/{TemplateArn}/lensReviews/{LensAlias}/upgrade", + } + + if input == nil { + input = &UpgradeReviewTemplateLensReviewInput{} + } + + output = &UpgradeReviewTemplateLensReviewOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpgradeReviewTemplateLensReview API operation for AWS Well-Architected Tool. +// +// Upgrade the lens review of a review template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Well-Architected Tool's +// API operation UpgradeReviewTemplateLensReview for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The user input is not valid. +// +// - ResourceNotFoundException +// The requested resource was not found. +// +// - ConflictException +// The resource has already been processed, was deleted, or is too large. +// +// - InternalServerException +// There is a problem with the Well-Architected Tool API service. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeReviewTemplateLensReview +func (c *WellArchitected) UpgradeReviewTemplateLensReview(input *UpgradeReviewTemplateLensReviewInput) (*UpgradeReviewTemplateLensReviewOutput, error) { + req, out := c.UpgradeReviewTemplateLensReviewRequest(input) + return out, req.Send() +} + +// UpgradeReviewTemplateLensReviewWithContext is the same as UpgradeReviewTemplateLensReview with the addition of +// the ability to pass a context and additional request options. +// +// See UpgradeReviewTemplateLensReview for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WellArchitected) UpgradeReviewTemplateLensReviewWithContext(ctx aws.Context, input *UpgradeReviewTemplateLensReviewInput, opts ...request.Option) (*UpgradeReviewTemplateLensReviewOutput, error) { + req, out := c.UpgradeReviewTemplateLensReviewRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// User does not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Description of the error. + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The choice level additional resources for a custom lens. +// +// This field does not apply to Amazon Web Services official lenses. +type AdditionalResources struct { + _ struct{} `type:"structure"` + + // The URLs for additional resources, either helpful resources or improvement + // plans, for a custom lens. Up to five additional URLs can be specified. + Content []*ChoiceContent `type:"list"` + + // Type of additional resource for a custom lens. + Type *string `type:"string" enum:"AdditionalResourceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdditionalResources) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdditionalResources) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *AdditionalResources) SetContent(v []*ChoiceContent) *AdditionalResources { + s.Content = v + return s +} + +// SetType sets the Type field's value. func (s *AdditionalResources) SetType(v string) *AdditionalResources { s.Type = &v return s } -// An answer of the question. -type Answer struct { +// An answer of the question. +type Answer struct { + _ struct{} `type:"structure"` + + // A list of selected choices to a question in your workload. + ChoiceAnswers []*ChoiceAnswer `type:"list"` + + // List of choices available for a question. + Choices []*Choice `type:"list"` + + // The helpful resource text to be displayed for a custom lens. + // + // This field does not apply to Amazon Web Services official lenses. + HelpfulResourceDisplayText *string `min:"1" type:"string"` + + // The helpful resource URL. + // + // For Amazon Web Services official lenses, this is the helpful resource URL + // for a question or choice. + // + // For custom lenses, this is the helpful resource URL for a question and is + // only provided if HelpfulResourceDisplayText was specified for the question. + HelpfulResourceUrl *string `min:"1" type:"string"` + + // The improvement plan URL for a question in an Amazon Web Services official + // lenses. + // + // This value is only available if the question has been answered. + // + // This value does not apply to custom lenses. + ImprovementPlanUrl *string `min:"1" type:"string"` + + // Defines whether this question is applicable to a lens review. + IsApplicable *bool `type:"boolean"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The description of the question. + QuestionDescription *string `min:"1" type:"string"` + + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` + + // The reason why the question is not applicable to your workload. + Reason *string `type:"string" enum:"AnswerReason"` + + // The risk for a given workload, lens review, pillar, or question. + Risk *string `type:"string" enum:"Risk"` + + // List of selected choice IDs in a question answer. + // + // The values entered replace the previously selected choices. + SelectedChoices []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Answer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Answer) GoString() string { + return s.String() +} + +// SetChoiceAnswers sets the ChoiceAnswers field's value. +func (s *Answer) SetChoiceAnswers(v []*ChoiceAnswer) *Answer { + s.ChoiceAnswers = v + return s +} + +// SetChoices sets the Choices field's value. +func (s *Answer) SetChoices(v []*Choice) *Answer { + s.Choices = v + return s +} + +// SetHelpfulResourceDisplayText sets the HelpfulResourceDisplayText field's value. +func (s *Answer) SetHelpfulResourceDisplayText(v string) *Answer { + s.HelpfulResourceDisplayText = &v + return s +} + +// SetHelpfulResourceUrl sets the HelpfulResourceUrl field's value. +func (s *Answer) SetHelpfulResourceUrl(v string) *Answer { + s.HelpfulResourceUrl = &v + return s +} + +// SetImprovementPlanUrl sets the ImprovementPlanUrl field's value. +func (s *Answer) SetImprovementPlanUrl(v string) *Answer { + s.ImprovementPlanUrl = &v + return s +} + +// SetIsApplicable sets the IsApplicable field's value. +func (s *Answer) SetIsApplicable(v bool) *Answer { + s.IsApplicable = &v + return s +} + +// SetNotes sets the Notes field's value. +func (s *Answer) SetNotes(v string) *Answer { + s.Notes = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *Answer) SetPillarId(v string) *Answer { + s.PillarId = &v + return s +} + +// SetQuestionDescription sets the QuestionDescription field's value. +func (s *Answer) SetQuestionDescription(v string) *Answer { + s.QuestionDescription = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *Answer) SetQuestionId(v string) *Answer { + s.QuestionId = &v + return s +} + +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *Answer) SetQuestionTitle(v string) *Answer { + s.QuestionTitle = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *Answer) SetReason(v string) *Answer { + s.Reason = &v + return s +} + +// SetRisk sets the Risk field's value. +func (s *Answer) SetRisk(v string) *Answer { + s.Risk = &v + return s +} + +// SetSelectedChoices sets the SelectedChoices field's value. +func (s *Answer) SetSelectedChoices(v []*string) *Answer { + s.SelectedChoices = v + return s +} + +// An answer summary of a lens review in a workload. +type AnswerSummary struct { + _ struct{} `type:"structure"` + + // A list of selected choices to a question in your workload. + ChoiceAnswerSummaries []*ChoiceAnswerSummary `type:"list"` + + // List of choices available for a question. + Choices []*Choice `type:"list"` + + // Defines whether this question is applicable to a lens review. + IsApplicable *bool `type:"boolean"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` + + // The type of the question. + QuestionType *string `type:"string" enum:"QuestionType"` + + // The reason why a choice is non-applicable to a question in your workload. + Reason *string `type:"string" enum:"AnswerReason"` + + // The risk for a given workload, lens review, pillar, or question. + Risk *string `type:"string" enum:"Risk"` + + // List of selected choice IDs in a question answer. + // + // The values entered replace the previously selected choices. + SelectedChoices []*string `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnswerSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnswerSummary) GoString() string { + return s.String() +} + +// SetChoiceAnswerSummaries sets the ChoiceAnswerSummaries field's value. +func (s *AnswerSummary) SetChoiceAnswerSummaries(v []*ChoiceAnswerSummary) *AnswerSummary { + s.ChoiceAnswerSummaries = v + return s +} + +// SetChoices sets the Choices field's value. +func (s *AnswerSummary) SetChoices(v []*Choice) *AnswerSummary { + s.Choices = v + return s +} + +// SetIsApplicable sets the IsApplicable field's value. +func (s *AnswerSummary) SetIsApplicable(v bool) *AnswerSummary { + s.IsApplicable = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *AnswerSummary) SetPillarId(v string) *AnswerSummary { + s.PillarId = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *AnswerSummary) SetQuestionId(v string) *AnswerSummary { + s.QuestionId = &v + return s +} + +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *AnswerSummary) SetQuestionTitle(v string) *AnswerSummary { + s.QuestionTitle = &v + return s +} + +// SetQuestionType sets the QuestionType field's value. +func (s *AnswerSummary) SetQuestionType(v string) *AnswerSummary { + s.QuestionType = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *AnswerSummary) SetReason(v string) *AnswerSummary { + s.Reason = &v + return s +} + +// SetRisk sets the Risk field's value. +func (s *AnswerSummary) SetRisk(v string) *AnswerSummary { + s.Risk = &v + return s +} + +// SetSelectedChoices sets the SelectedChoices field's value. +func (s *AnswerSummary) SetSelectedChoices(v []*string) *AnswerSummary { + s.SelectedChoices = v + return s +} + +// Input to associate lens reviews. +type AssociateLensesInput struct { + _ struct{} `type:"structure"` + + // List of lens aliases to associate or disassociate with a workload. Up to + // 10 lenses can be specified. + // + // Identify a lens using its LensSummary$LensAlias. + // + // LensAliases is a required field + LensAliases []*string `min:"1" type:"list" required:"true"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateLensesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateLensesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateLensesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateLensesInput"} + if s.LensAliases == nil { + invalidParams.Add(request.NewErrParamRequired("LensAliases")) + } + if s.LensAliases != nil && len(s.LensAliases) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAliases", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLensAliases sets the LensAliases field's value. +func (s *AssociateLensesInput) SetLensAliases(v []*string) *AssociateLensesInput { + s.LensAliases = v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *AssociateLensesInput) SetWorkloadId(v string) *AssociateLensesInput { + s.WorkloadId = &v + return s +} + +type AssociateLensesOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateLensesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateLensesOutput) GoString() string { + return s.String() +} + +type AssociateProfilesInput struct { + _ struct{} `type:"structure"` + + // The list of profile ARNs to associate with the workload. + // + // ProfileArns is a required field + ProfileArns []*string `min:"1" type:"list" required:"true"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateProfilesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateProfilesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateProfilesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateProfilesInput"} + if s.ProfileArns == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileArns")) + } + if s.ProfileArns != nil && len(s.ProfileArns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileArns", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProfileArns sets the ProfileArns field's value. +func (s *AssociateProfilesInput) SetProfileArns(v []*string) *AssociateProfilesInput { + s.ProfileArns = v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *AssociateProfilesInput) SetWorkloadId(v string) *AssociateProfilesInput { + s.WorkloadId = &v + return s +} + +type AssociateProfilesOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateProfilesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateProfilesOutput) GoString() string { + return s.String() +} + +// A best practice, or question choice, that has been identified as a risk in +// this question. +type BestPractice struct { + _ struct{} `type:"structure"` + + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // The title of a choice. + ChoiceTitle *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BestPractice) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BestPractice) GoString() string { + return s.String() +} + +// SetChoiceId sets the ChoiceId field's value. +func (s *BestPractice) SetChoiceId(v string) *BestPractice { + s.ChoiceId = &v + return s +} + +// SetChoiceTitle sets the ChoiceTitle field's value. +func (s *BestPractice) SetChoiceTitle(v string) *BestPractice { + s.ChoiceTitle = &v + return s +} + +// Account details for a Well-Architected best practice in relation to Trusted +// Advisor checks. +type CheckDetail struct { + _ struct{} `type:"structure"` + + // An Amazon Web Services account ID. + AccountId *string `min:"12" type:"string"` + + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // Trusted Advisor check description. + Description *string `type:"string"` + + // Count of flagged resources associated to the check. + FlaggedResources *int64 `min:"1" type:"integer"` + + // Trusted Advisor check ID. + Id *string `type:"string"` + + // Well-Architected Lens ARN associated to the check. + LensArn *string `type:"string"` + + // Trusted Advisor check name. + Name *string `type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // Provider of the check related to the best practice. + Provider *string `type:"string" enum:"CheckProvider"` + + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // Reason associated to the check. + Reason *string `type:"string" enum:"CheckFailureReason"` + + // Status associated to the check. + Status *string `type:"string" enum:"CheckStatus"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckDetail) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *CheckDetail) SetAccountId(v string) *CheckDetail { + s.AccountId = &v + return s +} + +// SetChoiceId sets the ChoiceId field's value. +func (s *CheckDetail) SetChoiceId(v string) *CheckDetail { + s.ChoiceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CheckDetail) SetDescription(v string) *CheckDetail { + s.Description = &v + return s +} + +// SetFlaggedResources sets the FlaggedResources field's value. +func (s *CheckDetail) SetFlaggedResources(v int64) *CheckDetail { + s.FlaggedResources = &v + return s +} + +// SetId sets the Id field's value. +func (s *CheckDetail) SetId(v string) *CheckDetail { + s.Id = &v + return s +} + +// SetLensArn sets the LensArn field's value. +func (s *CheckDetail) SetLensArn(v string) *CheckDetail { + s.LensArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CheckDetail) SetName(v string) *CheckDetail { + s.Name = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *CheckDetail) SetPillarId(v string) *CheckDetail { + s.PillarId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *CheckDetail) SetProvider(v string) *CheckDetail { + s.Provider = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *CheckDetail) SetQuestionId(v string) *CheckDetail { + s.QuestionId = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *CheckDetail) SetReason(v string) *CheckDetail { + s.Reason = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CheckDetail) SetStatus(v string) *CheckDetail { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CheckDetail) SetUpdatedAt(v time.Time) *CheckDetail { + s.UpdatedAt = &v + return s +} + +// Trusted Advisor check summary. +type CheckSummary struct { + _ struct{} `type:"structure"` + + // Account summary associated to the check. + AccountSummary map[string]*int64 `type:"map"` + + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // Trusted Advisor check description. + Description *string `type:"string"` + + // Trusted Advisor check ID. + Id *string `type:"string"` + + // Well-Architected Lens ARN associated to the check. + LensArn *string `type:"string"` + + // Trusted Advisor check name. + Name *string `type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // Provider of the check related to the best practice. + Provider *string `type:"string" enum:"CheckProvider"` + + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // Status associated to the check. + Status *string `type:"string" enum:"CheckStatus"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CheckSummary) GoString() string { + return s.String() +} + +// SetAccountSummary sets the AccountSummary field's value. +func (s *CheckSummary) SetAccountSummary(v map[string]*int64) *CheckSummary { + s.AccountSummary = v + return s +} + +// SetChoiceId sets the ChoiceId field's value. +func (s *CheckSummary) SetChoiceId(v string) *CheckSummary { + s.ChoiceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CheckSummary) SetDescription(v string) *CheckSummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *CheckSummary) SetId(v string) *CheckSummary { + s.Id = &v + return s +} + +// SetLensArn sets the LensArn field's value. +func (s *CheckSummary) SetLensArn(v string) *CheckSummary { + s.LensArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CheckSummary) SetName(v string) *CheckSummary { + s.Name = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *CheckSummary) SetPillarId(v string) *CheckSummary { + s.PillarId = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *CheckSummary) SetProvider(v string) *CheckSummary { + s.Provider = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *CheckSummary) SetQuestionId(v string) *CheckSummary { + s.QuestionId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CheckSummary) SetStatus(v string) *CheckSummary { + s.Status = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CheckSummary) SetUpdatedAt(v time.Time) *CheckSummary { + s.UpdatedAt = &v + return s +} + +// A choice available to answer question. +type Choice struct { + _ struct{} `type:"structure"` + + // The additional resources for a choice in a custom lens. + // + // A choice can have up to two additional resources: one of type HELPFUL_RESOURCE, + // one of type IMPROVEMENT_PLAN, or both. + AdditionalResources []*AdditionalResources `type:"list"` + + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // The description of a choice. + Description *string `min:"1" type:"string"` + + // The helpful resource (both text and URL) for a particular choice. + // + // This field only applies to custom lenses. Each choice can have only one helpful + // resource. + HelpfulResource *ChoiceContent `type:"structure"` + + // The improvement plan (both text and URL) for a particular choice. + // + // This field only applies to custom lenses. Each choice can have only one improvement + // plan. + ImprovementPlan *ChoiceContent `type:"structure"` + + // The title of a choice. + Title *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Choice) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Choice) GoString() string { + return s.String() +} + +// SetAdditionalResources sets the AdditionalResources field's value. +func (s *Choice) SetAdditionalResources(v []*AdditionalResources) *Choice { + s.AdditionalResources = v + return s +} + +// SetChoiceId sets the ChoiceId field's value. +func (s *Choice) SetChoiceId(v string) *Choice { + s.ChoiceId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Choice) SetDescription(v string) *Choice { + s.Description = &v + return s +} + +// SetHelpfulResource sets the HelpfulResource field's value. +func (s *Choice) SetHelpfulResource(v *ChoiceContent) *Choice { + s.HelpfulResource = v + return s +} + +// SetImprovementPlan sets the ImprovementPlan field's value. +func (s *Choice) SetImprovementPlan(v *ChoiceContent) *Choice { + s.ImprovementPlan = v + return s +} + +// SetTitle sets the Title field's value. +func (s *Choice) SetTitle(v string) *Choice { + s.Title = &v + return s +} + +// A choice that has been answered on a question in your workload. +type ChoiceAnswer struct { + _ struct{} `type:"structure"` + + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // The notes associated with a choice. + Notes *string `type:"string"` + + // The reason why a choice is non-applicable to a question in your workload. + Reason *string `type:"string" enum:"ChoiceReason"` + + // The status of a choice. + Status *string `type:"string" enum:"ChoiceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceAnswer) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceAnswer) GoString() string { + return s.String() +} + +// SetChoiceId sets the ChoiceId field's value. +func (s *ChoiceAnswer) SetChoiceId(v string) *ChoiceAnswer { + s.ChoiceId = &v + return s +} + +// SetNotes sets the Notes field's value. +func (s *ChoiceAnswer) SetNotes(v string) *ChoiceAnswer { + s.Notes = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *ChoiceAnswer) SetReason(v string) *ChoiceAnswer { + s.Reason = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ChoiceAnswer) SetStatus(v string) *ChoiceAnswer { + s.Status = &v + return s +} + +// A choice summary that has been answered on a question in your workload. +type ChoiceAnswerSummary struct { + _ struct{} `type:"structure"` + + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // The reason why a choice is non-applicable to a question in your workload. + Reason *string `type:"string" enum:"ChoiceReason"` + + // The status of a choice. + Status *string `type:"string" enum:"ChoiceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceAnswerSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceAnswerSummary) GoString() string { + return s.String() +} + +// SetChoiceId sets the ChoiceId field's value. +func (s *ChoiceAnswerSummary) SetChoiceId(v string) *ChoiceAnswerSummary { + s.ChoiceId = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *ChoiceAnswerSummary) SetReason(v string) *ChoiceAnswerSummary { + s.Reason = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ChoiceAnswerSummary) SetStatus(v string) *ChoiceAnswerSummary { + s.Status = &v + return s +} + +// The choice content. +type ChoiceContent struct { + _ struct{} `type:"structure"` + + // The display text for the choice content. + DisplayText *string `min:"1" type:"string"` + + // The URL for the choice content. + Url *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceContent) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceContent) GoString() string { + return s.String() +} + +// SetDisplayText sets the DisplayText field's value. +func (s *ChoiceContent) SetDisplayText(v string) *ChoiceContent { + s.DisplayText = &v + return s +} + +// SetUrl sets the Url field's value. +func (s *ChoiceContent) SetUrl(v string) *ChoiceContent { + s.Url = &v + return s +} + +// The choice level improvement plan. +type ChoiceImprovementPlan struct { + _ struct{} `type:"structure"` + + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // The display text for the improvement plan. + DisplayText *string `min:"1" type:"string"` + + // The improvement plan URL for a question in an Amazon Web Services official + // lenses. + // + // This value is only available if the question has been answered. + // + // This value does not apply to custom lenses. + ImprovementPlanUrl *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceImprovementPlan) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceImprovementPlan) GoString() string { + return s.String() +} + +// SetChoiceId sets the ChoiceId field's value. +func (s *ChoiceImprovementPlan) SetChoiceId(v string) *ChoiceImprovementPlan { + s.ChoiceId = &v + return s +} + +// SetDisplayText sets the DisplayText field's value. +func (s *ChoiceImprovementPlan) SetDisplayText(v string) *ChoiceImprovementPlan { + s.DisplayText = &v + return s +} + +// SetImprovementPlanUrl sets the ImprovementPlanUrl field's value. +func (s *ChoiceImprovementPlan) SetImprovementPlanUrl(v string) *ChoiceImprovementPlan { + s.ImprovementPlanUrl = &v + return s +} + +// A list of choices to be updated. +type ChoiceUpdate struct { + _ struct{} `type:"structure"` + + // The notes associated with a choice. + Notes *string `type:"string"` + + // The reason why a choice is non-applicable to a question in your workload. + Reason *string `type:"string" enum:"ChoiceReason"` + + // The status of a choice. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"ChoiceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceUpdate) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChoiceUpdate) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ChoiceUpdate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ChoiceUpdate"} + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetNotes sets the Notes field's value. +func (s *ChoiceUpdate) SetNotes(v string) *ChoiceUpdate { + s.Notes = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *ChoiceUpdate) SetReason(v string) *ChoiceUpdate { + s.Reason = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ChoiceUpdate) SetStatus(v string) *ChoiceUpdate { + s.Status = &v + return s +} + +// The resource has already been processed, was deleted, or is too large. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Description of the error. + Message_ *string `locationName:"Message" type:"string"` + + // Identifier of the resource affected. + // + // ResourceId is a required field + ResourceId *string `type:"string" required:"true"` + + // Type of the resource affected. + // + // ResourceType is a required field + ResourceType *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A metric that contributes to the consolidated report. +type ConsolidatedReportMetric struct { + _ struct{} `type:"structure"` + + // The metrics for the lenses in the workload. + Lenses []*LensMetric `type:"list"` + + // The total number of lenses applied to the workload. + LensesAppliedCount *int64 `type:"integer"` + + // The metric type of a metric in the consolidated report. Currently only WORKLOAD + // metric types are supported. + MetricType *string `type:"string" enum:"MetricType"` + + // A map from risk names to the count of how many questions have that rating. + RiskCounts map[string]*int64 `type:"map"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` + + // The ARN for the workload. + WorkloadArn *string `type:"string"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` + + // The name of the workload. + // + // The name must be unique within an account within an Amazon Web Services Region. + // Spaces and capitalization are ignored when checking for uniqueness. + WorkloadName *string `min:"3" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConsolidatedReportMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConsolidatedReportMetric) GoString() string { + return s.String() +} + +// SetLenses sets the Lenses field's value. +func (s *ConsolidatedReportMetric) SetLenses(v []*LensMetric) *ConsolidatedReportMetric { + s.Lenses = v + return s +} + +// SetLensesAppliedCount sets the LensesAppliedCount field's value. +func (s *ConsolidatedReportMetric) SetLensesAppliedCount(v int64) *ConsolidatedReportMetric { + s.LensesAppliedCount = &v + return s +} + +// SetMetricType sets the MetricType field's value. +func (s *ConsolidatedReportMetric) SetMetricType(v string) *ConsolidatedReportMetric { + s.MetricType = &v + return s +} + +// SetRiskCounts sets the RiskCounts field's value. +func (s *ConsolidatedReportMetric) SetRiskCounts(v map[string]*int64) *ConsolidatedReportMetric { + s.RiskCounts = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ConsolidatedReportMetric) SetUpdatedAt(v time.Time) *ConsolidatedReportMetric { + s.UpdatedAt = &v + return s +} + +// SetWorkloadArn sets the WorkloadArn field's value. +func (s *ConsolidatedReportMetric) SetWorkloadArn(v string) *ConsolidatedReportMetric { + s.WorkloadArn = &v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *ConsolidatedReportMetric) SetWorkloadId(v string) *ConsolidatedReportMetric { + s.WorkloadId = &v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *ConsolidatedReportMetric) SetWorkloadName(v string) *ConsolidatedReportMetric { + s.WorkloadName = &v + return s +} + +type CreateLensShareInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + // + // SharedWith is a required field + SharedWith *string `min:"12" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLensShareInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLensShareInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLensShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLensShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.SharedWith == nil { + invalidParams.Add(request.NewErrParamRequired("SharedWith")) + } + if s.SharedWith != nil && len(*s.SharedWith) < 12 { + invalidParams.Add(request.NewErrParamMinLen("SharedWith", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateLensShareInput) SetClientRequestToken(v string) *CreateLensShareInput { + s.ClientRequestToken = &v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *CreateLensShareInput) SetLensAlias(v string) *CreateLensShareInput { + s.LensAlias = &v + return s +} + +// SetSharedWith sets the SharedWith field's value. +func (s *CreateLensShareInput) SetSharedWith(v string) *CreateLensShareInput { + s.SharedWith = &v + return s +} + +type CreateLensShareOutput struct { + _ struct{} `type:"structure"` + + // The ID associated with the share. + ShareId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLensShareOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLensShareOutput) GoString() string { + return s.String() +} + +// SetShareId sets the ShareId field's value. +func (s *CreateLensShareOutput) SetShareId(v string) *CreateLensShareOutput { + s.ShareId = &v + return s +} + +type CreateLensVersionInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // Set to true if this new major lens version. + IsMajorVersion *bool `type:"boolean"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The version of the lens being created. + // + // LensVersion is a required field + LensVersion *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLensVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLensVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLensVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLensVersionInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.LensVersion == nil { + invalidParams.Add(request.NewErrParamRequired("LensVersion")) + } + if s.LensVersion != nil && len(*s.LensVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateLensVersionInput) SetClientRequestToken(v string) *CreateLensVersionInput { + s.ClientRequestToken = &v + return s +} + +// SetIsMajorVersion sets the IsMajorVersion field's value. +func (s *CreateLensVersionInput) SetIsMajorVersion(v bool) *CreateLensVersionInput { + s.IsMajorVersion = &v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *CreateLensVersionInput) SetLensAlias(v string) *CreateLensVersionInput { + s.LensAlias = &v + return s +} + +// SetLensVersion sets the LensVersion field's value. +func (s *CreateLensVersionInput) SetLensVersion(v string) *CreateLensVersionInput { + s.LensVersion = &v + return s +} + +type CreateLensVersionOutput struct { + _ struct{} `type:"structure"` + + // The ARN for the lens. + LensArn *string `type:"string"` + + // The version of the lens. + LensVersion *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLensVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLensVersionOutput) GoString() string { + return s.String() +} + +// SetLensArn sets the LensArn field's value. +func (s *CreateLensVersionOutput) SetLensArn(v string) *CreateLensVersionOutput { + s.LensArn = &v + return s +} + +// SetLensVersion sets the LensVersion field's value. +func (s *CreateLensVersionOutput) SetLensVersion(v string) *CreateLensVersionOutput { + s.LensVersion = &v + return s +} + +// Input for milestone creation. +type CreateMilestoneInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The name of the milestone in a workload. + // + // Milestone names must be unique within a workload. + // + // MilestoneName is a required field + MilestoneName *string `min:"3" type:"string" required:"true"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMilestoneInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMilestoneInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateMilestoneInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateMilestoneInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.MilestoneName == nil { + invalidParams.Add(request.NewErrParamRequired("MilestoneName")) + } + if s.MilestoneName != nil && len(*s.MilestoneName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("MilestoneName", 3)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateMilestoneInput) SetClientRequestToken(v string) *CreateMilestoneInput { + s.ClientRequestToken = &v + return s +} + +// SetMilestoneName sets the MilestoneName field's value. +func (s *CreateMilestoneInput) SetMilestoneName(v string) *CreateMilestoneInput { + s.MilestoneName = &v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *CreateMilestoneInput) SetWorkloadId(v string) *CreateMilestoneInput { + s.WorkloadId = &v + return s +} + +// Output of a create milestone call. +type CreateMilestoneOutput struct { + _ struct{} `type:"structure"` + + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMilestoneOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateMilestoneOutput) GoString() string { + return s.String() +} + +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *CreateMilestoneOutput) SetMilestoneNumber(v int64) *CreateMilestoneOutput { + s.MilestoneNumber = &v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *CreateMilestoneOutput) SetWorkloadId(v string) *CreateMilestoneOutput { + s.WorkloadId = &v + return s +} + +type CreateProfileInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The profile description. + // + // ProfileDescription is a required field + ProfileDescription *string `min:"3" type:"string" required:"true"` + + // Name of the profile. + // + // ProfileName is a required field + ProfileName *string `min:"3" type:"string" required:"true"` + + // The profile questions. + // + // ProfileQuestions is a required field + ProfileQuestions []*ProfileQuestionUpdate `type:"list" required:"true"` + + // The tags assigned to the profile. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateProfileInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.ProfileDescription == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileDescription")) + } + if s.ProfileDescription != nil && len(*s.ProfileDescription) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ProfileDescription", 3)) + } + if s.ProfileName == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileName")) + } + if s.ProfileName != nil && len(*s.ProfileName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ProfileName", 3)) + } + if s.ProfileQuestions == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileQuestions")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ProfileQuestions != nil { + for i, v := range s.ProfileQuestions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProfileQuestions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateProfileInput) SetClientRequestToken(v string) *CreateProfileInput { + s.ClientRequestToken = &v + return s +} + +// SetProfileDescription sets the ProfileDescription field's value. +func (s *CreateProfileInput) SetProfileDescription(v string) *CreateProfileInput { + s.ProfileDescription = &v + return s +} + +// SetProfileName sets the ProfileName field's value. +func (s *CreateProfileInput) SetProfileName(v string) *CreateProfileInput { + s.ProfileName = &v + return s +} + +// SetProfileQuestions sets the ProfileQuestions field's value. +func (s *CreateProfileInput) SetProfileQuestions(v []*ProfileQuestionUpdate) *CreateProfileInput { + s.ProfileQuestions = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateProfileInput) SetTags(v map[string]*string) *CreateProfileInput { + s.Tags = v + return s +} + +type CreateProfileOutput struct { + _ struct{} `type:"structure"` + + // The profile ARN. + ProfileArn *string `type:"string"` + + // Version of the profile. + ProfileVersion *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileOutput) GoString() string { + return s.String() +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *CreateProfileOutput) SetProfileArn(v string) *CreateProfileOutput { + s.ProfileArn = &v + return s +} + +// SetProfileVersion sets the ProfileVersion field's value. +func (s *CreateProfileOutput) SetProfileVersion(v string) *CreateProfileOutput { + s.ProfileVersion = &v + return s +} + +type CreateProfileShareInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The profile ARN. + // + // ProfileArn is a required field + ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` + + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + // + // SharedWith is a required field + SharedWith *string `min:"12" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileShareInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileShareInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateProfileShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateProfileShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.ProfileArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileArn")) + } + if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) + } + if s.SharedWith == nil { + invalidParams.Add(request.NewErrParamRequired("SharedWith")) + } + if s.SharedWith != nil && len(*s.SharedWith) < 12 { + invalidParams.Add(request.NewErrParamMinLen("SharedWith", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateProfileShareInput) SetClientRequestToken(v string) *CreateProfileShareInput { + s.ClientRequestToken = &v + return s +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *CreateProfileShareInput) SetProfileArn(v string) *CreateProfileShareInput { + s.ProfileArn = &v + return s +} + +// SetSharedWith sets the SharedWith field's value. +func (s *CreateProfileShareInput) SetSharedWith(v string) *CreateProfileShareInput { + s.SharedWith = &v + return s +} + +type CreateProfileShareOutput struct { + _ struct{} `type:"structure"` + + // The profile ARN. + ProfileArn *string `type:"string"` + + // The ID associated with the share. + ShareId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileShareOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateProfileShareOutput) GoString() string { + return s.String() +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *CreateProfileShareOutput) SetProfileArn(v string) *CreateProfileShareOutput { + s.ProfileArn = &v + return s +} + +// SetShareId sets the ShareId field's value. +func (s *CreateProfileShareOutput) SetShareId(v string) *CreateProfileShareOutput { + s.ShareId = &v + return s +} + +type CreateReviewTemplateInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The review template description. + // + // Description is a required field + Description *string `min:"3" type:"string" required:"true"` + + // Lenses applied to the review template. + // + // Lenses is a required field + Lenses []*string `type:"list" required:"true"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // The tags assigned to the review template. + Tags map[string]*string `min:"1" type:"map"` + + // Name of the review template. + // + // TemplateName is a required field + TemplateName *string `min:"3" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReviewTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReviewTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateReviewTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateReviewTemplateInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.Description == nil { + invalidParams.Add(request.NewErrParamRequired("Description")) + } + if s.Description != nil && len(*s.Description) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Description", 3)) + } + if s.Lenses == nil { + invalidParams.Add(request.NewErrParamRequired("Lenses")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateReviewTemplateInput) SetClientRequestToken(v string) *CreateReviewTemplateInput { + s.ClientRequestToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateReviewTemplateInput) SetDescription(v string) *CreateReviewTemplateInput { + s.Description = &v + return s +} + +// SetLenses sets the Lenses field's value. +func (s *CreateReviewTemplateInput) SetLenses(v []*string) *CreateReviewTemplateInput { + s.Lenses = v + return s +} + +// SetNotes sets the Notes field's value. +func (s *CreateReviewTemplateInput) SetNotes(v string) *CreateReviewTemplateInput { + s.Notes = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateReviewTemplateInput) SetTags(v map[string]*string) *CreateReviewTemplateInput { + s.Tags = v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CreateReviewTemplateInput) SetTemplateName(v string) *CreateReviewTemplateInput { + s.TemplateName = &v + return s +} + +type CreateReviewTemplateOutput struct { _ struct{} `type:"structure"` - // A list of selected choices to a question in your workload. - ChoiceAnswers []*ChoiceAnswer `type:"list"` + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` +} - // List of choices available for a question. - Choices []*Choice `type:"list"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReviewTemplateOutput) String() string { + return awsutil.Prettify(s) +} - // The helpful resource text to be displayed for a custom lens. +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateReviewTemplateOutput) GoString() string { + return s.String() +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *CreateReviewTemplateOutput) SetTemplateArn(v string) *CreateReviewTemplateOutput { + s.TemplateArn = &v + return s +} + +type CreateTemplateShareInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). // - // This field does not apply to Amazon Web Services official lenses. - HelpfulResourceDisplayText *string `min:"1" type:"string"` + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` - // The helpful resource URL. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + // + // SharedWith is a required field + SharedWith *string `min:"12" type:"string" required:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateShareInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateShareInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTemplateShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTemplateShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.SharedWith == nil { + invalidParams.Add(request.NewErrParamRequired("SharedWith")) + } + if s.SharedWith != nil && len(*s.SharedWith) < 12 { + invalidParams.Add(request.NewErrParamMinLen("SharedWith", 12)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateTemplateShareInput) SetClientRequestToken(v string) *CreateTemplateShareInput { + s.ClientRequestToken = &v + return s +} + +// SetSharedWith sets the SharedWith field's value. +func (s *CreateTemplateShareInput) SetSharedWith(v string) *CreateTemplateShareInput { + s.SharedWith = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *CreateTemplateShareInput) SetTemplateArn(v string) *CreateTemplateShareInput { + s.TemplateArn = &v + return s +} + +type CreateTemplateShareOutput struct { + _ struct{} `type:"structure"` + + // The ID associated with the share. + ShareId *string `type:"string"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateShareOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateShareOutput) GoString() string { + return s.String() +} + +// SetShareId sets the ShareId field's value. +func (s *CreateTemplateShareOutput) SetShareId(v string) *CreateTemplateShareOutput { + s.ShareId = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *CreateTemplateShareOutput) SetTemplateArn(v string) *CreateTemplateShareOutput { + s.TemplateArn = &v + return s +} + +// Input for workload creation. +type CreateWorkloadInput struct { + _ struct{} `type:"structure"` + + // The list of Amazon Web Services account IDs associated with the workload. + AccountIds []*string `type:"list"` + + // List of AppRegistry application ARNs associated to the workload. + Applications []*string `type:"list"` + + // The URL of the architectural design for the workload. + ArchitecturalDesign *string `type:"string"` + + // The list of Amazon Web Services Regions associated with the workload, for + // example, us-east-2, or ca-central-1. + AwsRegions []*string `type:"list"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + + // The description for the workload. + // + // Description is a required field + Description *string `min:"3" type:"string" required:"true"` + + // Well-Architected discovery configuration settings associated to the workload. + DiscoveryConfig *WorkloadDiscoveryConfig `type:"structure"` + + // The environment for the workload. + // + // Environment is a required field + Environment *string `type:"string" required:"true" enum:"WorkloadEnvironment"` + + // The industry for the workload. + Industry *string `type:"string"` + + // The industry type for the workload. + // + // If specified, must be one of the following: + // + // * Agriculture + // + // * Automobile + // + // * Defense + // + // * Design and Engineering + // + // * Digital Advertising + // + // * Education + // + // * Environmental Protection + // + // * Financial Services + // + // * Gaming + // + // * General Public Services + // + // * Healthcare + // + // * Hospitality + // + // * InfoTech + // + // * Justice and Public Safety + // + // * Life Sciences + // + // * Manufacturing + // + // * Media & Entertainment + // + // * Mining & Resources + // + // * Oil & Gas + // + // * Power & Utilities + // + // * Professional Services + // + // * Real Estate & Construction + // + // * Retail & Wholesale + // + // * Social Protection // - // For Amazon Web Services official lenses, this is the helpful resource URL - // for a question or choice. + // * Telecommunications // - // For custom lenses, this is the helpful resource URL for a question and is - // only provided if HelpfulResourceDisplayText was specified for the question. - HelpfulResourceUrl *string `min:"1" type:"string"` + // * Travel, Transportation & Logistics + // + // * Other + IndustryType *string `type:"string"` - // The improvement plan URL for a question in an Amazon Web Services official - // lenses. + // The list of lenses associated with the workload. Each lens is identified + // by its LensSummary$LensAlias. // - // This value is only available if the question has been answered. + // If a review template that specifies lenses is applied to the workload, those + // lenses are applied to the workload in addition to these lenses. // - // This value does not apply to custom lenses. - ImprovementPlanUrl *string `min:"1" type:"string"` + // Lenses is a required field + Lenses []*string `type:"list" required:"true"` - // Defines whether this question is applicable to a lens review. - IsApplicable *bool `type:"boolean"` + // The list of non-Amazon Web Services Regions associated with the workload. + NonAwsRegions []*string `type:"list"` // The notes associated with the workload. - Notes *string `type:"string"` - - // The ID used to identify a pillar, for example, security. // - // A pillar is identified by its PillarReviewSummary$PillarId. - PillarId *string `min:"1" type:"string"` + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` - // The description of the question. - QuestionDescription *string `min:"1" type:"string"` + // The priorities of the pillars, which are used to order items in the improvement + // plan. Each pillar is represented by its PillarReviewSummary$PillarId. + PillarPriorities []*string `type:"list"` - // The ID of the question. - QuestionId *string `min:"1" type:"string"` + // The list of profile ARNs associated with the workload. + ProfileArns []*string `type:"list"` - // The title of the question. - QuestionTitle *string `min:"1" type:"string"` + // The review owner of the workload. The name, email address, or identifier + // for the primary group or individual that owns the workload review process. + ReviewOwner *string `min:"3" type:"string"` - // The reason why the question is not applicable to your workload. - Reason *string `type:"string" enum:"AnswerReason"` + // The list of review template ARNs to associate with the workload. + ReviewTemplateArns []*string `type:"list"` - // The risk for a given workload, lens review, pillar, or question. - Risk *string `type:"string" enum:"Risk"` + // The tags to be associated with the workload. + Tags map[string]*string `min:"1" type:"map"` - // List of selected choice IDs in a question answer. + // The name of the workload. // - // The values entered replace the previously selected choices. - SelectedChoices []*string `type:"list"` + // The name must be unique within an account within an Amazon Web Services Region. + // Spaces and capitalization are ignored when checking for uniqueness. + // + // WorkloadName is a required field + WorkloadName *string `min:"3" type:"string" required:"true"` } // String returns the string representation. @@ -6426,7 +10341,7 @@ type Answer struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Answer) String() string { +func (s CreateWorkloadInput) String() string { return awsutil.Prettify(s) } @@ -6435,131 +10350,237 @@ func (s Answer) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Answer) GoString() string { +func (s CreateWorkloadInput) GoString() string { return s.String() } -// SetChoiceAnswers sets the ChoiceAnswers field's value. -func (s *Answer) SetChoiceAnswers(v []*ChoiceAnswer) *Answer { - s.ChoiceAnswers = v +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateWorkloadInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateWorkloadInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.Description == nil { + invalidParams.Add(request.NewErrParamRequired("Description")) + } + if s.Description != nil && len(*s.Description) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Description", 3)) + } + if s.Environment == nil { + invalidParams.Add(request.NewErrParamRequired("Environment")) + } + if s.Lenses == nil { + invalidParams.Add(request.NewErrParamRequired("Lenses")) + } + if s.ReviewOwner != nil && len(*s.ReviewOwner) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ReviewOwner", 3)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.WorkloadName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadName")) + } + if s.WorkloadName != nil && len(*s.WorkloadName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountIds sets the AccountIds field's value. +func (s *CreateWorkloadInput) SetAccountIds(v []*string) *CreateWorkloadInput { + s.AccountIds = v return s } -// SetChoices sets the Choices field's value. -func (s *Answer) SetChoices(v []*Choice) *Answer { - s.Choices = v +// SetApplications sets the Applications field's value. +func (s *CreateWorkloadInput) SetApplications(v []*string) *CreateWorkloadInput { + s.Applications = v return s } -// SetHelpfulResourceDisplayText sets the HelpfulResourceDisplayText field's value. -func (s *Answer) SetHelpfulResourceDisplayText(v string) *Answer { - s.HelpfulResourceDisplayText = &v +// SetArchitecturalDesign sets the ArchitecturalDesign field's value. +func (s *CreateWorkloadInput) SetArchitecturalDesign(v string) *CreateWorkloadInput { + s.ArchitecturalDesign = &v return s } -// SetHelpfulResourceUrl sets the HelpfulResourceUrl field's value. -func (s *Answer) SetHelpfulResourceUrl(v string) *Answer { - s.HelpfulResourceUrl = &v +// SetAwsRegions sets the AwsRegions field's value. +func (s *CreateWorkloadInput) SetAwsRegions(v []*string) *CreateWorkloadInput { + s.AwsRegions = v return s } -// SetImprovementPlanUrl sets the ImprovementPlanUrl field's value. -func (s *Answer) SetImprovementPlanUrl(v string) *Answer { - s.ImprovementPlanUrl = &v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateWorkloadInput) SetClientRequestToken(v string) *CreateWorkloadInput { + s.ClientRequestToken = &v return s } -// SetIsApplicable sets the IsApplicable field's value. -func (s *Answer) SetIsApplicable(v bool) *Answer { - s.IsApplicable = &v +// SetDescription sets the Description field's value. +func (s *CreateWorkloadInput) SetDescription(v string) *CreateWorkloadInput { + s.Description = &v return s } -// SetNotes sets the Notes field's value. -func (s *Answer) SetNotes(v string) *Answer { - s.Notes = &v +// SetDiscoveryConfig sets the DiscoveryConfig field's value. +func (s *CreateWorkloadInput) SetDiscoveryConfig(v *WorkloadDiscoveryConfig) *CreateWorkloadInput { + s.DiscoveryConfig = v return s } -// SetPillarId sets the PillarId field's value. -func (s *Answer) SetPillarId(v string) *Answer { - s.PillarId = &v +// SetEnvironment sets the Environment field's value. +func (s *CreateWorkloadInput) SetEnvironment(v string) *CreateWorkloadInput { + s.Environment = &v return s } -// SetQuestionDescription sets the QuestionDescription field's value. -func (s *Answer) SetQuestionDescription(v string) *Answer { - s.QuestionDescription = &v +// SetIndustry sets the Industry field's value. +func (s *CreateWorkloadInput) SetIndustry(v string) *CreateWorkloadInput { + s.Industry = &v return s } -// SetQuestionId sets the QuestionId field's value. -func (s *Answer) SetQuestionId(v string) *Answer { - s.QuestionId = &v +// SetIndustryType sets the IndustryType field's value. +func (s *CreateWorkloadInput) SetIndustryType(v string) *CreateWorkloadInput { + s.IndustryType = &v return s } -// SetQuestionTitle sets the QuestionTitle field's value. -func (s *Answer) SetQuestionTitle(v string) *Answer { - s.QuestionTitle = &v +// SetLenses sets the Lenses field's value. +func (s *CreateWorkloadInput) SetLenses(v []*string) *CreateWorkloadInput { + s.Lenses = v return s } -// SetReason sets the Reason field's value. -func (s *Answer) SetReason(v string) *Answer { - s.Reason = &v +// SetNonAwsRegions sets the NonAwsRegions field's value. +func (s *CreateWorkloadInput) SetNonAwsRegions(v []*string) *CreateWorkloadInput { + s.NonAwsRegions = v return s } -// SetRisk sets the Risk field's value. -func (s *Answer) SetRisk(v string) *Answer { - s.Risk = &v +// SetNotes sets the Notes field's value. +func (s *CreateWorkloadInput) SetNotes(v string) *CreateWorkloadInput { + s.Notes = &v return s } -// SetSelectedChoices sets the SelectedChoices field's value. -func (s *Answer) SetSelectedChoices(v []*string) *Answer { - s.SelectedChoices = v +// SetPillarPriorities sets the PillarPriorities field's value. +func (s *CreateWorkloadInput) SetPillarPriorities(v []*string) *CreateWorkloadInput { + s.PillarPriorities = v return s } -// An answer summary of a lens review in a workload. -type AnswerSummary struct { +// SetProfileArns sets the ProfileArns field's value. +func (s *CreateWorkloadInput) SetProfileArns(v []*string) *CreateWorkloadInput { + s.ProfileArns = v + return s +} + +// SetReviewOwner sets the ReviewOwner field's value. +func (s *CreateWorkloadInput) SetReviewOwner(v string) *CreateWorkloadInput { + s.ReviewOwner = &v + return s +} + +// SetReviewTemplateArns sets the ReviewTemplateArns field's value. +func (s *CreateWorkloadInput) SetReviewTemplateArns(v []*string) *CreateWorkloadInput { + s.ReviewTemplateArns = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateWorkloadInput) SetTags(v map[string]*string) *CreateWorkloadInput { + s.Tags = v + return s +} + +// SetWorkloadName sets the WorkloadName field's value. +func (s *CreateWorkloadInput) SetWorkloadName(v string) *CreateWorkloadInput { + s.WorkloadName = &v + return s +} + +// Output of a create workload call. +type CreateWorkloadOutput struct { _ struct{} `type:"structure"` - // A list of selected choices to a question in your workload. - ChoiceAnswerSummaries []*ChoiceAnswerSummary `type:"list"` + // The ARN for the workload. + WorkloadArn *string `type:"string"` - // List of choices available for a question. - Choices []*Choice `type:"list"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` +} - // Defines whether this question is applicable to a lens review. - IsApplicable *bool `type:"boolean"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateWorkloadOutput) String() string { + return awsutil.Prettify(s) +} - // The ID used to identify a pillar, for example, security. - // - // A pillar is identified by its PillarReviewSummary$PillarId. - PillarId *string `min:"1" type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateWorkloadOutput) GoString() string { + return s.String() +} - // The ID of the question. - QuestionId *string `min:"1" type:"string"` +// SetWorkloadArn sets the WorkloadArn field's value. +func (s *CreateWorkloadOutput) SetWorkloadArn(v string) *CreateWorkloadOutput { + s.WorkloadArn = &v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *CreateWorkloadOutput) SetWorkloadId(v string) *CreateWorkloadOutput { + s.WorkloadId = &v + return s +} - // The title of the question. - QuestionTitle *string `min:"1" type:"string"` +// Input for Create Workload Share +type CreateWorkloadShareInput struct { + _ struct{} `type:"structure"` - // The type of the question. - QuestionType *string `type:"string" enum:"QuestionType"` + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` - // The reason why a choice is non-applicable to a question in your workload. - Reason *string `type:"string" enum:"AnswerReason"` + // Permission granted on a share request. + // + // PermissionType is a required field + PermissionType *string `type:"string" required:"true" enum:"PermissionType"` - // The risk for a given workload, lens review, pillar, or question. - Risk *string `type:"string" enum:"Risk"` + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + // + // SharedWith is a required field + SharedWith *string `min:"12" type:"string" required:"true"` - // List of selected choice IDs in a question answer. + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. // - // The values entered replace the previously selected choices. - SelectedChoices []*string `type:"list"` + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -6567,7 +10588,7 @@ type AnswerSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AnswerSummary) String() string { +func (s CreateWorkloadShareInput) String() string { return awsutil.Prettify(s) } @@ -6576,87 +10597,139 @@ func (s AnswerSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AnswerSummary) GoString() string { +func (s CreateWorkloadShareInput) GoString() string { return s.String() } -// SetChoiceAnswerSummaries sets the ChoiceAnswerSummaries field's value. -func (s *AnswerSummary) SetChoiceAnswerSummaries(v []*ChoiceAnswerSummary) *AnswerSummary { - s.ChoiceAnswerSummaries = v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateWorkloadShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateWorkloadShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.PermissionType == nil { + invalidParams.Add(request.NewErrParamRequired("PermissionType")) + } + if s.SharedWith == nil { + invalidParams.Add(request.NewErrParamRequired("SharedWith")) + } + if s.SharedWith != nil && len(*s.SharedWith) < 12 { + invalidParams.Add(request.NewErrParamMinLen("SharedWith", 12)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetChoices sets the Choices field's value. -func (s *AnswerSummary) SetChoices(v []*Choice) *AnswerSummary { - s.Choices = v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateWorkloadShareInput) SetClientRequestToken(v string) *CreateWorkloadShareInput { + s.ClientRequestToken = &v return s } -// SetIsApplicable sets the IsApplicable field's value. -func (s *AnswerSummary) SetIsApplicable(v bool) *AnswerSummary { - s.IsApplicable = &v +// SetPermissionType sets the PermissionType field's value. +func (s *CreateWorkloadShareInput) SetPermissionType(v string) *CreateWorkloadShareInput { + s.PermissionType = &v return s } -// SetPillarId sets the PillarId field's value. -func (s *AnswerSummary) SetPillarId(v string) *AnswerSummary { - s.PillarId = &v +// SetSharedWith sets the SharedWith field's value. +func (s *CreateWorkloadShareInput) SetSharedWith(v string) *CreateWorkloadShareInput { + s.SharedWith = &v return s } -// SetQuestionId sets the QuestionId field's value. -func (s *AnswerSummary) SetQuestionId(v string) *AnswerSummary { - s.QuestionId = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *CreateWorkloadShareInput) SetWorkloadId(v string) *CreateWorkloadShareInput { + s.WorkloadId = &v return s } -// SetQuestionTitle sets the QuestionTitle field's value. -func (s *AnswerSummary) SetQuestionTitle(v string) *AnswerSummary { - s.QuestionTitle = &v - return s +// Input for Create Workload Share +type CreateWorkloadShareOutput struct { + _ struct{} `type:"structure"` + + // The ID associated with the share. + ShareId *string `type:"string"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } -// SetQuestionType sets the QuestionType field's value. -func (s *AnswerSummary) SetQuestionType(v string) *AnswerSummary { - s.QuestionType = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateWorkloadShareOutput) String() string { + return awsutil.Prettify(s) } -// SetReason sets the Reason field's value. -func (s *AnswerSummary) SetReason(v string) *AnswerSummary { - s.Reason = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateWorkloadShareOutput) GoString() string { + return s.String() } -// SetRisk sets the Risk field's value. -func (s *AnswerSummary) SetRisk(v string) *AnswerSummary { - s.Risk = &v +// SetShareId sets the ShareId field's value. +func (s *CreateWorkloadShareOutput) SetShareId(v string) *CreateWorkloadShareOutput { + s.ShareId = &v return s } -// SetSelectedChoices sets the SelectedChoices field's value. -func (s *AnswerSummary) SetSelectedChoices(v []*string) *AnswerSummary { - s.SelectedChoices = v +// SetWorkloadId sets the WorkloadId field's value. +func (s *CreateWorkloadShareOutput) SetWorkloadId(v string) *CreateWorkloadShareOutput { + s.WorkloadId = &v return s } -// Input to associate lens reviews. -type AssociateLensesInput struct { - _ struct{} `type:"structure"` +type DeleteLensInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // List of lens aliases to associate or disassociate with a workload. Up to - // 10 lenses can be specified. + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). // - // Identify a lens using its LensSummary$LensAlias. + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. // - // LensAliases is a required field - LensAliases []*string `min:"1" type:"list" required:"true"` + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. + // The alias of the lens. // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The status of the lens to be deleted. + // + // LensStatus is a required field + LensStatus *string `location:"querystring" locationName:"LensStatus" type:"string" required:"true" enum:"LensStatusType"` } // String returns the string representation. @@ -6664,7 +10737,7 @@ type AssociateLensesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AssociateLensesInput) String() string { +func (s DeleteLensInput) String() string { return awsutil.Prettify(s) } @@ -6673,24 +10746,24 @@ func (s AssociateLensesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AssociateLensesInput) GoString() string { +func (s DeleteLensInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AssociateLensesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AssociateLensesInput"} - if s.LensAliases == nil { - invalidParams.Add(request.NewErrParamRequired("LensAliases")) +func (s *DeleteLensInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLensInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) } - if s.LensAliases != nil && len(s.LensAliases) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAliases", 1)) + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.LensStatus == nil { + invalidParams.Add(request.NewErrParamRequired("LensStatus")) } if invalidParams.Len() > 0 { @@ -6699,19 +10772,25 @@ func (s *AssociateLensesInput) Validate() error { return nil } -// SetLensAliases sets the LensAliases field's value. -func (s *AssociateLensesInput) SetLensAliases(v []*string) *AssociateLensesInput { - s.LensAliases = v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteLensInput) SetClientRequestToken(v string) *DeleteLensInput { + s.ClientRequestToken = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *AssociateLensesInput) SetWorkloadId(v string) *AssociateLensesInput { - s.WorkloadId = &v +// SetLensAlias sets the LensAlias field's value. +func (s *DeleteLensInput) SetLensAlias(v string) *DeleteLensInput { + s.LensAlias = &v return s } -type AssociateLensesOutput struct { +// SetLensStatus sets the LensStatus field's value. +func (s *DeleteLensInput) SetLensStatus(v string) *DeleteLensInput { + s.LensStatus = &v + return s +} + +type DeleteLensOutput struct { _ struct{} `type:"structure"` } @@ -6720,7 +10799,7 @@ type AssociateLensesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AssociateLensesOutput) String() string { +func (s DeleteLensOutput) String() string { return awsutil.Prettify(s) } @@ -6729,23 +10808,45 @@ func (s AssociateLensesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AssociateLensesOutput) GoString() string { +func (s DeleteLensOutput) GoString() string { return s.String() } -type AssociateProfilesInput struct { - _ struct{} `type:"structure"` +type DeleteLensShareInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The list of profile ARNs to associate with the workload. + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` + + // The alias of the lens. // - // ProfileArns is a required field - ProfileArns []*string `min:"1" type:"list" required:"true"` + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. + // The ID associated with the share. // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // ShareId is a required field + ShareId *string `location:"uri" locationName:"ShareId" type:"string" required:"true"` } // String returns the string representation. @@ -6753,7 +10854,7 @@ type AssociateProfilesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AssociateProfilesInput) String() string { +func (s DeleteLensShareInput) String() string { return awsutil.Prettify(s) } @@ -6762,24 +10863,27 @@ func (s AssociateProfilesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AssociateProfilesInput) GoString() string { +func (s DeleteLensShareInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AssociateProfilesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AssociateProfilesInput"} - if s.ProfileArns == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileArns")) +func (s *DeleteLensShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLensShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) } - if s.ProfileArns != nil && len(s.ProfileArns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileArns", 1)) + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.ShareId == nil { + invalidParams.Add(request.NewErrParamRequired("ShareId")) + } + if s.ShareId != nil && len(*s.ShareId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShareId", 1)) } if invalidParams.Len() > 0 { @@ -6788,50 +10892,26 @@ func (s *AssociateProfilesInput) Validate() error { return nil } -// SetProfileArns sets the ProfileArns field's value. -func (s *AssociateProfilesInput) SetProfileArns(v []*string) *AssociateProfilesInput { - s.ProfileArns = v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteLensShareInput) SetClientRequestToken(v string) *DeleteLensShareInput { + s.ClientRequestToken = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *AssociateProfilesInput) SetWorkloadId(v string) *AssociateProfilesInput { - s.WorkloadId = &v +// SetLensAlias sets the LensAlias field's value. +func (s *DeleteLensShareInput) SetLensAlias(v string) *DeleteLensShareInput { + s.LensAlias = &v return s } -type AssociateProfilesOutput struct { - _ struct{} `type:"structure"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AssociateProfilesOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s AssociateProfilesOutput) GoString() string { - return s.String() +// SetShareId sets the ShareId field's value. +func (s *DeleteLensShareInput) SetShareId(v string) *DeleteLensShareInput { + s.ShareId = &v + return s } -// A best practice, or question choice, that has been identified as a risk in -// this question. -type BestPractice struct { +type DeleteLensShareOutput struct { _ struct{} `type:"structure"` - - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` - - // The title of a choice. - ChoiceTitle *string `min:"1" type:"string"` } // String returns the string representation. @@ -6839,7 +10919,7 @@ type BestPractice struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s BestPractice) String() string { +func (s DeleteLensShareOutput) String() string { return awsutil.Prettify(s) } @@ -6848,67 +10928,31 @@ func (s BestPractice) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s BestPractice) GoString() string { +func (s DeleteLensShareOutput) GoString() string { return s.String() } -// SetChoiceId sets the ChoiceId field's value. -func (s *BestPractice) SetChoiceId(v string) *BestPractice { - s.ChoiceId = &v - return s -} - -// SetChoiceTitle sets the ChoiceTitle field's value. -func (s *BestPractice) SetChoiceTitle(v string) *BestPractice { - s.ChoiceTitle = &v - return s -} - -// Account details for a Well-Architected best practice in relation to Trusted -// Advisor checks. -type CheckDetail struct { - _ struct{} `type:"structure"` - - // An Amazon Web Services account ID. - AccountId *string `min:"12" type:"string"` - - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` - - // Trusted Advisor check description. - Description *string `type:"string"` - - // Count of flagged resources associated to the check. - FlaggedResources *int64 `min:"1" type:"integer"` - - // Trusted Advisor check ID. - Id *string `type:"string"` - - // Well-Architected Lens ARN associated to the check. - LensArn *string `type:"string"` - - // Trusted Advisor check name. - Name *string `type:"string"` +type DeleteProfileInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The ID used to identify a pillar, for example, security. + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). // - // A pillar is identified by its PillarReviewSummary$PillarId. - PillarId *string `min:"1" type:"string"` - - // Provider of the check related to the best practice. - Provider *string `type:"string" enum:"CheckProvider"` - - // The ID of the question. - QuestionId *string `min:"1" type:"string"` - - // Reason associated to the check. - Reason *string `type:"string" enum:"CheckFailureReason"` - - // Status associated to the check. - Status *string `type:"string" enum:"CheckStatus"` + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` - // The date and time recorded. - UpdatedAt *time.Time `type:"timestamp"` + // The profile ARN. + // + // ProfileArn is a required field + ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` } // String returns the string representation. @@ -6916,7 +10960,7 @@ type CheckDetail struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CheckDetail) String() string { +func (s DeleteProfileInput) String() string { return awsutil.Prettify(s) } @@ -6925,126 +10969,89 @@ func (s CheckDetail) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CheckDetail) GoString() string { +func (s DeleteProfileInput) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *CheckDetail) SetAccountId(v string) *CheckDetail { - s.AccountId = &v - return s -} - -// SetChoiceId sets the ChoiceId field's value. -func (s *CheckDetail) SetChoiceId(v string) *CheckDetail { - s.ChoiceId = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *CheckDetail) SetDescription(v string) *CheckDetail { - s.Description = &v - return s -} - -// SetFlaggedResources sets the FlaggedResources field's value. -func (s *CheckDetail) SetFlaggedResources(v int64) *CheckDetail { - s.FlaggedResources = &v - return s -} - -// SetId sets the Id field's value. -func (s *CheckDetail) SetId(v string) *CheckDetail { - s.Id = &v - return s -} - -// SetLensArn sets the LensArn field's value. -func (s *CheckDetail) SetLensArn(v string) *CheckDetail { - s.LensArn = &v - return s -} - -// SetName sets the Name field's value. -func (s *CheckDetail) SetName(v string) *CheckDetail { - s.Name = &v - return s -} - -// SetPillarId sets the PillarId field's value. -func (s *CheckDetail) SetPillarId(v string) *CheckDetail { - s.PillarId = &v - return s -} - -// SetProvider sets the Provider field's value. -func (s *CheckDetail) SetProvider(v string) *CheckDetail { - s.Provider = &v - return s -} - -// SetQuestionId sets the QuestionId field's value. -func (s *CheckDetail) SetQuestionId(v string) *CheckDetail { - s.QuestionId = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteProfileInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.ProfileArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileArn")) + } + if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) + } -// SetReason sets the Reason field's value. -func (s *CheckDetail) SetReason(v string) *CheckDetail { - s.Reason = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetStatus sets the Status field's value. -func (s *CheckDetail) SetStatus(v string) *CheckDetail { - s.Status = &v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteProfileInput) SetClientRequestToken(v string) *DeleteProfileInput { + s.ClientRequestToken = &v return s } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *CheckDetail) SetUpdatedAt(v time.Time) *CheckDetail { - s.UpdatedAt = &v +// SetProfileArn sets the ProfileArn field's value. +func (s *DeleteProfileInput) SetProfileArn(v string) *DeleteProfileInput { + s.ProfileArn = &v return s } -// Trusted Advisor check summary. -type CheckSummary struct { +type DeleteProfileOutput struct { _ struct{} `type:"structure"` +} - // Account summary associated to the check. - AccountSummary map[string]*int64 `type:"map"` - - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` - - // Trusted Advisor check description. - Description *string `type:"string"` - - // Trusted Advisor check ID. - Id *string `type:"string"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProfileOutput) String() string { + return awsutil.Prettify(s) +} - // Well-Architected Lens ARN associated to the check. - LensArn *string `type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProfileOutput) GoString() string { + return s.String() +} - // Trusted Advisor check name. - Name *string `type:"string"` +type DeleteProfileShareInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The ID used to identify a pillar, for example, security. + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). // - // A pillar is identified by its PillarReviewSummary$PillarId. - PillarId *string `min:"1" type:"string"` - - // Provider of the check related to the best practice. - Provider *string `type:"string" enum:"CheckProvider"` - - // The ID of the question. - QuestionId *string `min:"1" type:"string"` + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` - // Status associated to the check. - Status *string `type:"string" enum:"CheckStatus"` + // The profile ARN. + // + // ProfileArn is a required field + ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` - // The date and time recorded. - UpdatedAt *time.Time `type:"timestamp"` + // The ID associated with the share. + // + // ShareId is a required field + ShareId *string `location:"uri" locationName:"ShareId" type:"string" required:"true"` } // String returns the string representation. @@ -7052,7 +11059,7 @@ type CheckSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CheckSummary) String() string { +func (s DeleteProfileShareInput) String() string { return awsutil.Prettify(s) } @@ -7061,106 +11068,195 @@ func (s CheckSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CheckSummary) GoString() string { +func (s DeleteProfileShareInput) GoString() string { return s.String() } -// SetAccountSummary sets the AccountSummary field's value. -func (s *CheckSummary) SetAccountSummary(v map[string]*int64) *CheckSummary { - s.AccountSummary = v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteProfileShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteProfileShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.ProfileArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileArn")) + } + if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) + } + if s.ShareId == nil { + invalidParams.Add(request.NewErrParamRequired("ShareId")) + } + if s.ShareId != nil && len(*s.ShareId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShareId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetChoiceId sets the ChoiceId field's value. -func (s *CheckSummary) SetChoiceId(v string) *CheckSummary { - s.ChoiceId = &v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteProfileShareInput) SetClientRequestToken(v string) *DeleteProfileShareInput { + s.ClientRequestToken = &v return s } -// SetDescription sets the Description field's value. -func (s *CheckSummary) SetDescription(v string) *CheckSummary { - s.Description = &v +// SetProfileArn sets the ProfileArn field's value. +func (s *DeleteProfileShareInput) SetProfileArn(v string) *DeleteProfileShareInput { + s.ProfileArn = &v return s } -// SetId sets the Id field's value. -func (s *CheckSummary) SetId(v string) *CheckSummary { - s.Id = &v +// SetShareId sets the ShareId field's value. +func (s *DeleteProfileShareInput) SetShareId(v string) *DeleteProfileShareInput { + s.ShareId = &v return s } -// SetLensArn sets the LensArn field's value. -func (s *CheckSummary) SetLensArn(v string) *CheckSummary { - s.LensArn = &v - return s +type DeleteProfileShareOutput struct { + _ struct{} `type:"structure"` } -// SetName sets the Name field's value. -func (s *CheckSummary) SetName(v string) *CheckSummary { - s.Name = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProfileShareOutput) String() string { + return awsutil.Prettify(s) } -// SetPillarId sets the PillarId field's value. -func (s *CheckSummary) SetPillarId(v string) *CheckSummary { - s.PillarId = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProfileShareOutput) GoString() string { + return s.String() } -// SetProvider sets the Provider field's value. -func (s *CheckSummary) SetProvider(v string) *CheckSummary { - s.Provider = &v - return s +type DeleteReviewTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } -// SetQuestionId sets the QuestionId field's value. -func (s *CheckSummary) SetQuestionId(v string) *CheckSummary { - s.QuestionId = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReviewTemplateInput) String() string { + return awsutil.Prettify(s) } -// SetStatus sets the Status field's value. -func (s *CheckSummary) SetStatus(v string) *CheckSummary { - s.Status = &v +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReviewTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteReviewTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteReviewTemplateInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteReviewTemplateInput) SetClientRequestToken(v string) *DeleteReviewTemplateInput { + s.ClientRequestToken = &v return s } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *CheckSummary) SetUpdatedAt(v time.Time) *CheckSummary { - s.UpdatedAt = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *DeleteReviewTemplateInput) SetTemplateArn(v string) *DeleteReviewTemplateInput { + s.TemplateArn = &v return s } -// A choice available to answer question. -type Choice struct { +type DeleteReviewTemplateOutput struct { _ struct{} `type:"structure"` +} - // The additional resources for a choice in a custom lens. - // - // A choice can have up to two additional resources: one of type HELPFUL_RESOURCE, - // one of type IMPROVEMENT_PLAN, or both. - AdditionalResources []*AdditionalResources `type:"list"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReviewTemplateOutput) String() string { + return awsutil.Prettify(s) +} - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteReviewTemplateOutput) GoString() string { + return s.String() +} - // The description of a choice. - Description *string `min:"1" type:"string"` +type DeleteTemplateShareInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` - // The helpful resource (both text and URL) for a particular choice. + // The ID associated with the share. // - // This field only applies to custom lenses. Each choice can have only one helpful - // resource. - HelpfulResource *ChoiceContent `type:"structure"` + // ShareId is a required field + ShareId *string `location:"uri" locationName:"ShareId" type:"string" required:"true"` - // The improvement plan (both text and URL) for a particular choice. + // The review template ARN. // - // This field only applies to custom lenses. Each choice can have only one improvement - // plan. - ImprovementPlan *ChoiceContent `type:"structure"` - - // The title of a choice. - Title *string `min:"1" type:"string"` + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -7168,7 +11264,7 @@ type Choice struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Choice) String() string { +func (s DeleteTemplateShareInput) String() string { return awsutil.Prettify(s) } @@ -7177,61 +11273,98 @@ func (s Choice) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Choice) GoString() string { +func (s DeleteTemplateShareInput) GoString() string { return s.String() } -// SetAdditionalResources sets the AdditionalResources field's value. -func (s *Choice) SetAdditionalResources(v []*AdditionalResources) *Choice { - s.AdditionalResources = v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTemplateShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTemplateShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.ShareId == nil { + invalidParams.Add(request.NewErrParamRequired("ShareId")) + } + if s.ShareId != nil && len(*s.ShareId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShareId", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } -// SetChoiceId sets the ChoiceId field's value. -func (s *Choice) SetChoiceId(v string) *Choice { - s.ChoiceId = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetDescription sets the Description field's value. -func (s *Choice) SetDescription(v string) *Choice { - s.Description = &v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteTemplateShareInput) SetClientRequestToken(v string) *DeleteTemplateShareInput { + s.ClientRequestToken = &v return s } -// SetHelpfulResource sets the HelpfulResource field's value. -func (s *Choice) SetHelpfulResource(v *ChoiceContent) *Choice { - s.HelpfulResource = v +// SetShareId sets the ShareId field's value. +func (s *DeleteTemplateShareInput) SetShareId(v string) *DeleteTemplateShareInput { + s.ShareId = &v return s } -// SetImprovementPlan sets the ImprovementPlan field's value. -func (s *Choice) SetImprovementPlan(v *ChoiceContent) *Choice { - s.ImprovementPlan = v +// SetTemplateArn sets the TemplateArn field's value. +func (s *DeleteTemplateShareInput) SetTemplateArn(v string) *DeleteTemplateShareInput { + s.TemplateArn = &v return s } -// SetTitle sets the Title field's value. -func (s *Choice) SetTitle(v string) *Choice { - s.Title = &v - return s +type DeleteTemplateShareOutput struct { + _ struct{} `type:"structure"` } -// A choice that has been answered on a question in your workload. -type ChoiceAnswer struct { - _ struct{} `type:"structure"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTemplateShareOutput) String() string { + return awsutil.Prettify(s) +} - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTemplateShareOutput) GoString() string { + return s.String() +} - // The notes associated with a choice. - Notes *string `type:"string"` +// Input for workload deletion. +type DeleteWorkloadInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The reason why a choice is non-applicable to a question in your workload. - Reason *string `type:"string" enum:"ChoiceReason"` + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` - // The status of a choice. - Status *string `type:"string" enum:"ChoiceStatus"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -7239,7 +11372,7 @@ type ChoiceAnswer struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceAnswer) String() string { +func (s DeleteWorkloadInput) String() string { return awsutil.Prettify(s) } @@ -7248,46 +11381,43 @@ func (s ChoiceAnswer) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceAnswer) GoString() string { +func (s DeleteWorkloadInput) GoString() string { return s.String() } -// SetChoiceId sets the ChoiceId field's value. -func (s *ChoiceAnswer) SetChoiceId(v string) *ChoiceAnswer { - s.ChoiceId = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteWorkloadInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteWorkloadInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } -// SetNotes sets the Notes field's value. -func (s *ChoiceAnswer) SetNotes(v string) *ChoiceAnswer { - s.Notes = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetReason sets the Reason field's value. -func (s *ChoiceAnswer) SetReason(v string) *ChoiceAnswer { - s.Reason = &v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteWorkloadInput) SetClientRequestToken(v string) *DeleteWorkloadInput { + s.ClientRequestToken = &v return s } -// SetStatus sets the Status field's value. -func (s *ChoiceAnswer) SetStatus(v string) *ChoiceAnswer { - s.Status = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *DeleteWorkloadInput) SetWorkloadId(v string) *DeleteWorkloadInput { + s.WorkloadId = &v return s } -// A choice summary that has been answered on a question in your workload. -type ChoiceAnswerSummary struct { +type DeleteWorkloadOutput struct { _ struct{} `type:"structure"` - - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` - - // The reason why a choice is non-applicable to a question in your workload. - Reason *string `type:"string" enum:"ChoiceReason"` - - // The status of a choice. - Status *string `type:"string" enum:"ChoiceStatus"` } // String returns the string representation. @@ -7295,7 +11425,7 @@ type ChoiceAnswerSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceAnswerSummary) String() string { +func (s DeleteWorkloadOutput) String() string { return awsutil.Prettify(s) } @@ -7304,37 +11434,38 @@ func (s ChoiceAnswerSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceAnswerSummary) GoString() string { +func (s DeleteWorkloadOutput) GoString() string { return s.String() } -// SetChoiceId sets the ChoiceId field's value. -func (s *ChoiceAnswerSummary) SetChoiceId(v string) *ChoiceAnswerSummary { - s.ChoiceId = &v - return s -} - -// SetReason sets the Reason field's value. -func (s *ChoiceAnswerSummary) SetReason(v string) *ChoiceAnswerSummary { - s.Reason = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *ChoiceAnswerSummary) SetStatus(v string) *ChoiceAnswerSummary { - s.Status = &v - return s -} +// Input for Delete Workload Share +type DeleteWorkloadShareInput struct { + _ struct{} `type:"structure" nopayload:"true"` -// The choice content. -type ChoiceContent struct { - _ struct{} `type:"structure"` + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` - // The display text for the choice content. - DisplayText *string `min:"1" type:"string"` + // The ID associated with the share. + // + // ShareId is a required field + ShareId *string `location:"uri" locationName:"ShareId" type:"string" required:"true"` - // The URL for the choice content. - Url *string `min:"1" type:"string"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -7342,7 +11473,7 @@ type ChoiceContent struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceContent) String() string { +func (s DeleteWorkloadShareInput) String() string { return awsutil.Prettify(s) } @@ -7351,39 +11482,55 @@ func (s ChoiceContent) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceContent) GoString() string { +func (s DeleteWorkloadShareInput) GoString() string { return s.String() } -// SetDisplayText sets the DisplayText field's value. -func (s *ChoiceContent) SetDisplayText(v string) *ChoiceContent { - s.DisplayText = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteWorkloadShareInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteWorkloadShareInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.ShareId == nil { + invalidParams.Add(request.NewErrParamRequired("ShareId")) + } + if s.ShareId != nil && len(*s.ShareId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ShareId", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *DeleteWorkloadShareInput) SetClientRequestToken(v string) *DeleteWorkloadShareInput { + s.ClientRequestToken = &v return s } -// SetUrl sets the Url field's value. -func (s *ChoiceContent) SetUrl(v string) *ChoiceContent { - s.Url = &v +// SetShareId sets the ShareId field's value. +func (s *DeleteWorkloadShareInput) SetShareId(v string) *DeleteWorkloadShareInput { + s.ShareId = &v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *DeleteWorkloadShareInput) SetWorkloadId(v string) *DeleteWorkloadShareInput { + s.WorkloadId = &v return s } -// The choice level improvement plan. -type ChoiceImprovementPlan struct { +type DeleteWorkloadShareOutput struct { _ struct{} `type:"structure"` - - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` - - // The display text for the improvement plan. - DisplayText *string `min:"1" type:"string"` - - // The improvement plan URL for a question in an Amazon Web Services official - // lenses. - // - // This value is only available if the question has been answered. - // - // This value does not apply to custom lenses. - ImprovementPlanUrl *string `min:"1" type:"string"` } // String returns the string representation. @@ -7391,7 +11538,7 @@ type ChoiceImprovementPlan struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceImprovementPlan) String() string { +func (s DeleteWorkloadShareOutput) String() string { return awsutil.Prettify(s) } @@ -7400,42 +11547,27 @@ func (s ChoiceImprovementPlan) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceImprovementPlan) GoString() string { +func (s DeleteWorkloadShareOutput) GoString() string { return s.String() } -// SetChoiceId sets the ChoiceId field's value. -func (s *ChoiceImprovementPlan) SetChoiceId(v string) *ChoiceImprovementPlan { - s.ChoiceId = &v - return s -} - -// SetDisplayText sets the DisplayText field's value. -func (s *ChoiceImprovementPlan) SetDisplayText(v string) *ChoiceImprovementPlan { - s.DisplayText = &v - return s -} - -// SetImprovementPlanUrl sets the ImprovementPlanUrl field's value. -func (s *ChoiceImprovementPlan) SetImprovementPlanUrl(v string) *ChoiceImprovementPlan { - s.ImprovementPlanUrl = &v - return s -} - -// A list of choices to be updated. -type ChoiceUpdate struct { +// Input to disassociate lens reviews. +type DisassociateLensesInput struct { _ struct{} `type:"structure"` - // The notes associated with a choice. - Notes *string `type:"string"` - - // The reason why a choice is non-applicable to a question in your workload. - Reason *string `type:"string" enum:"ChoiceReason"` + // List of lens aliases to associate or disassociate with a workload. Up to + // 10 lenses can be specified. + // + // Identify a lens using its LensSummary$LensAlias. + // + // LensAliases is a required field + LensAliases []*string `min:"1" type:"list" required:"true"` - // The status of a choice. + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. // - // Status is a required field - Status *string `type:"string" required:"true" enum:"ChoiceStatus"` + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -7443,7 +11575,7 @@ type ChoiceUpdate struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceUpdate) String() string { +func (s DisassociateLensesInput) String() string { return awsutil.Prettify(s) } @@ -7452,15 +11584,24 @@ func (s ChoiceUpdate) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ChoiceUpdate) GoString() string { +func (s DisassociateLensesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ChoiceUpdate) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ChoiceUpdate"} - if s.Status == nil { - invalidParams.Add(request.NewErrParamRequired("Status")) +func (s *DisassociateLensesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateLensesInput"} + if s.LensAliases == nil { + invalidParams.Add(request.NewErrParamRequired("LensAliases")) + } + if s.LensAliases != nil && len(s.LensAliases) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAliases", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) } if invalidParams.Len() > 0 { @@ -7469,41 +11610,20 @@ func (s *ChoiceUpdate) Validate() error { return nil } -// SetNotes sets the Notes field's value. -func (s *ChoiceUpdate) SetNotes(v string) *ChoiceUpdate { - s.Notes = &v - return s -} - -// SetReason sets the Reason field's value. -func (s *ChoiceUpdate) SetReason(v string) *ChoiceUpdate { - s.Reason = &v +// SetLensAliases sets the LensAliases field's value. +func (s *DisassociateLensesInput) SetLensAliases(v []*string) *DisassociateLensesInput { + s.LensAliases = v return s } -// SetStatus sets the Status field's value. -func (s *ChoiceUpdate) SetStatus(v string) *ChoiceUpdate { - s.Status = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *DisassociateLensesInput) SetWorkloadId(v string) *DisassociateLensesInput { + s.WorkloadId = &v return s } -// The resource has already been processed, was deleted, or is too large. -type ConflictException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - // Description of the error. - Message_ *string `locationName:"Message" type:"string"` - - // Identifier of the resource affected. - // - // ResourceId is a required field - ResourceId *string `type:"string" required:"true"` - - // Type of the resource affected. - // - // ResourceType is a required field - ResourceType *string `type:"string" required:"true"` +type DisassociateLensesOutput struct { + _ struct{} `type:"structure"` } // String returns the string representation. @@ -7511,7 +11631,7 @@ type ConflictException struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ConflictException) String() string { +func (s DisassociateLensesOutput) String() string { return awsutil.Prettify(s) } @@ -7520,80 +11640,23 @@ func (s ConflictException) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ConflictException) GoString() string { +func (s DisassociateLensesOutput) GoString() string { return s.String() } -func newErrorConflictException(v protocol.ResponseMetadata) error { - return &ConflictException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *ConflictException) Code() string { - return "ConflictException" -} - -// Message returns the exception's message. -func (s *ConflictException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ConflictException) OrigErr() error { - return nil -} - -func (s *ConflictException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *ConflictException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *ConflictException) RequestID() string { - return s.RespMetadata.RequestID -} - -// A metric that contributes to the consolidated report. -type ConsolidatedReportMetric struct { +type DisassociateProfilesInput struct { _ struct{} `type:"structure"` - // The metrics for the lenses in the workload. - Lenses []*LensMetric `type:"list"` - - // The total number of lenses applied to the workload. - LensesAppliedCount *int64 `type:"integer"` - - // The metric type of a metric in the consolidated report. Currently only WORKLOAD - // metric types are supported. - MetricType *string `type:"string" enum:"MetricType"` - - // A map from risk names to the count of how many questions have that rating. - RiskCounts map[string]*int64 `type:"map"` - - // The date and time recorded. - UpdatedAt *time.Time `type:"timestamp"` - - // The ARN for the workload. - WorkloadArn *string `type:"string"` + // The list of profile ARNs to disassociate from the workload. + // + // ProfileArns is a required field + ProfileArns []*string `min:"1" type:"list" required:"true"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. - WorkloadId *string `min:"32" type:"string"` - - // The name of the workload. // - // The name must be unique within an account within an Amazon Web Services Region. - // Spaces and capitalization are ignored when checking for uniqueness. - WorkloadName *string `min:"3" type:"string"` + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -7601,7 +11664,7 @@ type ConsolidatedReportMetric struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ConsolidatedReportMetric) String() string { +func (s DisassociateProfilesInput) String() string { return awsutil.Prettify(s) } @@ -7610,74 +11673,68 @@ func (s ConsolidatedReportMetric) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ConsolidatedReportMetric) GoString() string { +func (s DisassociateProfilesInput) GoString() string { return s.String() } -// SetLenses sets the Lenses field's value. -func (s *ConsolidatedReportMetric) SetLenses(v []*LensMetric) *ConsolidatedReportMetric { - s.Lenses = v - return s -} - -// SetLensesAppliedCount sets the LensesAppliedCount field's value. -func (s *ConsolidatedReportMetric) SetLensesAppliedCount(v int64) *ConsolidatedReportMetric { - s.LensesAppliedCount = &v - return s -} - -// SetMetricType sets the MetricType field's value. -func (s *ConsolidatedReportMetric) SetMetricType(v string) *ConsolidatedReportMetric { - s.MetricType = &v - return s -} - -// SetRiskCounts sets the RiskCounts field's value. -func (s *ConsolidatedReportMetric) SetRiskCounts(v map[string]*int64) *ConsolidatedReportMetric { - s.RiskCounts = v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateProfilesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateProfilesInput"} + if s.ProfileArns == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileArns")) + } + if s.ProfileArns != nil && len(s.ProfileArns) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileArns", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *ConsolidatedReportMetric) SetUpdatedAt(v time.Time) *ConsolidatedReportMetric { - s.UpdatedAt = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetWorkloadArn sets the WorkloadArn field's value. -func (s *ConsolidatedReportMetric) SetWorkloadArn(v string) *ConsolidatedReportMetric { - s.WorkloadArn = &v +// SetProfileArns sets the ProfileArns field's value. +func (s *DisassociateProfilesInput) SetProfileArns(v []*string) *DisassociateProfilesInput { + s.ProfileArns = v return s } // SetWorkloadId sets the WorkloadId field's value. -func (s *ConsolidatedReportMetric) SetWorkloadId(v string) *ConsolidatedReportMetric { +func (s *DisassociateProfilesInput) SetWorkloadId(v string) *DisassociateProfilesInput { s.WorkloadId = &v return s } -// SetWorkloadName sets the WorkloadName field's value. -func (s *ConsolidatedReportMetric) SetWorkloadName(v string) *ConsolidatedReportMetric { - s.WorkloadName = &v - return s +type DisassociateProfilesOutput struct { + _ struct{} `type:"structure"` } -type CreateLensShareInput struct { - _ struct{} `type:"structure"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateProfilesOutput) String() string { + return awsutil.Prettify(s) +} - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateProfilesOutput) GoString() string { + return s.String() +} + +type ExportLensInput struct { + _ struct{} `type:"structure" nopayload:"true"` // The alias of the lens. // @@ -7693,11 +11750,8 @@ type CreateLensShareInput struct { // LensAlias is a required field LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. - // - // SharedWith is a required field - SharedWith *string `min:"12" type:"string" required:"true"` + // The lens version to be exported. + LensVersion *string `location:"querystring" locationName:"LensVersion" min:"1" type:"string"` } // String returns the string representation. @@ -7705,7 +11759,7 @@ type CreateLensShareInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLensShareInput) String() string { +func (s ExportLensInput) String() string { return awsutil.Prettify(s) } @@ -7714,27 +11768,21 @@ func (s CreateLensShareInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLensShareInput) GoString() string { +func (s ExportLensInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateLensShareInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateLensShareInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } +func (s *ExportLensInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExportLensInput"} if s.LensAlias == nil { invalidParams.Add(request.NewErrParamRequired("LensAlias")) } if s.LensAlias != nil && len(*s.LensAlias) < 1 { invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.SharedWith == nil { - invalidParams.Add(request.NewErrParamRequired("SharedWith")) - } - if s.SharedWith != nil && len(*s.SharedWith) < 12 { - invalidParams.Add(request.NewErrParamMinLen("SharedWith", 12)) + if s.LensVersion != nil && len(*s.LensVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensVersion", 1)) } if invalidParams.Len() > 0 { @@ -7743,29 +11791,23 @@ func (s *CreateLensShareInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateLensShareInput) SetClientRequestToken(v string) *CreateLensShareInput { - s.ClientRequestToken = &v - return s -} - // SetLensAlias sets the LensAlias field's value. -func (s *CreateLensShareInput) SetLensAlias(v string) *CreateLensShareInput { +func (s *ExportLensInput) SetLensAlias(v string) *ExportLensInput { s.LensAlias = &v return s } -// SetSharedWith sets the SharedWith field's value. -func (s *CreateLensShareInput) SetSharedWith(v string) *CreateLensShareInput { - s.SharedWith = &v +// SetLensVersion sets the LensVersion field's value. +func (s *ExportLensInput) SetLensVersion(v string) *ExportLensInput { + s.LensVersion = &v return s } -type CreateLensShareOutput struct { +type ExportLensOutput struct { _ struct{} `type:"structure"` - // The ID associated with the share. - ShareId *string `type:"string"` + // The JSON representation of a lens. + LensJSON *string `min:"2" type:"string"` } // String returns the string representation. @@ -7773,7 +11815,7 @@ type CreateLensShareOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLensShareOutput) String() string { +func (s ExportLensOutput) String() string { return awsutil.Prettify(s) } @@ -7782,35 +11824,19 @@ func (s CreateLensShareOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLensShareOutput) GoString() string { +func (s ExportLensOutput) GoString() string { return s.String() } -// SetShareId sets the ShareId field's value. -func (s *CreateLensShareOutput) SetShareId(v string) *CreateLensShareOutput { - s.ShareId = &v +// SetLensJSON sets the LensJSON field's value. +func (s *ExportLensOutput) SetLensJSON(v string) *ExportLensOutput { + s.LensJSON = &v return s } -type CreateLensVersionInput struct { - _ struct{} `type:"structure"` - - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` - - // Set to true if this new major lens version. - IsMajorVersion *bool `type:"boolean"` +// Input to get answer. +type GetAnswerInput struct { + _ struct{} `type:"structure" nopayload:"true"` // The alias of the lens. // @@ -7826,10 +11852,21 @@ type CreateLensVersionInput struct { // LensAlias is a required field LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The version of the lens being created. + // The milestone number. // - // LensVersion is a required field - LensVersion *string `min:"1" type:"string" required:"true"` + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` + + // The ID of the question. + // + // QuestionId is a required field + QuestionId *string `location:"uri" locationName:"QuestionId" min:"1" type:"string" required:"true"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -7837,7 +11874,7 @@ type CreateLensVersionInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLensVersionInput) String() string { +func (s GetAnswerInput) String() string { return awsutil.Prettify(s) } @@ -7846,27 +11883,33 @@ func (s CreateLensVersionInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLensVersionInput) GoString() string { +func (s GetAnswerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateLensVersionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateLensVersionInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } +func (s *GetAnswerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAnswerInput"} if s.LensAlias == nil { invalidParams.Add(request.NewErrParamRequired("LensAlias")) } if s.LensAlias != nil && len(*s.LensAlias) < 1 { invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.LensVersion == nil { - invalidParams.Add(request.NewErrParamRequired("LensVersion")) + if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) } - if s.LensVersion != nil && len(*s.LensVersion) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensVersion", 1)) + if s.QuestionId == nil { + invalidParams.Add(request.NewErrParamRequired("QuestionId")) + } + if s.QuestionId != nil && len(*s.QuestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) } if invalidParams.Len() > 0 { @@ -7875,38 +11918,60 @@ func (s *CreateLensVersionInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateLensVersionInput) SetClientRequestToken(v string) *CreateLensVersionInput { - s.ClientRequestToken = &v +// SetLensAlias sets the LensAlias field's value. +func (s *GetAnswerInput) SetLensAlias(v string) *GetAnswerInput { + s.LensAlias = &v return s } -// SetIsMajorVersion sets the IsMajorVersion field's value. -func (s *CreateLensVersionInput) SetIsMajorVersion(v bool) *CreateLensVersionInput { - s.IsMajorVersion = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *GetAnswerInput) SetMilestoneNumber(v int64) *GetAnswerInput { + s.MilestoneNumber = &v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *CreateLensVersionInput) SetLensAlias(v string) *CreateLensVersionInput { - s.LensAlias = &v +// SetQuestionId sets the QuestionId field's value. +func (s *GetAnswerInput) SetQuestionId(v string) *GetAnswerInput { + s.QuestionId = &v return s } -// SetLensVersion sets the LensVersion field's value. -func (s *CreateLensVersionInput) SetLensVersion(v string) *CreateLensVersionInput { - s.LensVersion = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *GetAnswerInput) SetWorkloadId(v string) *GetAnswerInput { + s.WorkloadId = &v return s } -type CreateLensVersionOutput struct { +// Output of a get answer call. +type GetAnswerOutput struct { _ struct{} `type:"structure"` + // An answer of the question. + Answer *Answer `type:"structure"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + // The ARN for the lens. LensArn *string `type:"string"` - // The version of the lens. - LensVersion *string `min:"1" type:"string"` + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -7914,7 +11979,7 @@ type CreateLensVersionOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLensVersionOutput) String() string { +func (s GetAnswerOutput) String() string { return awsutil.Prettify(s) } @@ -7923,52 +11988,58 @@ func (s CreateLensVersionOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateLensVersionOutput) GoString() string { +func (s GetAnswerOutput) GoString() string { return s.String() } +// SetAnswer sets the Answer field's value. +func (s *GetAnswerOutput) SetAnswer(v *Answer) *GetAnswerOutput { + s.Answer = v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *GetAnswerOutput) SetLensAlias(v string) *GetAnswerOutput { + s.LensAlias = &v + return s +} + // SetLensArn sets the LensArn field's value. -func (s *CreateLensVersionOutput) SetLensArn(v string) *CreateLensVersionOutput { +func (s *GetAnswerOutput) SetLensArn(v string) *GetAnswerOutput { s.LensArn = &v return s } -// SetLensVersion sets the LensVersion field's value. -func (s *CreateLensVersionOutput) SetLensVersion(v string) *CreateLensVersionOutput { - s.LensVersion = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *GetAnswerOutput) SetMilestoneNumber(v int64) *GetAnswerOutput { + s.MilestoneNumber = &v return s } -// Input for milestone creation. -type CreateMilestoneInput struct { - _ struct{} `type:"structure"` - - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +// SetWorkloadId sets the WorkloadId field's value. +func (s *GetAnswerOutput) SetWorkloadId(v string) *GetAnswerOutput { + s.WorkloadId = &v + return s +} - // The name of the milestone in a workload. +type GetConsolidatedReportInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The format of the consolidated report. // - // Milestone names must be unique within a workload. + // For PDF, Base64String is returned. For JSON, Metrics is returned. // - // MilestoneName is a required field - MilestoneName *string `min:"3" type:"string" required:"true"` + // Format is a required field + Format *string `location:"querystring" locationName:"Format" type:"string" required:"true" enum:"ReportFormat"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // Set to true to have shared resources included in the report. + IncludeSharedResources *bool `location:"querystring" locationName:"IncludeSharedResources" type:"boolean"` + + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } // String returns the string representation. @@ -7976,7 +12047,7 @@ type CreateMilestoneInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMilestoneInput) String() string { +func (s GetConsolidatedReportInput) String() string { return awsutil.Prettify(s) } @@ -7985,27 +12056,18 @@ func (s CreateMilestoneInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMilestoneInput) GoString() string { +func (s GetConsolidatedReportInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateMilestoneInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateMilestoneInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.MilestoneName == nil { - invalidParams.Add(request.NewErrParamRequired("MilestoneName")) - } - if s.MilestoneName != nil && len(*s.MilestoneName) < 3 { - invalidParams.Add(request.NewErrParamMinLen("MilestoneName", 3)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) +func (s *GetConsolidatedReportInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetConsolidatedReportInput"} + if s.Format == nil { + invalidParams.Add(request.NewErrParamRequired("Format")) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { @@ -8014,36 +12076,47 @@ func (s *CreateMilestoneInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateMilestoneInput) SetClientRequestToken(v string) *CreateMilestoneInput { - s.ClientRequestToken = &v +// SetFormat sets the Format field's value. +func (s *GetConsolidatedReportInput) SetFormat(v string) *GetConsolidatedReportInput { + s.Format = &v return s } -// SetMilestoneName sets the MilestoneName field's value. -func (s *CreateMilestoneInput) SetMilestoneName(v string) *CreateMilestoneInput { - s.MilestoneName = &v +// SetIncludeSharedResources sets the IncludeSharedResources field's value. +func (s *GetConsolidatedReportInput) SetIncludeSharedResources(v bool) *GetConsolidatedReportInput { + s.IncludeSharedResources = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *CreateMilestoneInput) SetWorkloadId(v string) *CreateMilestoneInput { - s.WorkloadId = &v +// SetMaxResults sets the MaxResults field's value. +func (s *GetConsolidatedReportInput) SetMaxResults(v int64) *GetConsolidatedReportInput { + s.MaxResults = &v return s } -// Output of a create milestone call. -type CreateMilestoneOutput struct { +// SetNextToken sets the NextToken field's value. +func (s *GetConsolidatedReportInput) SetNextToken(v string) *GetConsolidatedReportInput { + s.NextToken = &v + return s +} + +type GetConsolidatedReportOutput struct { _ struct{} `type:"structure"` - // The milestone number. + // The Base64-encoded string representation of a lens review report. // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` + // This data can be used to create a PDF file. + // + // Only returned by GetConsolidatedReport when PDF format is requested. + Base64String *string `type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The metrics that make up the consolidated report. + // + // Only returned when JSON format is requested. + Metrics []*ConsolidatedReportMetric `type:"list"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` } // String returns the string representation. @@ -8051,7 +12124,7 @@ type CreateMilestoneOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMilestoneOutput) String() string { +func (s GetConsolidatedReportOutput) String() string { return awsutil.Prettify(s) } @@ -8060,56 +12133,47 @@ func (s CreateMilestoneOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateMilestoneOutput) GoString() string { +func (s GetConsolidatedReportOutput) GoString() string { return s.String() } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *CreateMilestoneOutput) SetMilestoneNumber(v int64) *CreateMilestoneOutput { - s.MilestoneNumber = &v +// SetBase64String sets the Base64String field's value. +func (s *GetConsolidatedReportOutput) SetBase64String(v string) *GetConsolidatedReportOutput { + s.Base64String = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *CreateMilestoneOutput) SetWorkloadId(v string) *CreateMilestoneOutput { - s.WorkloadId = &v +// SetMetrics sets the Metrics field's value. +func (s *GetConsolidatedReportOutput) SetMetrics(v []*ConsolidatedReportMetric) *GetConsolidatedReportOutput { + s.Metrics = v return s } -type CreateProfileInput struct { - _ struct{} `type:"structure"` +// SetNextToken sets the NextToken field's value. +func (s *GetConsolidatedReportOutput) SetNextToken(v string) *GetConsolidatedReportOutput { + s.NextToken = &v + return s +} - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +type GetLensInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The profile description. + // The alias of the lens. // - // ProfileDescription is a required field - ProfileDescription *string `min:"3" type:"string" required:"true"` - - // Name of the profile. + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. // - // ProfileName is a required field - ProfileName *string `min:"3" type:"string" required:"true"` - - // The profile questions. + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. // - // ProfileQuestions is a required field - ProfileQuestions []*ProfileQuestionUpdate `type:"list" required:"true"` + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The tags assigned to the profile. - Tags map[string]*string `min:"1" type:"map"` + // The lens version to be retrieved. + LensVersion *string `location:"querystring" locationName:"LensVersion" min:"1" type:"string"` } // String returns the string representation. @@ -8117,7 +12181,7 @@ type CreateProfileInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateProfileInput) String() string { +func (s GetLensInput) String() string { return awsutil.Prettify(s) } @@ -8126,43 +12190,21 @@ func (s CreateProfileInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateProfileInput) GoString() string { +func (s GetLensInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateProfileInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateProfileInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.ProfileDescription == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileDescription")) - } - if s.ProfileDescription != nil && len(*s.ProfileDescription) < 3 { - invalidParams.Add(request.NewErrParamMinLen("ProfileDescription", 3)) - } - if s.ProfileName == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileName")) - } - if s.ProfileName != nil && len(*s.ProfileName) < 3 { - invalidParams.Add(request.NewErrParamMinLen("ProfileName", 3)) - } - if s.ProfileQuestions == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileQuestions")) +func (s *GetLensInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLensInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.ProfileQuestions != nil { - for i, v := range s.ProfileQuestions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProfileQuestions", i), err.(request.ErrInvalidParams)) - } - } + if s.LensVersion != nil && len(*s.LensVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensVersion", 1)) } if invalidParams.Len() > 0 { @@ -8171,44 +12213,23 @@ func (s *CreateProfileInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateProfileInput) SetClientRequestToken(v string) *CreateProfileInput { - s.ClientRequestToken = &v - return s -} - -// SetProfileDescription sets the ProfileDescription field's value. -func (s *CreateProfileInput) SetProfileDescription(v string) *CreateProfileInput { - s.ProfileDescription = &v - return s -} - -// SetProfileName sets the ProfileName field's value. -func (s *CreateProfileInput) SetProfileName(v string) *CreateProfileInput { - s.ProfileName = &v - return s -} - -// SetProfileQuestions sets the ProfileQuestions field's value. -func (s *CreateProfileInput) SetProfileQuestions(v []*ProfileQuestionUpdate) *CreateProfileInput { - s.ProfileQuestions = v +// SetLensAlias sets the LensAlias field's value. +func (s *GetLensInput) SetLensAlias(v string) *GetLensInput { + s.LensAlias = &v return s } -// SetTags sets the Tags field's value. -func (s *CreateProfileInput) SetTags(v map[string]*string) *CreateProfileInput { - s.Tags = v +// SetLensVersion sets the LensVersion field's value. +func (s *GetLensInput) SetLensVersion(v string) *GetLensInput { + s.LensVersion = &v return s } -type CreateProfileOutput struct { +type GetLensOutput struct { _ struct{} `type:"structure"` - // The profile ARN. - ProfileArn *string `type:"string"` - - // Version of the profile. - ProfileVersion *string `min:"1" type:"string"` + // A lens return object. + Lens *Lens `type:"structure"` } // String returns the string representation. @@ -8216,7 +12237,7 @@ type CreateProfileOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateProfileOutput) String() string { +func (s GetLensOutput) String() string { return awsutil.Prettify(s) } @@ -8225,49 +12246,44 @@ func (s CreateProfileOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateProfileOutput) GoString() string { +func (s GetLensOutput) GoString() string { return s.String() } -// SetProfileArn sets the ProfileArn field's value. -func (s *CreateProfileOutput) SetProfileArn(v string) *CreateProfileOutput { - s.ProfileArn = &v - return s -} - -// SetProfileVersion sets the ProfileVersion field's value. -func (s *CreateProfileOutput) SetProfileVersion(v string) *CreateProfileOutput { - s.ProfileVersion = &v +// SetLens sets the Lens field's value. +func (s *GetLensOutput) SetLens(v *Lens) *GetLensOutput { + s.Lens = v return s } -type CreateProfileShareInput struct { - _ struct{} `type:"structure"` +// Input to get lens review. +type GetLensReviewInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). + // The alias of the lens. // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The profile ARN. + // The milestone number. // - // ProfileArn is a required field - ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. // - // SharedWith is a required field - SharedWith *string `min:"12" type:"string" required:"true"` + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -8275,7 +12291,7 @@ type CreateProfileShareInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateProfileShareInput) String() string { +func (s GetLensReviewInput) String() string { return awsutil.Prettify(s) } @@ -8284,27 +12300,27 @@ func (s CreateProfileShareInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateProfileShareInput) GoString() string { +func (s GetLensReviewInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateProfileShareInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateProfileShareInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) +func (s *GetLensReviewInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLensReviewInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } - if s.ProfileArn == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileArn")) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) + if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) } - if s.SharedWith == nil { - invalidParams.Add(request.NewErrParamRequired("SharedWith")) + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) } - if s.SharedWith != nil && len(*s.SharedWith) < 12 { - invalidParams.Add(request.NewErrParamMinLen("SharedWith", 12)) + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) } if invalidParams.Len() > 0 { @@ -8313,32 +12329,39 @@ func (s *CreateProfileShareInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateProfileShareInput) SetClientRequestToken(v string) *CreateProfileShareInput { - s.ClientRequestToken = &v +// SetLensAlias sets the LensAlias field's value. +func (s *GetLensReviewInput) SetLensAlias(v string) *GetLensReviewInput { + s.LensAlias = &v return s } -// SetProfileArn sets the ProfileArn field's value. -func (s *CreateProfileShareInput) SetProfileArn(v string) *CreateProfileShareInput { - s.ProfileArn = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *GetLensReviewInput) SetMilestoneNumber(v int64) *GetLensReviewInput { + s.MilestoneNumber = &v return s } -// SetSharedWith sets the SharedWith field's value. -func (s *CreateProfileShareInput) SetSharedWith(v string) *CreateProfileShareInput { - s.SharedWith = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *GetLensReviewInput) SetWorkloadId(v string) *GetLensReviewInput { + s.WorkloadId = &v return s } -type CreateProfileShareOutput struct { +// Output of a get lens review call. +type GetLensReviewOutput struct { _ struct{} `type:"structure"` - // The profile ARN. - ProfileArn *string `type:"string"` + // A lens review of a question. + LensReview *LensReview `type:"structure"` - // The ID associated with the share. - ShareId *string `type:"string"` + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -8346,7 +12369,7 @@ type CreateProfileShareOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateProfileShareOutput) String() string { +func (s GetLensReviewOutput) String() string { return awsutil.Prettify(s) } @@ -8355,161 +12378,56 @@ func (s CreateProfileShareOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateProfileShareOutput) GoString() string { +func (s GetLensReviewOutput) GoString() string { return s.String() } -// SetProfileArn sets the ProfileArn field's value. -func (s *CreateProfileShareOutput) SetProfileArn(v string) *CreateProfileShareOutput { - s.ProfileArn = &v +// SetLensReview sets the LensReview field's value. +func (s *GetLensReviewOutput) SetLensReview(v *LensReview) *GetLensReviewOutput { + s.LensReview = v return s } -// SetShareId sets the ShareId field's value. -func (s *CreateProfileShareOutput) SetShareId(v string) *CreateProfileShareOutput { - s.ShareId = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *GetLensReviewOutput) SetMilestoneNumber(v int64) *GetLensReviewOutput { + s.MilestoneNumber = &v return s } -// Input for workload creation. -type CreateWorkloadInput struct { - _ struct{} `type:"structure"` - - // The list of Amazon Web Services account IDs associated with the workload. - AccountIds []*string `type:"list"` - - // List of AppRegistry application ARNs associated to the workload. - Applications []*string `type:"list"` - - // The URL of the architectural design for the workload. - ArchitecturalDesign *string `type:"string"` - - // The list of Amazon Web Services Regions associated with the workload, for - // example, us-east-2, or ca-central-1. - AwsRegions []*string `type:"list"` - - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` - - // The description for the workload. - // - // Description is a required field - Description *string `min:"3" type:"string" required:"true"` - - // Well-Architected discovery configuration settings associated to the workload. - DiscoveryConfig *WorkloadDiscoveryConfig `type:"structure"` - - // The environment for the workload. - // - // Environment is a required field - Environment *string `type:"string" required:"true" enum:"WorkloadEnvironment"` - - // The industry for the workload. - Industry *string `type:"string"` - - // The industry type for the workload. - // - // If specified, must be one of the following: - // - // * Agriculture - // - // * Automobile - // - // * Defense - // - // * Design and Engineering - // - // * Digital Advertising - // - // * Education - // - // * Environmental Protection - // - // * Financial Services - // - // * Gaming - // - // * General Public Services - // - // * Healthcare - // - // * Hospitality - // - // * InfoTech - // - // * Justice and Public Safety - // - // * Life Sciences - // - // * Manufacturing - // - // * Media & Entertainment - // - // * Mining & Resources - // - // * Oil & Gas - // - // * Power & Utilities - // - // * Professional Services - // - // * Real Estate & Construction - // - // * Retail & Wholesale - // - // * Social Protection - // - // * Telecommunications - // - // * Travel, Transportation & Logistics - // - // * Other - IndustryType *string `type:"string"` - - // The list of lenses associated with the workload. Each lens is identified - // by its LensSummary$LensAlias. - // - // Lenses is a required field - Lenses []*string `type:"list" required:"true"` - - // The list of non-Amazon Web Services Regions associated with the workload. - NonAwsRegions []*string `type:"list"` - - // The notes associated with the workload. - Notes *string `type:"string"` - - // The priorities of the pillars, which are used to order items in the improvement - // plan. Each pillar is represented by its PillarReviewSummary$PillarId. - PillarPriorities []*string `type:"list"` - - // The list of profile ARNs associated with the workload. - ProfileArns []*string `type:"list"` +// SetWorkloadId sets the WorkloadId field's value. +func (s *GetLensReviewOutput) SetWorkloadId(v string) *GetLensReviewOutput { + s.WorkloadId = &v + return s +} - // The review owner of the workload. The name, email address, or identifier - // for the primary group or individual that owns the workload review process. - ReviewOwner *string `min:"3" type:"string"` +// Input to get lens review report. +type GetLensReviewReportInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The tags to be associated with the workload. - Tags map[string]*string `min:"1" type:"map"` + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The name of the workload. + // The milestone number. // - // The name must be unique within an account within an Amazon Web Services Region. - // Spaces and capitalization are ignored when checking for uniqueness. + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. // - // WorkloadName is a required field - WorkloadName *string `min:"3" type:"string" required:"true"` + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -8517,7 +12435,7 @@ type CreateWorkloadInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateWorkloadInput) String() string { +func (s GetLensReviewReportInput) String() string { return awsutil.Prettify(s) } @@ -8526,39 +12444,27 @@ func (s CreateWorkloadInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateWorkloadInput) GoString() string { +func (s GetLensReviewReportInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateWorkloadInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateWorkloadInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.Description == nil { - invalidParams.Add(request.NewErrParamRequired("Description")) - } - if s.Description != nil && len(*s.Description) < 3 { - invalidParams.Add(request.NewErrParamMinLen("Description", 3)) - } - if s.Environment == nil { - invalidParams.Add(request.NewErrParamRequired("Environment")) - } - if s.Lenses == nil { - invalidParams.Add(request.NewErrParamRequired("Lenses")) +func (s *GetLensReviewReportInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLensReviewReportInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } - if s.ReviewOwner != nil && len(*s.ReviewOwner) < 3 { - invalidParams.Add(request.NewErrParamMinLen("ReviewOwner", 3)) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) } - if s.WorkloadName == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadName")) + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) } - if s.WorkloadName != nil && len(*s.WorkloadName) < 3 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadName", 3)) + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) } if invalidParams.Len() > 0 { @@ -8567,124 +12473,188 @@ func (s *CreateWorkloadInput) Validate() error { return nil } -// SetAccountIds sets the AccountIds field's value. -func (s *CreateWorkloadInput) SetAccountIds(v []*string) *CreateWorkloadInput { - s.AccountIds = v +// SetLensAlias sets the LensAlias field's value. +func (s *GetLensReviewReportInput) SetLensAlias(v string) *GetLensReviewReportInput { + s.LensAlias = &v return s } -// SetApplications sets the Applications field's value. -func (s *CreateWorkloadInput) SetApplications(v []*string) *CreateWorkloadInput { - s.Applications = v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *GetLensReviewReportInput) SetMilestoneNumber(v int64) *GetLensReviewReportInput { + s.MilestoneNumber = &v return s } -// SetArchitecturalDesign sets the ArchitecturalDesign field's value. -func (s *CreateWorkloadInput) SetArchitecturalDesign(v string) *CreateWorkloadInput { - s.ArchitecturalDesign = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *GetLensReviewReportInput) SetWorkloadId(v string) *GetLensReviewReportInput { + s.WorkloadId = &v return s } -// SetAwsRegions sets the AwsRegions field's value. -func (s *CreateWorkloadInput) SetAwsRegions(v []*string) *CreateWorkloadInput { - s.AwsRegions = v - return s -} +// Output of a get lens review report call. +type GetLensReviewReportOutput struct { + _ struct{} `type:"structure"` -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateWorkloadInput) SetClientRequestToken(v string) *CreateWorkloadInput { - s.ClientRequestToken = &v - return s -} + // A report of a lens review. + LensReviewReport *LensReviewReport `type:"structure"` -// SetDescription sets the Description field's value. -func (s *CreateWorkloadInput) SetDescription(v string) *CreateWorkloadInput { - s.Description = &v - return s + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } -// SetDiscoveryConfig sets the DiscoveryConfig field's value. -func (s *CreateWorkloadInput) SetDiscoveryConfig(v *WorkloadDiscoveryConfig) *CreateWorkloadInput { - s.DiscoveryConfig = v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLensReviewReportOutput) String() string { + return awsutil.Prettify(s) } -// SetEnvironment sets the Environment field's value. -func (s *CreateWorkloadInput) SetEnvironment(v string) *CreateWorkloadInput { - s.Environment = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLensReviewReportOutput) GoString() string { + return s.String() } -// SetIndustry sets the Industry field's value. -func (s *CreateWorkloadInput) SetIndustry(v string) *CreateWorkloadInput { - s.Industry = &v +// SetLensReviewReport sets the LensReviewReport field's value. +func (s *GetLensReviewReportOutput) SetLensReviewReport(v *LensReviewReport) *GetLensReviewReportOutput { + s.LensReviewReport = v return s } -// SetIndustryType sets the IndustryType field's value. -func (s *CreateWorkloadInput) SetIndustryType(v string) *CreateWorkloadInput { - s.IndustryType = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *GetLensReviewReportOutput) SetMilestoneNumber(v int64) *GetLensReviewReportOutput { + s.MilestoneNumber = &v return s } -// SetLenses sets the Lenses field's value. -func (s *CreateWorkloadInput) SetLenses(v []*string) *CreateWorkloadInput { - s.Lenses = v +// SetWorkloadId sets the WorkloadId field's value. +func (s *GetLensReviewReportOutput) SetWorkloadId(v string) *GetLensReviewReportOutput { + s.WorkloadId = &v return s } -// SetNonAwsRegions sets the NonAwsRegions field's value. -func (s *CreateWorkloadInput) SetNonAwsRegions(v []*string) *CreateWorkloadInput { - s.NonAwsRegions = v - return s +type GetLensVersionDifferenceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The base version of the lens. + BaseLensVersion *string `location:"querystring" locationName:"BaseLensVersion" min:"1" type:"string"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The lens version to target a difference for. + TargetLensVersion *string `location:"querystring" locationName:"TargetLensVersion" min:"1" type:"string"` } -// SetNotes sets the Notes field's value. -func (s *CreateWorkloadInput) SetNotes(v string) *CreateWorkloadInput { - s.Notes = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLensVersionDifferenceInput) String() string { + return awsutil.Prettify(s) } -// SetPillarPriorities sets the PillarPriorities field's value. -func (s *CreateWorkloadInput) SetPillarPriorities(v []*string) *CreateWorkloadInput { - s.PillarPriorities = v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLensVersionDifferenceInput) GoString() string { + return s.String() } -// SetProfileArns sets the ProfileArns field's value. -func (s *CreateWorkloadInput) SetProfileArns(v []*string) *CreateWorkloadInput { - s.ProfileArns = v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetLensVersionDifferenceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLensVersionDifferenceInput"} + if s.BaseLensVersion != nil && len(*s.BaseLensVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BaseLensVersion", 1)) + } + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.TargetLensVersion != nil && len(*s.TargetLensVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TargetLensVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetReviewOwner sets the ReviewOwner field's value. -func (s *CreateWorkloadInput) SetReviewOwner(v string) *CreateWorkloadInput { - s.ReviewOwner = &v +// SetBaseLensVersion sets the BaseLensVersion field's value. +func (s *GetLensVersionDifferenceInput) SetBaseLensVersion(v string) *GetLensVersionDifferenceInput { + s.BaseLensVersion = &v return s } -// SetTags sets the Tags field's value. -func (s *CreateWorkloadInput) SetTags(v map[string]*string) *CreateWorkloadInput { - s.Tags = v +// SetLensAlias sets the LensAlias field's value. +func (s *GetLensVersionDifferenceInput) SetLensAlias(v string) *GetLensVersionDifferenceInput { + s.LensAlias = &v return s } -// SetWorkloadName sets the WorkloadName field's value. -func (s *CreateWorkloadInput) SetWorkloadName(v string) *CreateWorkloadInput { - s.WorkloadName = &v +// SetTargetLensVersion sets the TargetLensVersion field's value. +func (s *GetLensVersionDifferenceInput) SetTargetLensVersion(v string) *GetLensVersionDifferenceInput { + s.TargetLensVersion = &v return s } -// Output of a create workload call. -type CreateWorkloadOutput struct { - _ struct{} `type:"structure"` +type GetLensVersionDifferenceOutput struct { + _ struct{} `type:"structure"` + + // The base version of the lens. + BaseLensVersion *string `min:"1" type:"string"` + + // The latest version of the lens. + LatestLensVersion *string `min:"1" type:"string"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // The ARN for the lens. + LensArn *string `type:"string"` - // The ARN for the workload. - WorkloadArn *string `type:"string"` + // The target lens version for the lens. + TargetLensVersion *string `min:"1" type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The differences between the base and latest versions of the lens. + VersionDifferences *VersionDifferences `type:"structure"` } // String returns the string representation. @@ -8692,7 +12662,7 @@ type CreateWorkloadOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateWorkloadOutput) String() string { +func (s GetLensVersionDifferenceOutput) String() string { return awsutil.Prettify(s) } @@ -8701,50 +12671,56 @@ func (s CreateWorkloadOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateWorkloadOutput) GoString() string { +func (s GetLensVersionDifferenceOutput) GoString() string { return s.String() } -// SetWorkloadArn sets the WorkloadArn field's value. -func (s *CreateWorkloadOutput) SetWorkloadArn(v string) *CreateWorkloadOutput { - s.WorkloadArn = &v +// SetBaseLensVersion sets the BaseLensVersion field's value. +func (s *GetLensVersionDifferenceOutput) SetBaseLensVersion(v string) *GetLensVersionDifferenceOutput { + s.BaseLensVersion = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *CreateWorkloadOutput) SetWorkloadId(v string) *CreateWorkloadOutput { - s.WorkloadId = &v +// SetLatestLensVersion sets the LatestLensVersion field's value. +func (s *GetLensVersionDifferenceOutput) SetLatestLensVersion(v string) *GetLensVersionDifferenceOutput { + s.LatestLensVersion = &v return s } -// Input for Create Workload Share -type CreateWorkloadShareInput struct { - _ struct{} `type:"structure"` +// SetLensAlias sets the LensAlias field's value. +func (s *GetLensVersionDifferenceOutput) SetLensAlias(v string) *GetLensVersionDifferenceOutput { + s.LensAlias = &v + return s +} - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +// SetLensArn sets the LensArn field's value. +func (s *GetLensVersionDifferenceOutput) SetLensArn(v string) *GetLensVersionDifferenceOutput { + s.LensArn = &v + return s +} - // Permission granted on a share request. - // - // PermissionType is a required field - PermissionType *string `type:"string" required:"true" enum:"PermissionType"` +// SetTargetLensVersion sets the TargetLensVersion field's value. +func (s *GetLensVersionDifferenceOutput) SetTargetLensVersion(v string) *GetLensVersionDifferenceOutput { + s.TargetLensVersion = &v + return s +} + +// SetVersionDifferences sets the VersionDifferences field's value. +func (s *GetLensVersionDifferenceOutput) SetVersionDifferences(v *VersionDifferences) *GetLensVersionDifferenceOutput { + s.VersionDifferences = v + return s +} + +// Input to get a milestone. +type GetMilestoneInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The milestone number. // - // SharedWith is a required field - SharedWith *string `min:"12" type:"string" required:"true"` + // A workload can have a maximum of 100 milestones. + // + // MilestoneNumber is a required field + MilestoneNumber *int64 `location:"uri" locationName:"MilestoneNumber" min:"1" type:"integer" required:"true"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. @@ -8758,7 +12734,7 @@ type CreateWorkloadShareInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateWorkloadShareInput) String() string { +func (s GetMilestoneInput) String() string { return awsutil.Prettify(s) } @@ -8767,24 +12743,18 @@ func (s CreateWorkloadShareInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateWorkloadShareInput) GoString() string { +func (s GetMilestoneInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateWorkloadShareInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateWorkloadShareInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.PermissionType == nil { - invalidParams.Add(request.NewErrParamRequired("PermissionType")) - } - if s.SharedWith == nil { - invalidParams.Add(request.NewErrParamRequired("SharedWith")) +func (s *GetMilestoneInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMilestoneInput"} + if s.MilestoneNumber == nil { + invalidParams.Add(request.NewErrParamRequired("MilestoneNumber")) } - if s.SharedWith != nil && len(*s.SharedWith) < 12 { - invalidParams.Add(request.NewErrParamMinLen("SharedWith", 12)) + if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) } if s.WorkloadId == nil { invalidParams.Add(request.NewErrParamRequired("WorkloadId")) @@ -8799,36 +12769,24 @@ func (s *CreateWorkloadShareInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *CreateWorkloadShareInput) SetClientRequestToken(v string) *CreateWorkloadShareInput { - s.ClientRequestToken = &v - return s -} - -// SetPermissionType sets the PermissionType field's value. -func (s *CreateWorkloadShareInput) SetPermissionType(v string) *CreateWorkloadShareInput { - s.PermissionType = &v - return s -} - -// SetSharedWith sets the SharedWith field's value. -func (s *CreateWorkloadShareInput) SetSharedWith(v string) *CreateWorkloadShareInput { - s.SharedWith = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *GetMilestoneInput) SetMilestoneNumber(v int64) *GetMilestoneInput { + s.MilestoneNumber = &v return s } // SetWorkloadId sets the WorkloadId field's value. -func (s *CreateWorkloadShareInput) SetWorkloadId(v string) *CreateWorkloadShareInput { +func (s *GetMilestoneInput) SetWorkloadId(v string) *GetMilestoneInput { s.WorkloadId = &v return s } -// Input for Create Workload Share -type CreateWorkloadShareOutput struct { +// Output of a get milestone call. +type GetMilestoneOutput struct { _ struct{} `type:"structure"` - // The ID associated with the share. - ShareId *string `type:"string"` + // A milestone return object. + Milestone *Milestone `type:"structure"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. @@ -8840,7 +12798,7 @@ type CreateWorkloadShareOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateWorkloadShareOutput) String() string { +func (s GetMilestoneOutput) String() string { return awsutil.Prettify(s) } @@ -8849,57 +12807,32 @@ func (s CreateWorkloadShareOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s CreateWorkloadShareOutput) GoString() string { +func (s GetMilestoneOutput) GoString() string { return s.String() } -// SetShareId sets the ShareId field's value. -func (s *CreateWorkloadShareOutput) SetShareId(v string) *CreateWorkloadShareOutput { - s.ShareId = &v +// SetMilestone sets the Milestone field's value. +func (s *GetMilestoneOutput) SetMilestone(v *Milestone) *GetMilestoneOutput { + s.Milestone = v return s } // SetWorkloadId sets the WorkloadId field's value. -func (s *CreateWorkloadShareOutput) SetWorkloadId(v string) *CreateWorkloadShareOutput { +func (s *GetMilestoneOutput) SetWorkloadId(v string) *GetMilestoneOutput { s.WorkloadId = &v return s } -type DeleteLensInput struct { +type GetProfileInput struct { _ struct{} `type:"structure" nopayload:"true"` - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` - - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. + // The profile ARN. // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + // ProfileArn is a required field + ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` - // The status of the lens to be deleted. - // - // LensStatus is a required field - LensStatus *string `location:"querystring" locationName:"LensStatus" type:"string" required:"true" enum:"LensStatusType"` + // The profile version. + ProfileVersion *string `location:"querystring" locationName:"ProfileVersion" min:"1" type:"string"` } // String returns the string representation. @@ -8907,7 +12840,7 @@ type DeleteLensInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteLensInput) String() string { +func (s GetProfileInput) String() string { return awsutil.Prettify(s) } @@ -8916,24 +12849,21 @@ func (s DeleteLensInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteLensInput) GoString() string { +func (s GetProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteLensInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteLensInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) +func (s *GetProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetProfileInput"} + if s.ProfileArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileArn")) } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) } - if s.LensStatus == nil { - invalidParams.Add(request.NewErrParamRequired("LensStatus")) + if s.ProfileVersion != nil && len(*s.ProfileVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileVersion", 1)) } if invalidParams.Len() > 0 { @@ -8942,26 +12872,76 @@ func (s *DeleteLensInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DeleteLensInput) SetClientRequestToken(v string) *DeleteLensInput { - s.ClientRequestToken = &v +// SetProfileArn sets the ProfileArn field's value. +func (s *GetProfileInput) SetProfileArn(v string) *GetProfileInput { + s.ProfileArn = &v + return s +} + +// SetProfileVersion sets the ProfileVersion field's value. +func (s *GetProfileInput) SetProfileVersion(v string) *GetProfileInput { + s.ProfileVersion = &v + return s +} + +type GetProfileOutput struct { + _ struct{} `type:"structure"` + + // The profile. + Profile *Profile `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProfileOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProfileOutput) GoString() string { + return s.String() +} + +// SetProfile sets the Profile field's value. +func (s *GetProfileOutput) SetProfile(v *Profile) *GetProfileOutput { + s.Profile = v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *DeleteLensInput) SetLensAlias(v string) *DeleteLensInput { - s.LensAlias = &v - return s +type GetProfileTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProfileTemplateInput) String() string { + return awsutil.Prettify(s) } -// SetLensStatus sets the LensStatus field's value. -func (s *DeleteLensInput) SetLensStatus(v string) *DeleteLensInput { - s.LensStatus = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetProfileTemplateInput) GoString() string { + return s.String() } -type DeleteLensOutput struct { +type GetProfileTemplateOutput struct { _ struct{} `type:"structure"` + + // The profile template. + ProfileTemplate *ProfileTemplate `type:"structure"` } // String returns the string representation. @@ -8969,7 +12949,7 @@ type DeleteLensOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteLensOutput) String() string { +func (s GetProfileTemplateOutput) String() string { return awsutil.Prettify(s) } @@ -8978,26 +12958,18 @@ func (s DeleteLensOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteLensOutput) GoString() string { +func (s GetProfileTemplateOutput) GoString() string { return s.String() } -type DeleteLensShareInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetProfileTemplate sets the ProfileTemplate field's value. +func (s *GetProfileTemplateOutput) SetProfileTemplate(v *ProfileTemplate) *GetProfileTemplateOutput { + s.ProfileTemplate = v + return s +} - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` +type GetReviewTemplateAnswerInput struct { + _ struct{} `type:"structure" nopayload:"true"` // The alias of the lens. // @@ -9013,10 +12985,15 @@ type DeleteLensShareInput struct { // LensAlias is a required field LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The ID associated with the share. + // The ID of the question. // - // ShareId is a required field - ShareId *string `location:"uri" locationName:"ShareId" type:"string" required:"true"` + // QuestionId is a required field + QuestionId *string `location:"uri" locationName:"QuestionId" min:"1" type:"string" required:"true"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -9024,7 +13001,7 @@ type DeleteLensShareInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteLensShareInput) String() string { +func (s GetReviewTemplateAnswerInput) String() string { return awsutil.Prettify(s) } @@ -9033,27 +13010,30 @@ func (s DeleteLensShareInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteLensShareInput) GoString() string { +func (s GetReviewTemplateAnswerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteLensShareInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteLensShareInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } +func (s *GetReviewTemplateAnswerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetReviewTemplateAnswerInput"} if s.LensAlias == nil { invalidParams.Add(request.NewErrParamRequired("LensAlias")) } if s.LensAlias != nil && len(*s.LensAlias) < 1 { invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.ShareId == nil { - invalidParams.Add(request.NewErrParamRequired("ShareId")) + if s.QuestionId == nil { + invalidParams.Add(request.NewErrParamRequired("QuestionId")) } - if s.ShareId != nil && len(*s.ShareId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ShareId", 1)) + if s.QuestionId != nil && len(*s.QuestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) } if invalidParams.Len() > 0 { @@ -9062,26 +13042,44 @@ func (s *DeleteLensShareInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DeleteLensShareInput) SetClientRequestToken(v string) *DeleteLensShareInput { - s.ClientRequestToken = &v +// SetLensAlias sets the LensAlias field's value. +func (s *GetReviewTemplateAnswerInput) SetLensAlias(v string) *GetReviewTemplateAnswerInput { + s.LensAlias = &v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *DeleteLensShareInput) SetLensAlias(v string) *DeleteLensShareInput { - s.LensAlias = &v +// SetQuestionId sets the QuestionId field's value. +func (s *GetReviewTemplateAnswerInput) SetQuestionId(v string) *GetReviewTemplateAnswerInput { + s.QuestionId = &v return s } -// SetShareId sets the ShareId field's value. -func (s *DeleteLensShareInput) SetShareId(v string) *DeleteLensShareInput { - s.ShareId = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateAnswerInput) SetTemplateArn(v string) *GetReviewTemplateAnswerInput { + s.TemplateArn = &v return s } -type DeleteLensShareOutput struct { +type GetReviewTemplateAnswerOutput struct { _ struct{} `type:"structure"` + + // An answer of the question. + Answer *ReviewTemplateAnswer `type:"structure"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` } // String returns the string representation. @@ -9089,7 +13087,7 @@ type DeleteLensShareOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteLensShareOutput) String() string { +func (s GetReviewTemplateAnswerOutput) String() string { return awsutil.Prettify(s) } @@ -9098,31 +13096,35 @@ func (s DeleteLensShareOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteLensShareOutput) GoString() string { +func (s GetReviewTemplateAnswerOutput) GoString() string { return s.String() } -type DeleteProfileInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetAnswer sets the Answer field's value. +func (s *GetReviewTemplateAnswerOutput) SetAnswer(v *ReviewTemplateAnswer) *GetReviewTemplateAnswerOutput { + s.Answer = v + return s +} - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` +// SetLensAlias sets the LensAlias field's value. +func (s *GetReviewTemplateAnswerOutput) SetLensAlias(v string) *GetReviewTemplateAnswerOutput { + s.LensAlias = &v + return s +} - // The profile ARN. +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateAnswerOutput) SetTemplateArn(v string) *GetReviewTemplateAnswerOutput { + s.TemplateArn = &v + return s +} + +type GetReviewTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The review template ARN. // - // ProfileArn is a required field - ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -9130,7 +13132,7 @@ type DeleteProfileInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteProfileInput) String() string { +func (s GetReviewTemplateInput) String() string { return awsutil.Prettify(s) } @@ -9139,21 +13141,18 @@ func (s DeleteProfileInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteProfileInput) GoString() string { +func (s GetReviewTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteProfileInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteProfileInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.ProfileArn == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileArn")) +func (s *GetReviewTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetReviewTemplateInput"} + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) } - if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) } if invalidParams.Len() > 0 { @@ -9162,66 +13161,33 @@ func (s *DeleteProfileInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DeleteProfileInput) SetClientRequestToken(v string) *DeleteProfileInput { - s.ClientRequestToken = &v - return s -} - -// SetProfileArn sets the ProfileArn field's value. -func (s *DeleteProfileInput) SetProfileArn(v string) *DeleteProfileInput { - s.ProfileArn = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateInput) SetTemplateArn(v string) *GetReviewTemplateInput { + s.TemplateArn = &v return s } -type DeleteProfileOutput struct { - _ struct{} `type:"structure"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeleteProfileOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeleteProfileOutput) GoString() string { - return s.String() -} - -type DeleteProfileShareInput struct { +type GetReviewTemplateLensReviewInput struct { _ struct{} `type:"structure" nopayload:"true"` - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). + // The alias of the lens. // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` - - // The profile ARN. + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. // - // ProfileArn is a required field - ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The ID associated with the share. + // The review template ARN. // - // ShareId is a required field - ShareId *string `location:"uri" locationName:"ShareId" type:"string" required:"true"` + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -9229,7 +13195,7 @@ type DeleteProfileShareInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteProfileShareInput) String() string { +func (s GetReviewTemplateLensReviewInput) String() string { return awsutil.Prettify(s) } @@ -9238,27 +13204,24 @@ func (s DeleteProfileShareInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteProfileShareInput) GoString() string { +func (s GetReviewTemplateLensReviewInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteProfileShareInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteProfileShareInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.ProfileArn == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileArn")) +func (s *GetReviewTemplateLensReviewInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetReviewTemplateLensReviewInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } - if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.ShareId == nil { - invalidParams.Add(request.NewErrParamRequired("ShareId")) + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) } - if s.ShareId != nil && len(*s.ShareId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ShareId", 1)) + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) } if invalidParams.Len() > 0 { @@ -9267,26 +13230,63 @@ func (s *DeleteProfileShareInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DeleteProfileShareInput) SetClientRequestToken(v string) *DeleteProfileShareInput { - s.ClientRequestToken = &v +// SetLensAlias sets the LensAlias field's value. +func (s *GetReviewTemplateLensReviewInput) SetLensAlias(v string) *GetReviewTemplateLensReviewInput { + s.LensAlias = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateLensReviewInput) SetTemplateArn(v string) *GetReviewTemplateLensReviewInput { + s.TemplateArn = &v return s } -// SetProfileArn sets the ProfileArn field's value. -func (s *DeleteProfileShareInput) SetProfileArn(v string) *DeleteProfileShareInput { - s.ProfileArn = &v +type GetReviewTemplateLensReviewOutput struct { + _ struct{} `type:"structure"` + + // A lens review of a question. + LensReview *ReviewTemplateLensReview `type:"structure"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetReviewTemplateLensReviewOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetReviewTemplateLensReviewOutput) GoString() string { + return s.String() +} + +// SetLensReview sets the LensReview field's value. +func (s *GetReviewTemplateLensReviewOutput) SetLensReview(v *ReviewTemplateLensReview) *GetReviewTemplateLensReviewOutput { + s.LensReview = v return s } -// SetShareId sets the ShareId field's value. -func (s *DeleteProfileShareInput) SetShareId(v string) *DeleteProfileShareInput { - s.ShareId = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetReviewTemplateLensReviewOutput) SetTemplateArn(v string) *GetReviewTemplateLensReviewOutput { + s.TemplateArn = &v return s } -type DeleteProfileShareOutput struct { +type GetReviewTemplateOutput struct { _ struct{} `type:"structure"` + + // The review template. + ReviewTemplate *ReviewTemplate `type:"structure"` } // String returns the string representation. @@ -9294,7 +13294,7 @@ type DeleteProfileShareOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteProfileShareOutput) String() string { +func (s GetReviewTemplateOutput) String() string { return awsutil.Prettify(s) } @@ -9303,27 +13303,19 @@ func (s DeleteProfileShareOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteProfileShareOutput) GoString() string { +func (s GetReviewTemplateOutput) GoString() string { return s.String() } -// Input for workload deletion. -type DeleteWorkloadInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetReviewTemplate sets the ReviewTemplate field's value. +func (s *GetReviewTemplateOutput) SetReviewTemplate(v *ReviewTemplate) *GetReviewTemplateOutput { + s.ReviewTemplate = v + return s +} - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` +// Input to get a workload. +type GetWorkloadInput struct { + _ struct{} `type:"structure" nopayload:"true"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. @@ -9337,7 +13329,7 @@ type DeleteWorkloadInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteWorkloadInput) String() string { +func (s GetWorkloadInput) String() string { return awsutil.Prettify(s) } @@ -9346,16 +13338,13 @@ func (s DeleteWorkloadInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteWorkloadInput) GoString() string { +func (s GetWorkloadInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteWorkloadInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteWorkloadInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } +func (s *GetWorkloadInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetWorkloadInput"} if s.WorkloadId == nil { invalidParams.Add(request.NewErrParamRequired("WorkloadId")) } @@ -9369,20 +13358,18 @@ func (s *DeleteWorkloadInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DeleteWorkloadInput) SetClientRequestToken(v string) *DeleteWorkloadInput { - s.ClientRequestToken = &v - return s -} - // SetWorkloadId sets the WorkloadId field's value. -func (s *DeleteWorkloadInput) SetWorkloadId(v string) *DeleteWorkloadInput { +func (s *GetWorkloadInput) SetWorkloadId(v string) *GetWorkloadInput { s.WorkloadId = &v return s } -type DeleteWorkloadOutput struct { +// Output of a get workload call. +type GetWorkloadOutput struct { _ struct{} `type:"structure"` + + // A workload return object. + Workload *Workload `type:"structure"` } // String returns the string representation. @@ -9390,7 +13377,7 @@ type DeleteWorkloadOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteWorkloadOutput) String() string { +func (s GetWorkloadOutput) String() string { return awsutil.Prettify(s) } @@ -9399,13 +13386,18 @@ func (s DeleteWorkloadOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteWorkloadOutput) GoString() string { +func (s GetWorkloadOutput) GoString() string { return s.String() } -// Input for Delete Workload Share -type DeleteWorkloadShareInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetWorkload sets the Workload field's value. +func (s *GetWorkloadOutput) SetWorkload(v *Workload) *GetWorkloadOutput { + s.Workload = v + return s +} + +type ImportLensInput struct { + _ struct{} `type:"structure"` // A unique case-sensitive string used to ensure that this request is idempotent // (executes only once). @@ -9419,18 +13411,27 @@ type DeleteWorkloadShareInput struct { // Amazon Web Services SDKs automatically generate one for you. If you are not // using the Amazon Web Services SDK or the CLI, you must provide this token // or the request will fail. - ClientRequestToken *string `location:"querystring" locationName:"ClientRequestToken" min:"1" type:"string" idempotencyToken:"true"` + ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` - // The ID associated with the share. + // The JSON representation of a lens. // - // ShareId is a required field - ShareId *string `location:"uri" locationName:"ShareId" type:"string" required:"true"` + // JSONString is a required field + JSONString *string `min:"2" type:"string" required:"true"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. + // The alias of the lens. // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // Tags to associate to a lens. + Tags map[string]*string `min:"1" type:"map"` } // String returns the string representation. @@ -9438,7 +13439,7 @@ type DeleteWorkloadShareInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteWorkloadShareInput) String() string { +func (s ImportLensInput) String() string { return awsutil.Prettify(s) } @@ -9447,27 +13448,27 @@ func (s DeleteWorkloadShareInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DeleteWorkloadShareInput) GoString() string { +func (s ImportLensInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteWorkloadShareInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteWorkloadShareInput"} +func (s *ImportLensInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ImportLensInput"} if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) } - if s.ShareId == nil { - invalidParams.Add(request.NewErrParamRequired("ShareId")) + if s.JSONString == nil { + invalidParams.Add(request.NewErrParamRequired("JSONString")) } - if s.ShareId != nil && len(*s.ShareId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ShareId", 1)) + if s.JSONString != nil && len(*s.JSONString) < 2 { + invalidParams.Add(request.NewErrParamMinLen("JSONString", 2)) } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) } if invalidParams.Len() > 0 { @@ -9477,62 +13478,37 @@ func (s *DeleteWorkloadShareInput) Validate() error { } // SetClientRequestToken sets the ClientRequestToken field's value. -func (s *DeleteWorkloadShareInput) SetClientRequestToken(v string) *DeleteWorkloadShareInput { +func (s *ImportLensInput) SetClientRequestToken(v string) *ImportLensInput { s.ClientRequestToken = &v return s } -// SetShareId sets the ShareId field's value. -func (s *DeleteWorkloadShareInput) SetShareId(v string) *DeleteWorkloadShareInput { - s.ShareId = &v +// SetJSONString sets the JSONString field's value. +func (s *ImportLensInput) SetJSONString(v string) *ImportLensInput { + s.JSONString = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *DeleteWorkloadShareInput) SetWorkloadId(v string) *DeleteWorkloadShareInput { - s.WorkloadId = &v +// SetLensAlias sets the LensAlias field's value. +func (s *ImportLensInput) SetLensAlias(v string) *ImportLensInput { + s.LensAlias = &v return s } -type DeleteWorkloadShareOutput struct { - _ struct{} `type:"structure"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeleteWorkloadShareOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DeleteWorkloadShareOutput) GoString() string { - return s.String() +// SetTags sets the Tags field's value. +func (s *ImportLensInput) SetTags(v map[string]*string) *ImportLensInput { + s.Tags = v + return s } -// Input to disassociate lens reviews. -type DisassociateLensesInput struct { +type ImportLensOutput struct { _ struct{} `type:"structure"` - // List of lens aliases to associate or disassociate with a workload. Up to - // 10 lenses can be specified. - // - // Identify a lens using its LensSummary$LensAlias. - // - // LensAliases is a required field - LensAliases []*string `min:"1" type:"list" required:"true"` + // The ARN for the lens that was created or updated. + LensArn *string `type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // The status of the imported lens. + Status *string `type:"string" enum:"ImportLensStatus"` } // String returns the string representation. @@ -9540,7 +13516,7 @@ type DisassociateLensesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DisassociateLensesInput) String() string { +func (s ImportLensOutput) String() string { return awsutil.Prettify(s) } @@ -9549,79 +13525,50 @@ func (s DisassociateLensesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DisassociateLensesInput) GoString() string { +func (s ImportLensOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisassociateLensesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisassociateLensesInput"} - if s.LensAliases == nil { - invalidParams.Add(request.NewErrParamRequired("LensAliases")) - } - if s.LensAliases != nil && len(s.LensAliases) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAliases", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetLensAliases sets the LensAliases field's value. -func (s *DisassociateLensesInput) SetLensAliases(v []*string) *DisassociateLensesInput { - s.LensAliases = v +// SetLensArn sets the LensArn field's value. +func (s *ImportLensOutput) SetLensArn(v string) *ImportLensOutput { + s.LensArn = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *DisassociateLensesInput) SetWorkloadId(v string) *DisassociateLensesInput { - s.WorkloadId = &v +// SetStatus sets the Status field's value. +func (s *ImportLensOutput) SetStatus(v string) *ImportLensOutput { + s.Status = &v return s } -type DisassociateLensesOutput struct { +// An improvement summary of a lens review in a workload. +type ImprovementSummary struct { _ struct{} `type:"structure"` -} -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisassociateLensesOutput) String() string { - return awsutil.Prettify(s) -} + // The improvement plan URL for a question in an Amazon Web Services official + // lenses. + // + // This value is only available if the question has been answered. + // + // This value does not apply to custom lenses. + ImprovementPlanUrl *string `min:"1" type:"string"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisassociateLensesOutput) GoString() string { - return s.String() -} + // The improvement plan details. + ImprovementPlans []*ChoiceImprovementPlan `type:"list"` -type DisassociateProfilesInput struct { - _ struct{} `type:"structure"` + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The ID of the question. + QuestionId *string `min:"1" type:"string"` - // The list of profile ARNs to disassociate from the workload. - // - // ProfileArns is a required field - ProfileArns []*string `min:"1" type:"list" required:"true"` + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // The risk for a given workload, lens review, pillar, or question. + Risk *string `type:"string" enum:"Risk"` } // String returns the string representation. @@ -9629,7 +13576,7 @@ type DisassociateProfilesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DisassociateProfilesInput) String() string { +func (s ImprovementSummary) String() string { return awsutil.Prettify(s) } @@ -9638,85 +13585,53 @@ func (s DisassociateProfilesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s DisassociateProfilesInput) GoString() string { +func (s ImprovementSummary) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisassociateProfilesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisassociateProfilesInput"} - if s.ProfileArns == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileArns")) - } - if s.ProfileArns != nil && len(s.ProfileArns) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileArns", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetImprovementPlanUrl sets the ImprovementPlanUrl field's value. +func (s *ImprovementSummary) SetImprovementPlanUrl(v string) *ImprovementSummary { + s.ImprovementPlanUrl = &v + return s } -// SetProfileArns sets the ProfileArns field's value. -func (s *DisassociateProfilesInput) SetProfileArns(v []*string) *DisassociateProfilesInput { - s.ProfileArns = v +// SetImprovementPlans sets the ImprovementPlans field's value. +func (s *ImprovementSummary) SetImprovementPlans(v []*ChoiceImprovementPlan) *ImprovementSummary { + s.ImprovementPlans = v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *DisassociateProfilesInput) SetWorkloadId(v string) *DisassociateProfilesInput { - s.WorkloadId = &v +// SetPillarId sets the PillarId field's value. +func (s *ImprovementSummary) SetPillarId(v string) *ImprovementSummary { + s.PillarId = &v return s } -type DisassociateProfilesOutput struct { - _ struct{} `type:"structure"` +// SetQuestionId sets the QuestionId field's value. +func (s *ImprovementSummary) SetQuestionId(v string) *ImprovementSummary { + s.QuestionId = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisassociateProfilesOutput) String() string { - return awsutil.Prettify(s) +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *ImprovementSummary) SetQuestionTitle(v string) *ImprovementSummary { + s.QuestionTitle = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s DisassociateProfilesOutput) GoString() string { - return s.String() +// SetRisk sets the Risk field's value. +func (s *ImprovementSummary) SetRisk(v string) *ImprovementSummary { + s.Risk = &v + return s } -type ExportLensInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` +// There is a problem with the Well-Architected Tool API service. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The lens version to be exported. - LensVersion *string `location:"querystring" locationName:"LensVersion" min:"1" type:"string"` + // Description of the error. + Message_ *string `locationName:"Message" type:"string"` } // String returns the string representation. @@ -9724,7 +13639,7 @@ type ExportLensInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ExportLensInput) String() string { +func (s InternalServerException) String() string { return awsutil.Prettify(s) } @@ -9733,46 +13648,72 @@ func (s ExportLensInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ExportLensInput) GoString() string { +func (s InternalServerException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ExportLensInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ExportLensInput"} - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) - } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) - } - if s.LensVersion != nil && len(*s.LensVersion) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensVersion", 1)) +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { return nil } -// SetLensAlias sets the LensAlias field's value. -func (s *ExportLensInput) SetLensAlias(v string) *ExportLensInput { - s.LensAlias = &v - return s +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// SetLensVersion sets the LensVersion field's value. -func (s *ExportLensInput) SetLensVersion(v string) *ExportLensInput { - s.LensVersion = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode } -type ExportLensOutput struct { +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A lens return object. +type Lens struct { _ struct{} `type:"structure"` - // The JSON representation of a lens. - LensJSON *string `min:"2" type:"string"` + // The description of the lens. + Description *string `min:"1" type:"string"` + + // The ARN of a lens. + LensArn *string `type:"string"` + + // The version of a lens. + LensVersion *string `min:"1" type:"string"` + + // The full name of the lens. + Name *string `min:"1" type:"string"` + + // The Amazon Web Services account ID that owns the lens. + Owner *string `type:"string"` + + // The ID assigned to the share invitation. + ShareInvitationId *string `type:"string"` + + // The tags assigned to the lens. + Tags map[string]*string `min:"1" type:"map"` } // String returns the string representation. @@ -9780,7 +13721,7 @@ type ExportLensOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ExportLensOutput) String() string { +func (s Lens) String() string { return awsutil.Prettify(s) } @@ -9789,49 +13730,64 @@ func (s ExportLensOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ExportLensOutput) GoString() string { +func (s Lens) GoString() string { return s.String() } -// SetLensJSON sets the LensJSON field's value. -func (s *ExportLensOutput) SetLensJSON(v string) *ExportLensOutput { - s.LensJSON = &v +// SetDescription sets the Description field's value. +func (s *Lens) SetDescription(v string) *Lens { + s.Description = &v return s } -// Input to get answer. -type GetAnswerInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetLensArn sets the LensArn field's value. +func (s *Lens) SetLensArn(v string) *Lens { + s.LensArn = &v + return s +} - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` +// SetLensVersion sets the LensVersion field's value. +func (s *Lens) SetLensVersion(v string) *Lens { + s.LensVersion = &v + return s +} - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` +// SetName sets the Name field's value. +func (s *Lens) SetName(v string) *Lens { + s.Name = &v + return s +} - // The ID of the question. - // - // QuestionId is a required field - QuestionId *string `location:"uri" locationName:"QuestionId" min:"1" type:"string" required:"true"` +// SetOwner sets the Owner field's value. +func (s *Lens) SetOwner(v string) *Lens { + s.Owner = &v + return s +} + +// SetShareInvitationId sets the ShareInvitationId field's value. +func (s *Lens) SetShareInvitationId(v string) *Lens { + s.ShareInvitationId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Lens) SetTags(v map[string]*string) *Lens { + s.Tags = v + return s +} + +// A metric for a particular lens in a workload. +type LensMetric struct { + _ struct{} `type:"structure"` + + // The lens ARN. + LensArn *string `type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // The metrics for the pillars in a lens. + Pillars []*PillarMetric `type:"list"` + + // A map from risk names to the count of how many questions have that rating. + RiskCounts map[string]*int64 `type:"map"` } // String returns the string representation. @@ -9839,7 +13795,7 @@ type GetAnswerInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetAnswerInput) String() string { +func (s LensMetric) String() string { return awsutil.Prettify(s) } @@ -9848,72 +13804,32 @@ func (s GetAnswerInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetAnswerInput) GoString() string { +func (s LensMetric) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetAnswerInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetAnswerInput"} - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) - } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) - } - if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) - } - if s.QuestionId == nil { - invalidParams.Add(request.NewErrParamRequired("QuestionId")) - } - if s.QuestionId != nil && len(*s.QuestionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetLensAlias sets the LensAlias field's value. -func (s *GetAnswerInput) SetLensAlias(v string) *GetAnswerInput { - s.LensAlias = &v - return s -} - -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *GetAnswerInput) SetMilestoneNumber(v int64) *GetAnswerInput { - s.MilestoneNumber = &v +// SetLensArn sets the LensArn field's value. +func (s *LensMetric) SetLensArn(v string) *LensMetric { + s.LensArn = &v return s } -// SetQuestionId sets the QuestionId field's value. -func (s *GetAnswerInput) SetQuestionId(v string) *GetAnswerInput { - s.QuestionId = &v +// SetPillars sets the Pillars field's value. +func (s *LensMetric) SetPillars(v []*PillarMetric) *LensMetric { + s.Pillars = v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *GetAnswerInput) SetWorkloadId(v string) *GetAnswerInput { - s.WorkloadId = &v +// SetRiskCounts sets the RiskCounts field's value. +func (s *LensMetric) SetRiskCounts(v map[string]*int64) *LensMetric { + s.RiskCounts = v return s } -// Output of a get answer call. -type GetAnswerOutput struct { +// A lens review of a question. +type LensReview struct { _ struct{} `type:"structure"` - // An answer of the question. - Answer *Answer `type:"structure"` - // The alias of the lens. // // For Amazon Web Services official lenses, this is either the lens alias, such @@ -9929,14 +13845,38 @@ type GetAnswerOutput struct { // The ARN for the lens. LensArn *string `type:"string"` - // The milestone number. + // The full name of the lens. + LensName *string `min:"1" type:"string"` + + // The status of the lens. + LensStatus *string `type:"string" enum:"LensStatus"` + + // The version of the lens. + LensVersion *string `min:"1" type:"string"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // The notes associated with the workload. // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // List of pillar review summaries of lens review in a workload. + PillarReviewSummaries []*PillarReviewSummary `type:"list"` + + // A map from risk names to the count of how many questions have that rating. + PrioritizedRiskCounts map[string]*int64 `type:"map"` + + // The profiles associated with the workload. + Profiles []*WorkloadProfile `type:"list"` + + // A map from risk names to the count of how many questions have that rating. + RiskCounts map[string]*int64 `type:"map"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -9944,7 +13884,7 @@ type GetAnswerOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetAnswerOutput) String() string { +func (s LensReview) String() string { return awsutil.Prettify(s) } @@ -9953,119 +13893,84 @@ func (s GetAnswerOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetAnswerOutput) GoString() string { +func (s LensReview) GoString() string { return s.String() } -// SetAnswer sets the Answer field's value. -func (s *GetAnswerOutput) SetAnswer(v *Answer) *GetAnswerOutput { - s.Answer = v - return s -} - // SetLensAlias sets the LensAlias field's value. -func (s *GetAnswerOutput) SetLensAlias(v string) *GetAnswerOutput { +func (s *LensReview) SetLensAlias(v string) *LensReview { s.LensAlias = &v return s } // SetLensArn sets the LensArn field's value. -func (s *GetAnswerOutput) SetLensArn(v string) *GetAnswerOutput { +func (s *LensReview) SetLensArn(v string) *LensReview { s.LensArn = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *GetAnswerOutput) SetMilestoneNumber(v int64) *GetAnswerOutput { - s.MilestoneNumber = &v +// SetLensName sets the LensName field's value. +func (s *LensReview) SetLensName(v string) *LensReview { + s.LensName = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *GetAnswerOutput) SetWorkloadId(v string) *GetAnswerOutput { - s.WorkloadId = &v +// SetLensStatus sets the LensStatus field's value. +func (s *LensReview) SetLensStatus(v string) *LensReview { + s.LensStatus = &v return s } -type GetConsolidatedReportInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The format of the consolidated report. - // - // For PDF, Base64String is returned. For JSON, Metrics is returned. - // - // Format is a required field - Format *string `location:"querystring" locationName:"Format" type:"string" required:"true" enum:"ReportFormat"` - - // Set to true to have shared resources included in the report. - IncludeSharedResources *bool `location:"querystring" locationName:"IncludeSharedResources" type:"boolean"` - - // The maximum number of results to return for this request. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The token to use to retrieve the next set of results. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +// SetLensVersion sets the LensVersion field's value. +func (s *LensReview) SetLensVersion(v string) *LensReview { + s.LensVersion = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetConsolidatedReportInput) String() string { - return awsutil.Prettify(s) +// SetNextToken sets the NextToken field's value. +func (s *LensReview) SetNextToken(v string) *LensReview { + s.NextToken = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetConsolidatedReportInput) GoString() string { - return s.String() +// SetNotes sets the Notes field's value. +func (s *LensReview) SetNotes(v string) *LensReview { + s.Notes = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetConsolidatedReportInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetConsolidatedReportInput"} - if s.Format == nil { - invalidParams.Add(request.NewErrParamRequired("Format")) - } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetPillarReviewSummaries sets the PillarReviewSummaries field's value. +func (s *LensReview) SetPillarReviewSummaries(v []*PillarReviewSummary) *LensReview { + s.PillarReviewSummaries = v + return s } -// SetFormat sets the Format field's value. -func (s *GetConsolidatedReportInput) SetFormat(v string) *GetConsolidatedReportInput { - s.Format = &v +// SetPrioritizedRiskCounts sets the PrioritizedRiskCounts field's value. +func (s *LensReview) SetPrioritizedRiskCounts(v map[string]*int64) *LensReview { + s.PrioritizedRiskCounts = v return s } -// SetIncludeSharedResources sets the IncludeSharedResources field's value. -func (s *GetConsolidatedReportInput) SetIncludeSharedResources(v bool) *GetConsolidatedReportInput { - s.IncludeSharedResources = &v +// SetProfiles sets the Profiles field's value. +func (s *LensReview) SetProfiles(v []*WorkloadProfile) *LensReview { + s.Profiles = v return s } -// SetMaxResults sets the MaxResults field's value. -func (s *GetConsolidatedReportInput) SetMaxResults(v int64) *GetConsolidatedReportInput { - s.MaxResults = &v +// SetRiskCounts sets the RiskCounts field's value. +func (s *LensReview) SetRiskCounts(v map[string]*int64) *LensReview { + s.RiskCounts = v return s } -// SetNextToken sets the NextToken field's value. -func (s *GetConsolidatedReportInput) SetNextToken(v string) *GetConsolidatedReportInput { - s.NextToken = &v +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *LensReview) SetUpdatedAt(v time.Time) *LensReview { + s.UpdatedAt = &v return s } -type GetConsolidatedReportOutput struct { +// A report of a lens review. +type LensReviewReport struct { _ struct{} `type:"structure"` // The Base64-encoded string representation of a lens review report. @@ -10075,13 +13980,20 @@ type GetConsolidatedReportOutput struct { // Only returned by GetConsolidatedReport when PDF format is requested. Base64String *string `type:"string"` - // The metrics that make up the consolidated report. + // The alias of the lens. // - // Only returned when JSON format is requested. - Metrics []*ConsolidatedReportMetric `type:"list"` + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The ARN for the lens. + LensArn *string `type:"string"` } // String returns the string representation. @@ -10089,7 +14001,7 @@ type GetConsolidatedReportOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetConsolidatedReportOutput) String() string { +func (s LensReviewReport) String() string { return awsutil.Prettify(s) } @@ -10098,30 +14010,31 @@ func (s GetConsolidatedReportOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetConsolidatedReportOutput) GoString() string { +func (s LensReviewReport) GoString() string { return s.String() } // SetBase64String sets the Base64String field's value. -func (s *GetConsolidatedReportOutput) SetBase64String(v string) *GetConsolidatedReportOutput { +func (s *LensReviewReport) SetBase64String(v string) *LensReviewReport { s.Base64String = &v return s } -// SetMetrics sets the Metrics field's value. -func (s *GetConsolidatedReportOutput) SetMetrics(v []*ConsolidatedReportMetric) *GetConsolidatedReportOutput { - s.Metrics = v +// SetLensAlias sets the LensAlias field's value. +func (s *LensReviewReport) SetLensAlias(v string) *LensReviewReport { + s.LensAlias = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *GetConsolidatedReportOutput) SetNextToken(v string) *GetConsolidatedReportOutput { - s.NextToken = &v +// SetLensArn sets the LensArn field's value. +func (s *LensReviewReport) SetLensArn(v string) *LensReviewReport { + s.LensArn = &v return s } -type GetLensInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// A lens review summary of a workload. +type LensReviewSummary struct { + _ struct{} `type:"structure"` // The alias of the lens. // @@ -10133,12 +14046,31 @@ type GetLensInput struct { // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. // // Each lens is identified by its LensSummary$LensAlias. - // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + LensAlias *string `min:"1" type:"string"` - // The lens version to be retrieved. - LensVersion *string `location:"querystring" locationName:"LensVersion" min:"1" type:"string"` + // The ARN for the lens. + LensArn *string `type:"string"` + + // The full name of the lens. + LensName *string `min:"1" type:"string"` + + // The status of the lens. + LensStatus *string `type:"string" enum:"LensStatus"` + + // The version of the lens. + LensVersion *string `min:"1" type:"string"` + + // A map from risk names to the count of how many questions have that rating. + PrioritizedRiskCounts map[string]*int64 `type:"map"` + + // The profiles associated with the workload. + Profiles []*WorkloadProfile `type:"list"` + + // A map from risk names to the count of how many questions have that rating. + RiskCounts map[string]*int64 `type:"map"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -10146,7 +14078,7 @@ type GetLensInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensInput) String() string { +func (s LensReviewSummary) String() string { return awsutil.Prettify(s) } @@ -10155,46 +14087,80 @@ func (s GetLensInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensInput) GoString() string { +func (s LensReviewSummary) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetLensInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetLensInput"} - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) - } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) - } - if s.LensVersion != nil && len(*s.LensVersion) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensVersion", 1)) - } +// SetLensAlias sets the LensAlias field's value. +func (s *LensReviewSummary) SetLensAlias(v string) *LensReviewSummary { + s.LensAlias = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetLensArn sets the LensArn field's value. +func (s *LensReviewSummary) SetLensArn(v string) *LensReviewSummary { + s.LensArn = &v + return s } -// SetLensAlias sets the LensAlias field's value. -func (s *GetLensInput) SetLensAlias(v string) *GetLensInput { - s.LensAlias = &v +// SetLensName sets the LensName field's value. +func (s *LensReviewSummary) SetLensName(v string) *LensReviewSummary { + s.LensName = &v + return s +} + +// SetLensStatus sets the LensStatus field's value. +func (s *LensReviewSummary) SetLensStatus(v string) *LensReviewSummary { + s.LensStatus = &v return s } // SetLensVersion sets the LensVersion field's value. -func (s *GetLensInput) SetLensVersion(v string) *GetLensInput { +func (s *LensReviewSummary) SetLensVersion(v string) *LensReviewSummary { s.LensVersion = &v return s } -type GetLensOutput struct { +// SetPrioritizedRiskCounts sets the PrioritizedRiskCounts field's value. +func (s *LensReviewSummary) SetPrioritizedRiskCounts(v map[string]*int64) *LensReviewSummary { + s.PrioritizedRiskCounts = v + return s +} + +// SetProfiles sets the Profiles field's value. +func (s *LensReviewSummary) SetProfiles(v []*WorkloadProfile) *LensReviewSummary { + s.Profiles = v + return s +} + +// SetRiskCounts sets the RiskCounts field's value. +func (s *LensReviewSummary) SetRiskCounts(v map[string]*int64) *LensReviewSummary { + s.RiskCounts = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *LensReviewSummary) SetUpdatedAt(v time.Time) *LensReviewSummary { + s.UpdatedAt = &v + return s +} + +// A lens share summary return object. +type LensShareSummary struct { _ struct{} `type:"structure"` - // A lens return object. - Lens *Lens `type:"structure"` + // The ID associated with the share. + ShareId *string `type:"string"` + + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + SharedWith *string `min:"12" type:"string"` + + // The status of the share request. + Status *string `type:"string" enum:"ShareStatus"` + + // Optional message to compliment the Status field. + StatusMessage *string `min:"1" type:"string"` } // String returns the string representation. @@ -10202,7 +14168,7 @@ type GetLensOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensOutput) String() string { +func (s LensShareSummary) String() string { return awsutil.Prettify(s) } @@ -10211,19 +14177,43 @@ func (s GetLensOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensOutput) GoString() string { +func (s LensShareSummary) GoString() string { return s.String() } -// SetLens sets the Lens field's value. -func (s *GetLensOutput) SetLens(v *Lens) *GetLensOutput { - s.Lens = v +// SetShareId sets the ShareId field's value. +func (s *LensShareSummary) SetShareId(v string) *LensShareSummary { + s.ShareId = &v return s } -// Input to get lens review. -type GetLensReviewInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetSharedWith sets the SharedWith field's value. +func (s *LensShareSummary) SetSharedWith(v string) *LensShareSummary { + s.SharedWith = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *LensShareSummary) SetStatus(v string) *LensShareSummary { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *LensShareSummary) SetStatusMessage(v string) *LensShareSummary { + s.StatusMessage = &v + return s +} + +// A lens summary of a lens. +type LensSummary struct { + _ struct{} `type:"structure"` + + // The date and time recorded. + CreatedAt *time.Time `type:"timestamp"` + + // The description of the lens. + Description *string `min:"1" type:"string"` // The alias of the lens. // @@ -10235,20 +14225,28 @@ type GetLensReviewInput struct { // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. // // Each lens is identified by its LensSummary$LensAlias. - // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + LensAlias *string `min:"1" type:"string"` - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` + // The ARN of the lens. + LensArn *string `type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // The full name of the lens. + LensName *string `min:"1" type:"string"` + + // The status of the lens. + LensStatus *string `type:"string" enum:"LensStatus"` + + // The type of the lens. + LensType *string `type:"string" enum:"LensType"` + + // The version of the lens. + LensVersion *string `min:"1" type:"string"` + + // An Amazon Web Services account ID. + Owner *string `min:"12" type:"string"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -10256,7 +14254,7 @@ type GetLensReviewInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensReviewInput) String() string { +func (s LensSummary) String() string { return awsutil.Prettify(s) } @@ -10265,68 +14263,113 @@ func (s GetLensReviewInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensReviewInput) GoString() string { +func (s LensSummary) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetLensReviewInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetLensReviewInput"} - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) - } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) - } - if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } +// SetCreatedAt sets the CreatedAt field's value. +func (s *LensSummary) SetCreatedAt(v time.Time) *LensSummary { + s.CreatedAt = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetDescription sets the Description field's value. +func (s *LensSummary) SetDescription(v string) *LensSummary { + s.Description = &v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *LensSummary) SetLensAlias(v string) *LensSummary { + s.LensAlias = &v + return s +} + +// SetLensArn sets the LensArn field's value. +func (s *LensSummary) SetLensArn(v string) *LensSummary { + s.LensArn = &v + return s +} + +// SetLensName sets the LensName field's value. +func (s *LensSummary) SetLensName(v string) *LensSummary { + s.LensName = &v + return s +} + +// SetLensStatus sets the LensStatus field's value. +func (s *LensSummary) SetLensStatus(v string) *LensSummary { + s.LensStatus = &v + return s +} + +// SetLensType sets the LensType field's value. +func (s *LensSummary) SetLensType(v string) *LensSummary { + s.LensType = &v + return s } -// SetLensAlias sets the LensAlias field's value. -func (s *GetLensReviewInput) SetLensAlias(v string) *GetLensReviewInput { - s.LensAlias = &v +// SetLensVersion sets the LensVersion field's value. +func (s *LensSummary) SetLensVersion(v string) *LensSummary { + s.LensVersion = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *GetLensReviewInput) SetMilestoneNumber(v int64) *GetLensReviewInput { - s.MilestoneNumber = &v +// SetOwner sets the Owner field's value. +func (s *LensSummary) SetOwner(v string) *LensSummary { + s.Owner = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *GetLensReviewInput) SetWorkloadId(v string) *GetLensReviewInput { - s.WorkloadId = &v +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *LensSummary) SetUpdatedAt(v time.Time) *LensSummary { + s.UpdatedAt = &v return s } -// Output of a get lens review call. -type GetLensReviewOutput struct { +// Lens upgrade summary return object. +type LensUpgradeSummary struct { _ struct{} `type:"structure"` - // A lens review of a question. - LensReview *LensReview `type:"structure"` + // The current version of the lens. + CurrentLensVersion *string `min:"1" type:"string"` - // The milestone number. + // The latest version of the lens. + LatestLensVersion *string `min:"1" type:"string"` + + // The alias of the lens. // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // The ARN for the lens. + LensArn *string `type:"string"` + + // ResourceArn of the lens being upgraded + ResourceArn *string `min:"50" type:"string"` + + // The name of the workload. + // + // The name must be unique within an account within an Amazon Web Services Region. + // Spaces and capitalization are ignored when checking for uniqueness. + ResourceName *string `min:"3" type:"string"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. WorkloadId *string `min:"32" type:"string"` + + // The name of the workload. + // + // The name must be unique within an account within an Amazon Web Services Region. + // Spaces and capitalization are ignored when checking for uniqueness. + WorkloadName *string `min:"3" type:"string"` } // String returns the string representation. @@ -10334,7 +14377,7 @@ type GetLensReviewOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensReviewOutput) String() string { +func (s LensUpgradeSummary) String() string { return awsutil.Prettify(s) } @@ -10343,30 +14386,60 @@ func (s GetLensReviewOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensReviewOutput) GoString() string { +func (s LensUpgradeSummary) GoString() string { return s.String() } -// SetLensReview sets the LensReview field's value. -func (s *GetLensReviewOutput) SetLensReview(v *LensReview) *GetLensReviewOutput { - s.LensReview = v +// SetCurrentLensVersion sets the CurrentLensVersion field's value. +func (s *LensUpgradeSummary) SetCurrentLensVersion(v string) *LensUpgradeSummary { + s.CurrentLensVersion = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *GetLensReviewOutput) SetMilestoneNumber(v int64) *GetLensReviewOutput { - s.MilestoneNumber = &v +// SetLatestLensVersion sets the LatestLensVersion field's value. +func (s *LensUpgradeSummary) SetLatestLensVersion(v string) *LensUpgradeSummary { + s.LatestLensVersion = &v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *LensUpgradeSummary) SetLensAlias(v string) *LensUpgradeSummary { + s.LensAlias = &v + return s +} + +// SetLensArn sets the LensArn field's value. +func (s *LensUpgradeSummary) SetLensArn(v string) *LensUpgradeSummary { + s.LensArn = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *LensUpgradeSummary) SetResourceArn(v string) *LensUpgradeSummary { + s.ResourceArn = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *LensUpgradeSummary) SetResourceName(v string) *LensUpgradeSummary { + s.ResourceName = &v return s } // SetWorkloadId sets the WorkloadId field's value. -func (s *GetLensReviewOutput) SetWorkloadId(v string) *GetLensReviewOutput { +func (s *LensUpgradeSummary) SetWorkloadId(v string) *LensUpgradeSummary { s.WorkloadId = &v return s } -// Input to get lens review report. -type GetLensReviewReportInput struct { +// SetWorkloadName sets the WorkloadName field's value. +func (s *LensUpgradeSummary) SetWorkloadName(v string) *LensUpgradeSummary { + s.WorkloadName = &v + return s +} + +// Input to list answers. +type ListAnswersInput struct { _ struct{} `type:"structure" nopayload:"true"` // The alias of the lens. @@ -10383,11 +14456,25 @@ type GetLensReviewReportInput struct { // LensAlias is a required field LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + // The milestone number. // // A workload can have a maximum of 100 milestones. MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `location:"querystring" locationName:"PillarId" min:"1" type:"string"` + + // The priority of the question. + QuestionPriority *string `location:"querystring" locationName:"QuestionPriority" type:"string" enum:"QuestionPriority"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. // @@ -10400,7 +14487,7 @@ type GetLensReviewReportInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensReviewReportInput) String() string { +func (s ListAnswersInput) String() string { return awsutil.Prettify(s) } @@ -10409,22 +14496,28 @@ func (s GetLensReviewReportInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensReviewReportInput) GoString() string { +func (s ListAnswersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetLensReviewReportInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetLensReviewReportInput"} +func (s *ListAnswersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAnswersInput"} if s.LensAlias == nil { invalidParams.Add(request.NewErrParamRequired("LensAlias")) } if s.LensAlias != nil && len(*s.LensAlias) < 1 { invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) } + if s.PillarId != nil && len(*s.PillarId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) + } if s.WorkloadId == nil { invalidParams.Add(request.NewErrParamRequired("WorkloadId")) } @@ -10439,166 +14532,53 @@ func (s *GetLensReviewReportInput) Validate() error { } // SetLensAlias sets the LensAlias field's value. -func (s *GetLensReviewReportInput) SetLensAlias(v string) *GetLensReviewReportInput { +func (s *ListAnswersInput) SetLensAlias(v string) *ListAnswersInput { s.LensAlias = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *GetLensReviewReportInput) SetMilestoneNumber(v int64) *GetLensReviewReportInput { - s.MilestoneNumber = &v - return s -} - -// SetWorkloadId sets the WorkloadId field's value. -func (s *GetLensReviewReportInput) SetWorkloadId(v string) *GetLensReviewReportInput { - s.WorkloadId = &v - return s -} - -// Output of a get lens review report call. -type GetLensReviewReportOutput struct { - _ struct{} `type:"structure"` - - // A report of a lens review. - LensReviewReport *LensReviewReport `type:"structure"` - - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` - - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetLensReviewReportOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetLensReviewReportOutput) GoString() string { - return s.String() -} - -// SetLensReviewReport sets the LensReviewReport field's value. -func (s *GetLensReviewReportOutput) SetLensReviewReport(v *LensReviewReport) *GetLensReviewReportOutput { - s.LensReviewReport = v +// SetMaxResults sets the MaxResults field's value. +func (s *ListAnswersInput) SetMaxResults(v int64) *ListAnswersInput { + s.MaxResults = &v return s } // SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *GetLensReviewReportOutput) SetMilestoneNumber(v int64) *GetLensReviewReportOutput { +func (s *ListAnswersInput) SetMilestoneNumber(v int64) *ListAnswersInput { s.MilestoneNumber = &v return s -} - -// SetWorkloadId sets the WorkloadId field's value. -func (s *GetLensReviewReportOutput) SetWorkloadId(v string) *GetLensReviewReportOutput { - s.WorkloadId = &v - return s -} - -type GetLensVersionDifferenceInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The base version of the lens. - BaseLensVersion *string `location:"querystring" locationName:"BaseLensVersion" min:"1" type:"string"` - - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - - // The lens version to target a difference for. - TargetLensVersion *string `location:"querystring" locationName:"TargetLensVersion" min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetLensVersionDifferenceInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetLensVersionDifferenceInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetLensVersionDifferenceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetLensVersionDifferenceInput"} - if s.BaseLensVersion != nil && len(*s.BaseLensVersion) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BaseLensVersion", 1)) - } - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) - } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) - } - if s.TargetLensVersion != nil && len(*s.TargetLensVersion) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TargetLensVersion", 1)) - } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetNextToken sets the NextToken field's value. +func (s *ListAnswersInput) SetNextToken(v string) *ListAnswersInput { + s.NextToken = &v + return s } -// SetBaseLensVersion sets the BaseLensVersion field's value. -func (s *GetLensVersionDifferenceInput) SetBaseLensVersion(v string) *GetLensVersionDifferenceInput { - s.BaseLensVersion = &v +// SetPillarId sets the PillarId field's value. +func (s *ListAnswersInput) SetPillarId(v string) *ListAnswersInput { + s.PillarId = &v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *GetLensVersionDifferenceInput) SetLensAlias(v string) *GetLensVersionDifferenceInput { - s.LensAlias = &v +// SetQuestionPriority sets the QuestionPriority field's value. +func (s *ListAnswersInput) SetQuestionPriority(v string) *ListAnswersInput { + s.QuestionPriority = &v return s } -// SetTargetLensVersion sets the TargetLensVersion field's value. -func (s *GetLensVersionDifferenceInput) SetTargetLensVersion(v string) *GetLensVersionDifferenceInput { - s.TargetLensVersion = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListAnswersInput) SetWorkloadId(v string) *ListAnswersInput { + s.WorkloadId = &v return s } -type GetLensVersionDifferenceOutput struct { +// Output of a list answers call. +type ListAnswersOutput struct { _ struct{} `type:"structure"` - // The base version of the lens. - BaseLensVersion *string `min:"1" type:"string"` - - // The latest version of the lens. - LatestLensVersion *string `min:"1" type:"string"` + // List of answer summaries of lens review in a workload. + AnswerSummaries []*AnswerSummary `type:"list"` // The alias of the lens. // @@ -10615,11 +14595,17 @@ type GetLensVersionDifferenceOutput struct { // The ARN for the lens. LensArn *string `type:"string"` - // The target lens version for the lens. - TargetLensVersion *string `min:"1" type:"string"` + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` - // The differences between the base and latest versions of the lens. - VersionDifferences *VersionDifferences `type:"structure"` + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -10627,7 +14613,7 @@ type GetLensVersionDifferenceOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensVersionDifferenceOutput) String() string { +func (s ListAnswersOutput) String() string { return awsutil.Prettify(s) } @@ -10636,56 +14622,76 @@ func (s GetLensVersionDifferenceOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetLensVersionDifferenceOutput) GoString() string { +func (s ListAnswersOutput) GoString() string { return s.String() } -// SetBaseLensVersion sets the BaseLensVersion field's value. -func (s *GetLensVersionDifferenceOutput) SetBaseLensVersion(v string) *GetLensVersionDifferenceOutput { - s.BaseLensVersion = &v - return s -} - -// SetLatestLensVersion sets the LatestLensVersion field's value. -func (s *GetLensVersionDifferenceOutput) SetLatestLensVersion(v string) *GetLensVersionDifferenceOutput { - s.LatestLensVersion = &v +// SetAnswerSummaries sets the AnswerSummaries field's value. +func (s *ListAnswersOutput) SetAnswerSummaries(v []*AnswerSummary) *ListAnswersOutput { + s.AnswerSummaries = v return s } // SetLensAlias sets the LensAlias field's value. -func (s *GetLensVersionDifferenceOutput) SetLensAlias(v string) *GetLensVersionDifferenceOutput { +func (s *ListAnswersOutput) SetLensAlias(v string) *ListAnswersOutput { s.LensAlias = &v return s } // SetLensArn sets the LensArn field's value. -func (s *GetLensVersionDifferenceOutput) SetLensArn(v string) *GetLensVersionDifferenceOutput { +func (s *ListAnswersOutput) SetLensArn(v string) *ListAnswersOutput { s.LensArn = &v return s } -// SetTargetLensVersion sets the TargetLensVersion field's value. -func (s *GetLensVersionDifferenceOutput) SetTargetLensVersion(v string) *GetLensVersionDifferenceOutput { - s.TargetLensVersion = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *ListAnswersOutput) SetMilestoneNumber(v int64) *ListAnswersOutput { + s.MilestoneNumber = &v return s } -// SetVersionDifferences sets the VersionDifferences field's value. -func (s *GetLensVersionDifferenceOutput) SetVersionDifferences(v *VersionDifferences) *GetLensVersionDifferenceOutput { - s.VersionDifferences = v +// SetNextToken sets the NextToken field's value. +func (s *ListAnswersOutput) SetNextToken(v string) *ListAnswersOutput { + s.NextToken = &v return s } -// Input to get a milestone. -type GetMilestoneInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListAnswersOutput) SetWorkloadId(v string) *ListAnswersOutput { + s.WorkloadId = &v + return s +} - // The milestone number. +type ListCheckDetailsInput struct { + _ struct{} `type:"structure"` + + // The ID of a choice. // - // A workload can have a maximum of 100 milestones. + // ChoiceId is a required field + ChoiceId *string `min:"1" type:"string" required:"true"` + + // Well-Architected Lens ARN. // - // MilestoneNumber is a required field - MilestoneNumber *int64 `location:"uri" locationName:"MilestoneNumber" min:"1" type:"integer" required:"true"` + // LensArn is a required field + LensArn *string `type:"string" required:"true"` + + // The maximum number of results to return for this request. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + // + // PillarId is a required field + PillarId *string `min:"1" type:"string" required:"true"` + + // The ID of the question. + // + // QuestionId is a required field + QuestionId *string `min:"1" type:"string" required:"true"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. @@ -10699,7 +14705,7 @@ type GetMilestoneInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetMilestoneInput) String() string { +func (s ListCheckDetailsInput) String() string { return awsutil.Prettify(s) } @@ -10708,18 +14714,36 @@ func (s GetMilestoneInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetMilestoneInput) GoString() string { +func (s ListCheckDetailsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetMilestoneInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetMilestoneInput"} - if s.MilestoneNumber == nil { - invalidParams.Add(request.NewErrParamRequired("MilestoneNumber")) +func (s *ListCheckDetailsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCheckDetailsInput"} + if s.ChoiceId == nil { + invalidParams.Add(request.NewErrParamRequired("ChoiceId")) } - if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) + if s.ChoiceId != nil && len(*s.ChoiceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ChoiceId", 1)) + } + if s.LensArn == nil { + invalidParams.Add(request.NewErrParamRequired("LensArn")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.PillarId == nil { + invalidParams.Add(request.NewErrParamRequired("PillarId")) + } + if s.PillarId != nil && len(*s.PillarId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) + } + if s.QuestionId == nil { + invalidParams.Add(request.NewErrParamRequired("QuestionId")) + } + if s.QuestionId != nil && len(*s.QuestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) } if s.WorkloadId == nil { invalidParams.Add(request.NewErrParamRequired("WorkloadId")) @@ -10734,126 +14758,57 @@ func (s *GetMilestoneInput) Validate() error { return nil } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *GetMilestoneInput) SetMilestoneNumber(v int64) *GetMilestoneInput { - s.MilestoneNumber = &v - return s -} - -// SetWorkloadId sets the WorkloadId field's value. -func (s *GetMilestoneInput) SetWorkloadId(v string) *GetMilestoneInput { - s.WorkloadId = &v +// SetChoiceId sets the ChoiceId field's value. +func (s *ListCheckDetailsInput) SetChoiceId(v string) *ListCheckDetailsInput { + s.ChoiceId = &v return s } -// Output of a get milestone call. -type GetMilestoneOutput struct { - _ struct{} `type:"structure"` - - // A milestone return object. - Milestone *Milestone `type:"structure"` - - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetMilestoneOutput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetMilestoneOutput) GoString() string { - return s.String() -} - -// SetMilestone sets the Milestone field's value. -func (s *GetMilestoneOutput) SetMilestone(v *Milestone) *GetMilestoneOutput { - s.Milestone = v +// SetLensArn sets the LensArn field's value. +func (s *ListCheckDetailsInput) SetLensArn(v string) *ListCheckDetailsInput { + s.LensArn = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *GetMilestoneOutput) SetWorkloadId(v string) *GetMilestoneOutput { - s.WorkloadId = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListCheckDetailsInput) SetMaxResults(v int64) *ListCheckDetailsInput { + s.MaxResults = &v return s } -type GetProfileInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The profile ARN. - // - // ProfileArn is a required field - ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` - - // The profile version. - ProfileVersion *string `location:"querystring" locationName:"ProfileVersion" min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetProfileInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetProfileInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetProfileInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetProfileInput"} - if s.ProfileArn == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileArn")) - } - if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) - } - if s.ProfileVersion != nil && len(*s.ProfileVersion) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileVersion", 1)) - } +// SetNextToken sets the NextToken field's value. +func (s *ListCheckDetailsInput) SetNextToken(v string) *ListCheckDetailsInput { + s.NextToken = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetPillarId sets the PillarId field's value. +func (s *ListCheckDetailsInput) SetPillarId(v string) *ListCheckDetailsInput { + s.PillarId = &v + return s } -// SetProfileArn sets the ProfileArn field's value. -func (s *GetProfileInput) SetProfileArn(v string) *GetProfileInput { - s.ProfileArn = &v +// SetQuestionId sets the QuestionId field's value. +func (s *ListCheckDetailsInput) SetQuestionId(v string) *ListCheckDetailsInput { + s.QuestionId = &v return s } -// SetProfileVersion sets the ProfileVersion field's value. -func (s *GetProfileInput) SetProfileVersion(v string) *GetProfileInput { - s.ProfileVersion = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListCheckDetailsInput) SetWorkloadId(v string) *ListCheckDetailsInput { + s.WorkloadId = &v return s } -type GetProfileOutput struct { +type ListCheckDetailsOutput struct { _ struct{} `type:"structure"` - // The profile. - Profile *Profile `type:"structure"` + // The details about the Trusted Advisor checks related to the Well-Architected + // best practice. + CheckDetails []*CheckDetail `type:"list"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` } // String returns the string representation. @@ -10861,7 +14816,7 @@ type GetProfileOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetProfileOutput) String() string { +func (s ListCheckDetailsOutput) String() string { return awsutil.Prettify(s) } @@ -10870,72 +14825,52 @@ func (s GetProfileOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetProfileOutput) GoString() string { +func (s ListCheckDetailsOutput) GoString() string { return s.String() } -// SetProfile sets the Profile field's value. -func (s *GetProfileOutput) SetProfile(v *Profile) *GetProfileOutput { - s.Profile = v +// SetCheckDetails sets the CheckDetails field's value. +func (s *ListCheckDetailsOutput) SetCheckDetails(v []*CheckDetail) *ListCheckDetailsOutput { + s.CheckDetails = v return s } -type GetProfileTemplateInput struct { - _ struct{} `type:"structure" nopayload:"true"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetProfileTemplateInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetProfileTemplateInput) GoString() string { - return s.String() +// SetNextToken sets the NextToken field's value. +func (s *ListCheckDetailsOutput) SetNextToken(v string) *ListCheckDetailsOutput { + s.NextToken = &v + return s } -type GetProfileTemplateOutput struct { +type ListCheckSummariesInput struct { _ struct{} `type:"structure"` - // The profile template. - ProfileTemplate *ProfileTemplate `type:"structure"` -} + // The ID of a choice. + // + // ChoiceId is a required field + ChoiceId *string `min:"1" type:"string" required:"true"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetProfileTemplateOutput) String() string { - return awsutil.Prettify(s) -} + // Well-Architected Lens ARN. + // + // LensArn is a required field + LensArn *string `type:"string" required:"true"` -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetProfileTemplateOutput) GoString() string { - return s.String() -} + // The maximum number of results to return for this request. + MaxResults *int64 `min:"1" type:"integer"` -// SetProfileTemplate sets the ProfileTemplate field's value. -func (s *GetProfileTemplateOutput) SetProfileTemplate(v *ProfileTemplate) *GetProfileTemplateOutput { - s.ProfileTemplate = v - return s -} + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` -// Input to get a workload. -type GetWorkloadInput struct { - _ struct{} `type:"structure" nopayload:"true"` + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + // + // PillarId is a required field + PillarId *string `min:"1" type:"string" required:"true"` + + // The ID of the question. + // + // QuestionId is a required field + QuestionId *string `min:"1" type:"string" required:"true"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. @@ -10949,7 +14884,7 @@ type GetWorkloadInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetWorkloadInput) String() string { +func (s ListCheckSummariesInput) String() string { return awsutil.Prettify(s) } @@ -10958,13 +14893,37 @@ func (s GetWorkloadInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetWorkloadInput) GoString() string { +func (s ListCheckSummariesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetWorkloadInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetWorkloadInput"} +func (s *ListCheckSummariesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCheckSummariesInput"} + if s.ChoiceId == nil { + invalidParams.Add(request.NewErrParamRequired("ChoiceId")) + } + if s.ChoiceId != nil && len(*s.ChoiceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ChoiceId", 1)) + } + if s.LensArn == nil { + invalidParams.Add(request.NewErrParamRequired("LensArn")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.PillarId == nil { + invalidParams.Add(request.NewErrParamRequired("PillarId")) + } + if s.PillarId != nil && len(*s.PillarId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) + } + if s.QuestionId == nil { + invalidParams.Add(request.NewErrParamRequired("QuestionId")) + } + if s.QuestionId != nil && len(*s.QuestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) + } if s.WorkloadId == nil { invalidParams.Add(request.NewErrParamRequired("WorkloadId")) } @@ -10978,18 +14937,56 @@ func (s *GetWorkloadInput) Validate() error { return nil } +// SetChoiceId sets the ChoiceId field's value. +func (s *ListCheckSummariesInput) SetChoiceId(v string) *ListCheckSummariesInput { + s.ChoiceId = &v + return s +} + +// SetLensArn sets the LensArn field's value. +func (s *ListCheckSummariesInput) SetLensArn(v string) *ListCheckSummariesInput { + s.LensArn = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCheckSummariesInput) SetMaxResults(v int64) *ListCheckSummariesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCheckSummariesInput) SetNextToken(v string) *ListCheckSummariesInput { + s.NextToken = &v + return s +} + +// SetPillarId sets the PillarId field's value. +func (s *ListCheckSummariesInput) SetPillarId(v string) *ListCheckSummariesInput { + s.PillarId = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *ListCheckSummariesInput) SetQuestionId(v string) *ListCheckSummariesInput { + s.QuestionId = &v + return s +} + // SetWorkloadId sets the WorkloadId field's value. -func (s *GetWorkloadInput) SetWorkloadId(v string) *GetWorkloadInput { +func (s *ListCheckSummariesInput) SetWorkloadId(v string) *ListCheckSummariesInput { s.WorkloadId = &v return s } -// Output of a get workload call. -type GetWorkloadOutput struct { +type ListCheckSummariesOutput struct { _ struct{} `type:"structure"` - // A workload return object. - Workload *Workload `type:"structure"` + // List of Trusted Advisor summaries related to the Well-Architected best practice. + CheckSummaries []*CheckSummary `type:"list"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` } // String returns the string representation. @@ -10997,7 +14994,7 @@ type GetWorkloadOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetWorkloadOutput) String() string { +func (s ListCheckSummariesOutput) String() string { return awsutil.Prettify(s) } @@ -11006,37 +15003,25 @@ func (s GetWorkloadOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s GetWorkloadOutput) GoString() string { +func (s ListCheckSummariesOutput) GoString() string { return s.String() } -// SetWorkload sets the Workload field's value. -func (s *GetWorkloadOutput) SetWorkload(v *Workload) *GetWorkloadOutput { - s.Workload = v +// SetCheckSummaries sets the CheckSummaries field's value. +func (s *ListCheckSummariesOutput) SetCheckSummaries(v []*CheckSummary) *ListCheckSummariesOutput { + s.CheckSummaries = v return s } -type ImportLensInput struct { - _ struct{} `type:"structure"` - - // A unique case-sensitive string used to ensure that this request is idempotent - // (executes only once). - // - // You should not reuse the same token for other requests. If you retry a request - // with the same client request token and the same parameters after the original - // request has completed successfully, the result of the original request is - // returned. - // - // This token is listed as required, however, if you do not specify it, the - // Amazon Web Services SDKs automatically generate one for you. If you are not - // using the Amazon Web Services SDK or the CLI, you must provide this token - // or the request will fail. - ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"` +// SetNextToken sets the NextToken field's value. +func (s *ListCheckSummariesOutput) SetNextToken(v string) *ListCheckSummariesOutput { + s.NextToken = &v + return s +} - // The JSON representation of a lens. - // - // JSONString is a required field - JSONString *string `min:"2" type:"string" required:"true"` +// Input to list lens review improvements. +type ListLensReviewImprovementsInput struct { + _ struct{} `type:"structure" nopayload:"true"` // The alias of the lens. // @@ -11048,10 +15033,34 @@ type ImportLensInput struct { // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. // // Each lens is identified by its LensSummary$LensAlias. - LensAlias *string `min:"1" type:"string"` + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` + + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `location:"querystring" locationName:"PillarId" min:"1" type:"string"` - // Tags to associate to a lens. - Tags map[string]*string `min:"1" type:"map"` + // The priority of the question. + QuestionPriority *string `location:"querystring" locationName:"QuestionPriority" type:"string" enum:"QuestionPriority"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -11059,7 +15068,7 @@ type ImportLensInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ImportLensInput) String() string { +func (s ListLensReviewImprovementsInput) String() string { return awsutil.Prettify(s) } @@ -11068,27 +15077,33 @@ func (s ImportLensInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ImportLensInput) GoString() string { +func (s ListLensReviewImprovementsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ImportLensInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ImportLensInput"} - if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) - } - if s.JSONString == nil { - invalidParams.Add(request.NewErrParamRequired("JSONString")) - } - if s.JSONString != nil && len(*s.JSONString) < 2 { - invalidParams.Add(request.NewErrParamMinLen("JSONString", 2)) +func (s *ListLensReviewImprovementsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLensReviewImprovementsInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } if s.LensAlias != nil && len(*s.LensAlias) < 1 { invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) + } + if s.PillarId != nil && len(*s.PillarId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) } if invalidParams.Len() > 0 { @@ -11097,38 +15112,81 @@ func (s *ImportLensInput) Validate() error { return nil } -// SetClientRequestToken sets the ClientRequestToken field's value. -func (s *ImportLensInput) SetClientRequestToken(v string) *ImportLensInput { - s.ClientRequestToken = &v +// SetLensAlias sets the LensAlias field's value. +func (s *ListLensReviewImprovementsInput) SetLensAlias(v string) *ListLensReviewImprovementsInput { + s.LensAlias = &v return s } -// SetJSONString sets the JSONString field's value. -func (s *ImportLensInput) SetJSONString(v string) *ImportLensInput { - s.JSONString = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListLensReviewImprovementsInput) SetMaxResults(v int64) *ListLensReviewImprovementsInput { + s.MaxResults = &v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *ImportLensInput) SetLensAlias(v string) *ImportLensInput { - s.LensAlias = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *ListLensReviewImprovementsInput) SetMilestoneNumber(v int64) *ListLensReviewImprovementsInput { + s.MilestoneNumber = &v return s } -// SetTags sets the Tags field's value. -func (s *ImportLensInput) SetTags(v map[string]*string) *ImportLensInput { - s.Tags = v +// SetNextToken sets the NextToken field's value. +func (s *ListLensReviewImprovementsInput) SetNextToken(v string) *ListLensReviewImprovementsInput { + s.NextToken = &v return s } -type ImportLensOutput struct { +// SetPillarId sets the PillarId field's value. +func (s *ListLensReviewImprovementsInput) SetPillarId(v string) *ListLensReviewImprovementsInput { + s.PillarId = &v + return s +} + +// SetQuestionPriority sets the QuestionPriority field's value. +func (s *ListLensReviewImprovementsInput) SetQuestionPriority(v string) *ListLensReviewImprovementsInput { + s.QuestionPriority = &v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListLensReviewImprovementsInput) SetWorkloadId(v string) *ListLensReviewImprovementsInput { + s.WorkloadId = &v + return s +} + +// Output of a list lens review improvements call. +type ListLensReviewImprovementsOutput struct { _ struct{} `type:"structure"` - // The ARN for the lens that was created or updated. + // List of improvement summaries of lens review in a workload. + ImprovementSummaries []*ImprovementSummary `type:"list"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` + + // The ARN for the lens. LensArn *string `type:"string"` - // The status of the imported lens. - Status *string `type:"string" enum:"ImportLensStatus"` + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -11136,7 +15194,7 @@ type ImportLensOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ImportLensOutput) String() string { +func (s ListLensReviewImprovementsOutput) String() string { return awsutil.Prettify(s) } @@ -11145,50 +15203,66 @@ func (s ImportLensOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ImportLensOutput) GoString() string { +func (s ListLensReviewImprovementsOutput) GoString() string { return s.String() } +// SetImprovementSummaries sets the ImprovementSummaries field's value. +func (s *ListLensReviewImprovementsOutput) SetImprovementSummaries(v []*ImprovementSummary) *ListLensReviewImprovementsOutput { + s.ImprovementSummaries = v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *ListLensReviewImprovementsOutput) SetLensAlias(v string) *ListLensReviewImprovementsOutput { + s.LensAlias = &v + return s +} + // SetLensArn sets the LensArn field's value. -func (s *ImportLensOutput) SetLensArn(v string) *ImportLensOutput { +func (s *ListLensReviewImprovementsOutput) SetLensArn(v string) *ListLensReviewImprovementsOutput { s.LensArn = &v return s } -// SetStatus sets the Status field's value. -func (s *ImportLensOutput) SetStatus(v string) *ImportLensOutput { - s.Status = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *ListLensReviewImprovementsOutput) SetMilestoneNumber(v int64) *ListLensReviewImprovementsOutput { + s.MilestoneNumber = &v return s } -// An improvement summary of a lens review in a workload. -type ImprovementSummary struct { - _ struct{} `type:"structure"` +// SetNextToken sets the NextToken field's value. +func (s *ListLensReviewImprovementsOutput) SetNextToken(v string) *ListLensReviewImprovementsOutput { + s.NextToken = &v + return s +} - // The improvement plan URL for a question in an Amazon Web Services official - // lenses. - // - // This value is only available if the question has been answered. - // - // This value does not apply to custom lenses. - ImprovementPlanUrl *string `min:"1" type:"string"` +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListLensReviewImprovementsOutput) SetWorkloadId(v string) *ListLensReviewImprovementsOutput { + s.WorkloadId = &v + return s +} - // The improvement plan details. - ImprovementPlans []*ChoiceImprovementPlan `type:"list"` +// Input to list lens reviews. +type ListLensReviewsInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The ID used to identify a pillar, for example, security. - // - // A pillar is identified by its PillarReviewSummary$PillarId. - PillarId *string `min:"1" type:"string"` + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // The ID of the question. - QuestionId *string `min:"1" type:"string"` + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` - // The title of the question. - QuestionTitle *string `min:"1" type:"string"` + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The risk for a given workload, lens review, pillar, or question. - Risk *string `type:"string" enum:"Risk"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -11196,7 +15270,7 @@ type ImprovementSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ImprovementSummary) String() string { +func (s ListLensReviewsInput) String() string { return awsutil.Prettify(s) } @@ -11205,53 +15279,74 @@ func (s ImprovementSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ImprovementSummary) GoString() string { +func (s ListLensReviewsInput) GoString() string { return s.String() } -// SetImprovementPlanUrl sets the ImprovementPlanUrl field's value. -func (s *ImprovementSummary) SetImprovementPlanUrl(v string) *ImprovementSummary { - s.ImprovementPlanUrl = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLensReviewsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLensReviewsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { + invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } -// SetImprovementPlans sets the ImprovementPlans field's value. -func (s *ImprovementSummary) SetImprovementPlans(v []*ChoiceImprovementPlan) *ImprovementSummary { - s.ImprovementPlans = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetPillarId sets the PillarId field's value. -func (s *ImprovementSummary) SetPillarId(v string) *ImprovementSummary { - s.PillarId = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListLensReviewsInput) SetMaxResults(v int64) *ListLensReviewsInput { + s.MaxResults = &v return s } -// SetQuestionId sets the QuestionId field's value. -func (s *ImprovementSummary) SetQuestionId(v string) *ImprovementSummary { - s.QuestionId = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *ListLensReviewsInput) SetMilestoneNumber(v int64) *ListLensReviewsInput { + s.MilestoneNumber = &v return s } -// SetQuestionTitle sets the QuestionTitle field's value. -func (s *ImprovementSummary) SetQuestionTitle(v string) *ImprovementSummary { - s.QuestionTitle = &v +// SetNextToken sets the NextToken field's value. +func (s *ListLensReviewsInput) SetNextToken(v string) *ListLensReviewsInput { + s.NextToken = &v return s } -// SetRisk sets the Risk field's value. -func (s *ImprovementSummary) SetRisk(v string) *ImprovementSummary { - s.Risk = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListLensReviewsInput) SetWorkloadId(v string) *ListLensReviewsInput { + s.WorkloadId = &v return s } -// There is a problem with the Well-Architected Tool API service. -type InternalServerException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// Output of a list lens reviews call. +type ListLensReviewsOutput struct { + _ struct{} `type:"structure"` + + // List of lens summaries of lens reviews of a workload. + LensReviewSummaries []*LensReviewSummary `type:"list"` + + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` - // Description of the error. - Message_ *string `locationName:"Message" type:"string"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -11259,7 +15354,7 @@ type InternalServerException struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s InternalServerException) String() string { +func (s ListLensReviewsOutput) String() string { return awsutil.Prettify(s) } @@ -11268,72 +15363,63 @@ func (s InternalServerException) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s InternalServerException) GoString() string { +func (s ListLensReviewsOutput) GoString() string { return s.String() } -func newErrorInternalServerException(v protocol.ResponseMetadata) error { - return &InternalServerException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *InternalServerException) Code() string { - return "InternalServerException" -} - -// Message returns the exception's message. -func (s *InternalServerException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InternalServerException) OrigErr() error { - return nil +// SetLensReviewSummaries sets the LensReviewSummaries field's value. +func (s *ListLensReviewsOutput) SetLensReviewSummaries(v []*LensReviewSummary) *ListLensReviewsOutput { + s.LensReviewSummaries = v + return s } -func (s *InternalServerException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *ListLensReviewsOutput) SetMilestoneNumber(v int64) *ListLensReviewsOutput { + s.MilestoneNumber = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InternalServerException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetNextToken sets the NextToken field's value. +func (s *ListLensReviewsOutput) SetNextToken(v string) *ListLensReviewsOutput { + s.NextToken = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InternalServerException) RequestID() string { - return s.RespMetadata.RequestID +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListLensReviewsOutput) SetWorkloadId(v string) *ListLensReviewsOutput { + s.WorkloadId = &v + return s } -// A lens return object. -type Lens struct { - _ struct{} `type:"structure"` - - // The description of the lens. - Description *string `min:"1" type:"string"` - - // The ARN of a lens. - LensArn *string `type:"string"` +type ListLensSharesInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The version of a lens. - LensVersion *string `min:"1" type:"string"` + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The full name of the lens. - Name *string `min:"1" type:"string"` + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // The Amazon Web Services account ID that owns the lens. - Owner *string `type:"string"` + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The ID assigned to the share invitation. - ShareInvitationId *string `type:"string"` + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the lens is shared. + SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` - // The tags assigned to the lens. - Tags map[string]*string `min:"1" type:"map"` + // The status of the share request. + Status *string `location:"querystring" locationName:"Status" type:"string" enum:"ShareStatus"` } // String returns the string representation. @@ -11341,7 +15427,7 @@ type Lens struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Lens) String() string { +func (s ListLensSharesInput) String() string { return awsutil.Prettify(s) } @@ -11350,64 +15436,67 @@ func (s Lens) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Lens) GoString() string { +func (s ListLensSharesInput) GoString() string { return s.String() } -// SetDescription sets the Description field's value. -func (s *Lens) SetDescription(v string) *Lens { - s.Description = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLensSharesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLensSharesInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } -// SetLensArn sets the LensArn field's value. -func (s *Lens) SetLensArn(v string) *Lens { - s.LensArn = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetLensVersion sets the LensVersion field's value. -func (s *Lens) SetLensVersion(v string) *Lens { - s.LensVersion = &v +// SetLensAlias sets the LensAlias field's value. +func (s *ListLensSharesInput) SetLensAlias(v string) *ListLensSharesInput { + s.LensAlias = &v return s } -// SetName sets the Name field's value. -func (s *Lens) SetName(v string) *Lens { - s.Name = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListLensSharesInput) SetMaxResults(v int64) *ListLensSharesInput { + s.MaxResults = &v return s } -// SetOwner sets the Owner field's value. -func (s *Lens) SetOwner(v string) *Lens { - s.Owner = &v +// SetNextToken sets the NextToken field's value. +func (s *ListLensSharesInput) SetNextToken(v string) *ListLensSharesInput { + s.NextToken = &v return s } -// SetShareInvitationId sets the ShareInvitationId field's value. -func (s *Lens) SetShareInvitationId(v string) *Lens { - s.ShareInvitationId = &v +// SetSharedWithPrefix sets the SharedWithPrefix field's value. +func (s *ListLensSharesInput) SetSharedWithPrefix(v string) *ListLensSharesInput { + s.SharedWithPrefix = &v return s } -// SetTags sets the Tags field's value. -func (s *Lens) SetTags(v map[string]*string) *Lens { - s.Tags = v +// SetStatus sets the Status field's value. +func (s *ListLensSharesInput) SetStatus(v string) *ListLensSharesInput { + s.Status = &v return s } -// A metric for a particular lens in a workload. -type LensMetric struct { +type ListLensSharesOutput struct { _ struct{} `type:"structure"` - // The lens ARN. - LensArn *string `type:"string"` - - // The metrics for the pillars in a lens. - Pillars []*PillarMetric `type:"list"` + // A list of lens share summaries. + LensShareSummaries []*LensShareSummary `type:"list"` - // A map from risk names to the count of how many questions have that rating. - RiskCounts map[string]*int64 `type:"map"` + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` } // String returns the string representation. @@ -11415,7 +15504,7 @@ type LensMetric struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensMetric) String() string { +func (s ListLensSharesOutput) String() string { return awsutil.Prettify(s) } @@ -11424,76 +15513,40 @@ func (s LensMetric) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensMetric) GoString() string { +func (s ListLensSharesOutput) GoString() string { return s.String() } -// SetLensArn sets the LensArn field's value. -func (s *LensMetric) SetLensArn(v string) *LensMetric { - s.LensArn = &v - return s -} - -// SetPillars sets the Pillars field's value. -func (s *LensMetric) SetPillars(v []*PillarMetric) *LensMetric { - s.Pillars = v +// SetLensShareSummaries sets the LensShareSummaries field's value. +func (s *ListLensSharesOutput) SetLensShareSummaries(v []*LensShareSummary) *ListLensSharesOutput { + s.LensShareSummaries = v return s } -// SetRiskCounts sets the RiskCounts field's value. -func (s *LensMetric) SetRiskCounts(v map[string]*int64) *LensMetric { - s.RiskCounts = v +// SetNextToken sets the NextToken field's value. +func (s *ListLensSharesOutput) SetNextToken(v string) *ListLensSharesOutput { + s.NextToken = &v return s } -// A lens review of a question. -type LensReview struct { - _ struct{} `type:"structure"` - - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - LensAlias *string `min:"1" type:"string"` - - // The ARN for the lens. - LensArn *string `type:"string"` +// Input to list lenses. +type ListLensesInput struct { + _ struct{} `type:"structure" nopayload:"true"` // The full name of the lens. - LensName *string `min:"1" type:"string"` - - // The status of the lens. - LensStatus *string `type:"string" enum:"LensStatus"` - - // The version of the lens. - LensVersion *string `min:"1" type:"string"` - - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` - - // The notes associated with the workload. - Notes *string `type:"string"` - - // List of pillar review summaries of lens review in a workload. - PillarReviewSummaries []*PillarReviewSummary `type:"list"` + LensName *string `location:"querystring" locationName:"LensName" min:"1" type:"string"` - // A map from risk names to the count of how many questions have that rating. - PrioritizedRiskCounts map[string]*int64 `type:"map"` + // The status of lenses to be returned. + LensStatus *string `location:"querystring" locationName:"LensStatus" type:"string" enum:"LensStatusType"` - // The profiles associated with the workload. - Profiles []*WorkloadProfile `type:"list"` + // The type of lenses to be returned. + LensType *string `location:"querystring" locationName:"LensType" type:"string" enum:"LensType"` - // A map from risk names to the count of how many questions have that rating. - RiskCounts map[string]*int64 `type:"map"` + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // The date and time recorded. - UpdatedAt *time.Time `type:"timestamp"` + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } // String returns the string representation. @@ -11501,7 +15554,7 @@ type LensReview struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensReview) String() string { +func (s ListLensesInput) String() string { return awsutil.Prettify(s) } @@ -11510,107 +15563,65 @@ func (s LensReview) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensReview) GoString() string { +func (s ListLensesInput) GoString() string { return s.String() } -// SetLensAlias sets the LensAlias field's value. -func (s *LensReview) SetLensAlias(v string) *LensReview { - s.LensAlias = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListLensesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLensesInput"} + if s.LensName != nil && len(*s.LensName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensName", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } -// SetLensArn sets the LensArn field's value. -func (s *LensReview) SetLensArn(v string) *LensReview { - s.LensArn = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } // SetLensName sets the LensName field's value. -func (s *LensReview) SetLensName(v string) *LensReview { +func (s *ListLensesInput) SetLensName(v string) *ListLensesInput { s.LensName = &v return s } // SetLensStatus sets the LensStatus field's value. -func (s *LensReview) SetLensStatus(v string) *LensReview { +func (s *ListLensesInput) SetLensStatus(v string) *ListLensesInput { s.LensStatus = &v return s } -// SetLensVersion sets the LensVersion field's value. -func (s *LensReview) SetLensVersion(v string) *LensReview { - s.LensVersion = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *LensReview) SetNextToken(v string) *LensReview { - s.NextToken = &v - return s -} - -// SetNotes sets the Notes field's value. -func (s *LensReview) SetNotes(v string) *LensReview { - s.Notes = &v - return s -} - -// SetPillarReviewSummaries sets the PillarReviewSummaries field's value. -func (s *LensReview) SetPillarReviewSummaries(v []*PillarReviewSummary) *LensReview { - s.PillarReviewSummaries = v - return s -} - -// SetPrioritizedRiskCounts sets the PrioritizedRiskCounts field's value. -func (s *LensReview) SetPrioritizedRiskCounts(v map[string]*int64) *LensReview { - s.PrioritizedRiskCounts = v - return s -} - -// SetProfiles sets the Profiles field's value. -func (s *LensReview) SetProfiles(v []*WorkloadProfile) *LensReview { - s.Profiles = v +// SetLensType sets the LensType field's value. +func (s *ListLensesInput) SetLensType(v string) *ListLensesInput { + s.LensType = &v return s } -// SetRiskCounts sets the RiskCounts field's value. -func (s *LensReview) SetRiskCounts(v map[string]*int64) *LensReview { - s.RiskCounts = v +// SetMaxResults sets the MaxResults field's value. +func (s *ListLensesInput) SetMaxResults(v int64) *ListLensesInput { + s.MaxResults = &v return s } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *LensReview) SetUpdatedAt(v time.Time) *LensReview { - s.UpdatedAt = &v +// SetNextToken sets the NextToken field's value. +func (s *ListLensesInput) SetNextToken(v string) *ListLensesInput { + s.NextToken = &v return s } -// A report of a lens review. -type LensReviewReport struct { +// Output of a list lenses call. +type ListLensesOutput struct { _ struct{} `type:"structure"` - // The Base64-encoded string representation of a lens review report. - // - // This data can be used to create a PDF file. - // - // Only returned by GetConsolidatedReport when PDF format is requested. - Base64String *string `type:"string"` - - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - LensAlias *string `min:"1" type:"string"` + // List of lens summaries of available lenses. + LensSummaries []*LensSummary `type:"list"` - // The ARN for the lens. - LensArn *string `type:"string"` + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` } // String returns the string representation. @@ -11618,7 +15629,7 @@ type LensReviewReport struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensReviewReport) String() string { +func (s ListLensesOutput) String() string { return awsutil.Prettify(s) } @@ -11627,67 +15638,37 @@ func (s LensReviewReport) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensReviewReport) GoString() string { +func (s ListLensesOutput) GoString() string { return s.String() } -// SetBase64String sets the Base64String field's value. -func (s *LensReviewReport) SetBase64String(v string) *LensReviewReport { - s.Base64String = &v - return s -} - -// SetLensAlias sets the LensAlias field's value. -func (s *LensReviewReport) SetLensAlias(v string) *LensReviewReport { - s.LensAlias = &v +// SetLensSummaries sets the LensSummaries field's value. +func (s *ListLensesOutput) SetLensSummaries(v []*LensSummary) *ListLensesOutput { + s.LensSummaries = v return s } -// SetLensArn sets the LensArn field's value. -func (s *LensReviewReport) SetLensArn(v string) *LensReviewReport { - s.LensArn = &v +// SetNextToken sets the NextToken field's value. +func (s *ListLensesOutput) SetNextToken(v string) *ListLensesOutput { + s.NextToken = &v return s } -// A lens review summary of a workload. -type LensReviewSummary struct { +// Input to list all milestones for a workload. +type ListMilestonesInput struct { _ struct{} `type:"structure"` - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - LensAlias *string `min:"1" type:"string"` - - // The ARN for the lens. - LensArn *string `type:"string"` - - // The full name of the lens. - LensName *string `min:"1" type:"string"` - - // The status of the lens. - LensStatus *string `type:"string" enum:"LensStatus"` - - // The version of the lens. - LensVersion *string `min:"1" type:"string"` - - // A map from risk names to the count of how many questions have that rating. - PrioritizedRiskCounts map[string]*int64 `type:"map"` - - // The profiles associated with the workload. - Profiles []*WorkloadProfile `type:"list"` + // The maximum number of results to return for this request. + MaxResults *int64 `min:"1" type:"integer"` - // A map from risk names to the count of how many questions have that rating. - RiskCounts map[string]*int64 `type:"map"` + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` - // The date and time recorded. - UpdatedAt *time.Time `type:"timestamp"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -11695,7 +15676,7 @@ type LensReviewSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensReviewSummary) String() string { +func (s ListMilestonesInput) String() string { return awsutil.Prettify(s) } @@ -11704,80 +15685,60 @@ func (s LensReviewSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensReviewSummary) GoString() string { +func (s ListMilestonesInput) GoString() string { return s.String() } -// SetLensAlias sets the LensAlias field's value. -func (s *LensReviewSummary) SetLensAlias(v string) *LensReviewSummary { - s.LensAlias = &v - return s -} - -// SetLensArn sets the LensArn field's value. -func (s *LensReviewSummary) SetLensArn(v string) *LensReviewSummary { - s.LensArn = &v - return s -} - -// SetLensName sets the LensName field's value. -func (s *LensReviewSummary) SetLensName(v string) *LensReviewSummary { - s.LensName = &v - return s -} - -// SetLensStatus sets the LensStatus field's value. -func (s *LensReviewSummary) SetLensStatus(v string) *LensReviewSummary { - s.LensStatus = &v - return s -} - -// SetLensVersion sets the LensVersion field's value. -func (s *LensReviewSummary) SetLensVersion(v string) *LensReviewSummary { - s.LensVersion = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMilestonesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMilestonesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } -// SetPrioritizedRiskCounts sets the PrioritizedRiskCounts field's value. -func (s *LensReviewSummary) SetPrioritizedRiskCounts(v map[string]*int64) *LensReviewSummary { - s.PrioritizedRiskCounts = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetProfiles sets the Profiles field's value. -func (s *LensReviewSummary) SetProfiles(v []*WorkloadProfile) *LensReviewSummary { - s.Profiles = v +// SetMaxResults sets the MaxResults field's value. +func (s *ListMilestonesInput) SetMaxResults(v int64) *ListMilestonesInput { + s.MaxResults = &v return s } -// SetRiskCounts sets the RiskCounts field's value. -func (s *LensReviewSummary) SetRiskCounts(v map[string]*int64) *LensReviewSummary { - s.RiskCounts = v +// SetNextToken sets the NextToken field's value. +func (s *ListMilestonesInput) SetNextToken(v string) *ListMilestonesInput { + s.NextToken = &v return s } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *LensReviewSummary) SetUpdatedAt(v time.Time) *LensReviewSummary { - s.UpdatedAt = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListMilestonesInput) SetWorkloadId(v string) *ListMilestonesInput { + s.WorkloadId = &v return s } -// A lens share summary return object. -type LensShareSummary struct { +// Output of a list milestones call. +type ListMilestonesOutput struct { _ struct{} `type:"structure"` - // The ID associated with the share. - ShareId *string `type:"string"` - - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. - SharedWith *string `min:"12" type:"string"` - - // The status of the share request. - Status *string `type:"string" enum:"ShareStatus"` + // A list of milestone summaries. + MilestoneSummaries []*MilestoneSummary `type:"list"` - // Optional message to compliment the Status field. - StatusMessage *string `min:"1" type:"string"` + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -11785,7 +15746,7 @@ type LensShareSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensShareSummary) String() string { +func (s ListMilestonesOutput) String() string { return awsutil.Prettify(s) } @@ -11794,76 +15755,45 @@ func (s LensShareSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensShareSummary) GoString() string { +func (s ListMilestonesOutput) GoString() string { return s.String() } -// SetShareId sets the ShareId field's value. -func (s *LensShareSummary) SetShareId(v string) *LensShareSummary { - s.ShareId = &v - return s -} - -// SetSharedWith sets the SharedWith field's value. -func (s *LensShareSummary) SetSharedWith(v string) *LensShareSummary { - s.SharedWith = &v +// SetMilestoneSummaries sets the MilestoneSummaries field's value. +func (s *ListMilestonesOutput) SetMilestoneSummaries(v []*MilestoneSummary) *ListMilestonesOutput { + s.MilestoneSummaries = v return s } -// SetStatus sets the Status field's value. -func (s *LensShareSummary) SetStatus(v string) *LensShareSummary { - s.Status = &v +// SetNextToken sets the NextToken field's value. +func (s *ListMilestonesOutput) SetNextToken(v string) *ListMilestonesOutput { + s.NextToken = &v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *LensShareSummary) SetStatusMessage(v string) *LensShareSummary { - s.StatusMessage = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListMilestonesOutput) SetWorkloadId(v string) *ListMilestonesOutput { + s.WorkloadId = &v return s } -// A lens summary of a lens. -type LensSummary struct { +type ListNotificationsInput struct { _ struct{} `type:"structure"` - // The date and time recorded. - CreatedAt *time.Time `type:"timestamp"` + // The maximum number of results to return for this request. + MaxResults *int64 `min:"1" type:"integer"` - // The description of the lens. - Description *string `min:"1" type:"string"` + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` - // The alias of the lens. + // The ARN for the related resource for the notification. // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - LensAlias *string `min:"1" type:"string"` - - // The ARN of the lens. - LensArn *string `type:"string"` - - // The full name of the lens. - LensName *string `min:"1" type:"string"` - - // The status of the lens. - LensStatus *string `type:"string" enum:"LensStatus"` - - // The type of the lens. - LensType *string `type:"string" enum:"LensType"` - - // The version of the lens. - LensVersion *string `min:"1" type:"string"` + // Only one of WorkloadID or ResourceARN should be specified. + ResourceArn *string `min:"50" type:"string"` - // An Amazon Web Services account ID. - Owner *string `min:"12" type:"string"` - - // The date and time recorded. - UpdatedAt *time.Time `type:"timestamp"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -11871,7 +15801,7 @@ type LensSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensSummary) String() string { +func (s ListNotificationsInput) String() string { return awsutil.Prettify(s) } @@ -11880,104 +15810,105 @@ func (s LensSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensSummary) GoString() string { +func (s ListNotificationsInput) GoString() string { return s.String() } -// SetCreatedAt sets the CreatedAt field's value. -func (s *LensSummary) SetCreatedAt(v time.Time) *LensSummary { - s.CreatedAt = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListNotificationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListNotificationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 50)) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetDescription sets the Description field's value. -func (s *LensSummary) SetDescription(v string) *LensSummary { - s.Description = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListNotificationsInput) SetMaxResults(v int64) *ListNotificationsInput { + s.MaxResults = &v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *LensSummary) SetLensAlias(v string) *LensSummary { - s.LensAlias = &v +// SetNextToken sets the NextToken field's value. +func (s *ListNotificationsInput) SetNextToken(v string) *ListNotificationsInput { + s.NextToken = &v return s } -// SetLensArn sets the LensArn field's value. -func (s *LensSummary) SetLensArn(v string) *LensSummary { - s.LensArn = &v +// SetResourceArn sets the ResourceArn field's value. +func (s *ListNotificationsInput) SetResourceArn(v string) *ListNotificationsInput { + s.ResourceArn = &v return s } -// SetLensName sets the LensName field's value. -func (s *LensSummary) SetLensName(v string) *LensSummary { - s.LensName = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListNotificationsInput) SetWorkloadId(v string) *ListNotificationsInput { + s.WorkloadId = &v return s } -// SetLensStatus sets the LensStatus field's value. -func (s *LensSummary) SetLensStatus(v string) *LensSummary { - s.LensStatus = &v - return s +type ListNotificationsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // List of lens notification summaries in a workload. + NotificationSummaries []*NotificationSummary `type:"list"` } -// SetLensType sets the LensType field's value. -func (s *LensSummary) SetLensType(v string) *LensSummary { - s.LensType = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListNotificationsOutput) String() string { + return awsutil.Prettify(s) } -// SetLensVersion sets the LensVersion field's value. -func (s *LensSummary) SetLensVersion(v string) *LensSummary { - s.LensVersion = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListNotificationsOutput) GoString() string { + return s.String() } -// SetOwner sets the Owner field's value. -func (s *LensSummary) SetOwner(v string) *LensSummary { - s.Owner = &v +// SetNextToken sets the NextToken field's value. +func (s *ListNotificationsOutput) SetNextToken(v string) *ListNotificationsOutput { + s.NextToken = &v return s } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *LensSummary) SetUpdatedAt(v time.Time) *LensSummary { - s.UpdatedAt = &v +// SetNotificationSummaries sets the NotificationSummaries field's value. +func (s *ListNotificationsOutput) SetNotificationSummaries(v []*NotificationSummary) *ListNotificationsOutput { + s.NotificationSummaries = v return s } -// Lens upgrade summary return object. -type LensUpgradeSummary struct { - _ struct{} `type:"structure"` - - // The current version of the lens. - CurrentLensVersion *string `min:"1" type:"string"` - - // The latest version of the lens. - LatestLensVersion *string `min:"1" type:"string"` +type ListProfileNotificationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - LensAlias *string `min:"1" type:"string"` + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // The ARN for the lens. - LensArn *string `type:"string"` + // The token to use to retrieve the next set of results. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. - WorkloadId *string `min:"32" type:"string"` - - // The name of the workload. - // - // The name must be unique within an account within an Amazon Web Services Region. - // Spaces and capitalization are ignored when checking for uniqueness. - WorkloadName *string `min:"3" type:"string"` + WorkloadId *string `location:"querystring" locationName:"WorkloadId" min:"32" type:"string"` } // String returns the string representation. @@ -11985,7 +15916,7 @@ type LensUpgradeSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensUpgradeSummary) String() string { +func (s ListProfileNotificationsInput) String() string { return awsutil.Prettify(s) } @@ -11994,88 +15925,104 @@ func (s LensUpgradeSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s LensUpgradeSummary) GoString() string { +func (s ListProfileNotificationsInput) GoString() string { return s.String() } -// SetCurrentLensVersion sets the CurrentLensVersion field's value. -func (s *LensUpgradeSummary) SetCurrentLensVersion(v string) *LensUpgradeSummary { - s.CurrentLensVersion = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListProfileNotificationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProfileNotificationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListProfileNotificationsInput) SetMaxResults(v int64) *ListProfileNotificationsInput { + s.MaxResults = &v return s } -// SetLatestLensVersion sets the LatestLensVersion field's value. -func (s *LensUpgradeSummary) SetLatestLensVersion(v string) *LensUpgradeSummary { - s.LatestLensVersion = &v +// SetNextToken sets the NextToken field's value. +func (s *ListProfileNotificationsInput) SetNextToken(v string) *ListProfileNotificationsInput { + s.NextToken = &v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *LensUpgradeSummary) SetLensAlias(v string) *LensUpgradeSummary { - s.LensAlias = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListProfileNotificationsInput) SetWorkloadId(v string) *ListProfileNotificationsInput { + s.WorkloadId = &v return s } -// SetLensArn sets the LensArn field's value. -func (s *LensUpgradeSummary) SetLensArn(v string) *LensUpgradeSummary { - s.LensArn = &v - return s +type ListProfileNotificationsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // Notification summaries. + NotificationSummaries []*ProfileNotificationSummary `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfileNotificationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfileNotificationsOutput) GoString() string { + return s.String() } -// SetWorkloadId sets the WorkloadId field's value. -func (s *LensUpgradeSummary) SetWorkloadId(v string) *LensUpgradeSummary { - s.WorkloadId = &v +// SetNextToken sets the NextToken field's value. +func (s *ListProfileNotificationsOutput) SetNextToken(v string) *ListProfileNotificationsOutput { + s.NextToken = &v return s } -// SetWorkloadName sets the WorkloadName field's value. -func (s *LensUpgradeSummary) SetWorkloadName(v string) *LensUpgradeSummary { - s.WorkloadName = &v +// SetNotificationSummaries sets the NotificationSummaries field's value. +func (s *ListProfileNotificationsOutput) SetNotificationSummaries(v []*ProfileNotificationSummary) *ListProfileNotificationsOutput { + s.NotificationSummaries = v return s } -// Input to list answers. -type ListAnswersInput struct { +type ListProfileSharesInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The maximum number of results to return for this request. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` - // The token to use to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The ID used to identify a pillar, for example, security. + // The profile ARN. // - // A pillar is identified by its PillarReviewSummary$PillarId. - PillarId *string `location:"querystring" locationName:"PillarId" min:"1" type:"string"` + // ProfileArn is a required field + ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` - // The priority of the question. - QuestionPriority *string `location:"querystring" locationName:"QuestionPriority" type:"string" enum:"QuestionPriority"` + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the profile is shared. + SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // The status of the share request. + Status *string `location:"querystring" locationName:"Status" type:"string" enum:"ShareStatus"` } // String returns the string representation. @@ -12083,7 +16030,7 @@ type ListAnswersInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListAnswersInput) String() string { +func (s ListProfileSharesInput) String() string { return awsutil.Prettify(s) } @@ -12092,33 +16039,21 @@ func (s ListAnswersInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListAnswersInput) GoString() string { +func (s ListProfileSharesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListAnswersInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListAnswersInput"} - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) - } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) - } +func (s *ListProfileSharesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProfileSharesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) - } - if s.PillarId != nil && len(*s.PillarId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + if s.ProfileArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileArn")) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) } if invalidParams.Len() > 0 { @@ -12127,81 +16062,91 @@ func (s *ListAnswersInput) Validate() error { return nil } -// SetLensAlias sets the LensAlias field's value. -func (s *ListAnswersInput) SetLensAlias(v string) *ListAnswersInput { - s.LensAlias = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListAnswersInput) SetMaxResults(v int64) *ListAnswersInput { +func (s *ListProfileSharesInput) SetMaxResults(v int64) *ListProfileSharesInput { s.MaxResults = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *ListAnswersInput) SetMilestoneNumber(v int64) *ListAnswersInput { - s.MilestoneNumber = &v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListAnswersInput) SetNextToken(v string) *ListAnswersInput { +func (s *ListProfileSharesInput) SetNextToken(v string) *ListProfileSharesInput { s.NextToken = &v return s } -// SetPillarId sets the PillarId field's value. -func (s *ListAnswersInput) SetPillarId(v string) *ListAnswersInput { - s.PillarId = &v +// SetProfileArn sets the ProfileArn field's value. +func (s *ListProfileSharesInput) SetProfileArn(v string) *ListProfileSharesInput { + s.ProfileArn = &v return s } -// SetQuestionPriority sets the QuestionPriority field's value. -func (s *ListAnswersInput) SetQuestionPriority(v string) *ListAnswersInput { - s.QuestionPriority = &v +// SetSharedWithPrefix sets the SharedWithPrefix field's value. +func (s *ListProfileSharesInput) SetSharedWithPrefix(v string) *ListProfileSharesInput { + s.SharedWithPrefix = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListAnswersInput) SetWorkloadId(v string) *ListAnswersInput { - s.WorkloadId = &v +// SetStatus sets the Status field's value. +func (s *ListProfileSharesInput) SetStatus(v string) *ListProfileSharesInput { + s.Status = &v return s } -// Output of a list answers call. -type ListAnswersOutput struct { +type ListProfileSharesOutput struct { _ struct{} `type:"structure"` - // List of answer summaries of lens review in a workload. - AnswerSummaries []*AnswerSummary `type:"list"` + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - LensAlias *string `min:"1" type:"string"` + // Profile share summaries. + ProfileShareSummaries []*ProfileShareSummary `type:"list"` +} - // The ARN for the lens. - LensArn *string `type:"string"` +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfileSharesOutput) String() string { + return awsutil.Prettify(s) +} - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfileSharesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProfileSharesOutput) SetNextToken(v string) *ListProfileSharesOutput { + s.NextToken = &v + return s +} + +// SetProfileShareSummaries sets the ProfileShareSummaries field's value. +func (s *ListProfileSharesOutput) SetProfileShareSummaries(v []*ProfileShareSummary) *ListProfileSharesOutput { + s.ProfileShareSummaries = v + return s +} + +type ListProfilesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return for this request. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // An optional string added to the beginning of each profile name returned in + // the results. + ProfileNamePrefix *string `location:"querystring" locationName:"ProfileNamePrefix" type:"string"` + + // Profile owner type. + ProfileOwnerType *string `location:"querystring" locationName:"ProfileOwnerType" type:"string" enum:"ProfileOwnerType"` } // String returns the string representation. @@ -12209,7 +16154,7 @@ type ListAnswersOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListAnswersOutput) String() string { +func (s ListProfilesInput) String() string { return awsutil.Prettify(s) } @@ -12218,82 +16163,119 @@ func (s ListAnswersOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListAnswersOutput) GoString() string { +func (s ListProfilesInput) GoString() string { return s.String() } -// SetAnswerSummaries sets the AnswerSummaries field's value. -func (s *ListAnswersOutput) SetAnswerSummaries(v []*AnswerSummary) *ListAnswersOutput { - s.AnswerSummaries = v +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListProfilesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProfilesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListProfilesInput) SetMaxResults(v int64) *ListProfilesInput { + s.MaxResults = &v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *ListAnswersOutput) SetLensAlias(v string) *ListAnswersOutput { - s.LensAlias = &v +// SetNextToken sets the NextToken field's value. +func (s *ListProfilesInput) SetNextToken(v string) *ListProfilesInput { + s.NextToken = &v return s } -// SetLensArn sets the LensArn field's value. -func (s *ListAnswersOutput) SetLensArn(v string) *ListAnswersOutput { - s.LensArn = &v +// SetProfileNamePrefix sets the ProfileNamePrefix field's value. +func (s *ListProfilesInput) SetProfileNamePrefix(v string) *ListProfilesInput { + s.ProfileNamePrefix = &v + return s +} + +// SetProfileOwnerType sets the ProfileOwnerType field's value. +func (s *ListProfilesInput) SetProfileOwnerType(v string) *ListProfilesInput { + s.ProfileOwnerType = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *ListAnswersOutput) SetMilestoneNumber(v int64) *ListAnswersOutput { - s.MilestoneNumber = &v - return s +type ListProfilesOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` + + // Profile summaries. + ProfileSummaries []*ProfileSummary `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfilesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfilesOutput) GoString() string { + return s.String() } // SetNextToken sets the NextToken field's value. -func (s *ListAnswersOutput) SetNextToken(v string) *ListAnswersOutput { +func (s *ListProfilesOutput) SetNextToken(v string) *ListProfilesOutput { s.NextToken = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListAnswersOutput) SetWorkloadId(v string) *ListAnswersOutput { - s.WorkloadId = &v +// SetProfileSummaries sets the ProfileSummaries field's value. +func (s *ListProfilesOutput) SetProfileSummaries(v []*ProfileSummary) *ListProfilesOutput { + s.ProfileSummaries = v return s } -type ListCheckDetailsInput struct { - _ struct{} `type:"structure"` +type ListReviewTemplateAnswersInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The ID of a choice. + // The alias of the lens. // - // ChoiceId is a required field - ChoiceId *string `min:"1" type:"string" required:"true"` - - // Well-Architected Lens ARN. + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. // - // LensArn is a required field - LensArn *string `type:"string" required:"true"` + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` // The maximum number of results to return for this request. - MaxResults *int64 `min:"1" type:"integer"` + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` // The ID used to identify a pillar, for example, security. // // A pillar is identified by its PillarReviewSummary$PillarId. - // - // PillarId is a required field - PillarId *string `min:"1" type:"string" required:"true"` - - // The ID of the question. - // - // QuestionId is a required field - QuestionId *string `min:"1" type:"string" required:"true"` + PillarId *string `location:"querystring" locationName:"PillarId" min:"1" type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. + // The ARN of the review template. // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -12301,7 +16283,7 @@ type ListCheckDetailsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListCheckDetailsInput) String() string { +func (s ListReviewTemplateAnswersInput) String() string { return awsutil.Prettify(s) } @@ -12310,42 +16292,30 @@ func (s ListCheckDetailsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListCheckDetailsInput) GoString() string { +func (s ListReviewTemplateAnswersInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListCheckDetailsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListCheckDetailsInput"} - if s.ChoiceId == nil { - invalidParams.Add(request.NewErrParamRequired("ChoiceId")) - } - if s.ChoiceId != nil && len(*s.ChoiceId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ChoiceId", 1)) +func (s *ListReviewTemplateAnswersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReviewTemplateAnswersInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } - if s.LensArn == nil { - invalidParams.Add(request.NewErrParamRequired("LensArn")) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.PillarId == nil { - invalidParams.Add(request.NewErrParamRequired("PillarId")) - } if s.PillarId != nil && len(*s.PillarId) < 1 { invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) } - if s.QuestionId == nil { - invalidParams.Add(request.NewErrParamRequired("QuestionId")) - } - if s.QuestionId != nil && len(*s.QuestionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) } if invalidParams.Len() > 0 { @@ -12354,57 +16324,59 @@ func (s *ListCheckDetailsInput) Validate() error { return nil } -// SetChoiceId sets the ChoiceId field's value. -func (s *ListCheckDetailsInput) SetChoiceId(v string) *ListCheckDetailsInput { - s.ChoiceId = &v - return s -} - -// SetLensArn sets the LensArn field's value. -func (s *ListCheckDetailsInput) SetLensArn(v string) *ListCheckDetailsInput { - s.LensArn = &v +// SetLensAlias sets the LensAlias field's value. +func (s *ListReviewTemplateAnswersInput) SetLensAlias(v string) *ListReviewTemplateAnswersInput { + s.LensAlias = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListCheckDetailsInput) SetMaxResults(v int64) *ListCheckDetailsInput { +func (s *ListReviewTemplateAnswersInput) SetMaxResults(v int64) *ListReviewTemplateAnswersInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListCheckDetailsInput) SetNextToken(v string) *ListCheckDetailsInput { +func (s *ListReviewTemplateAnswersInput) SetNextToken(v string) *ListReviewTemplateAnswersInput { s.NextToken = &v return s } // SetPillarId sets the PillarId field's value. -func (s *ListCheckDetailsInput) SetPillarId(v string) *ListCheckDetailsInput { +func (s *ListReviewTemplateAnswersInput) SetPillarId(v string) *ListReviewTemplateAnswersInput { s.PillarId = &v return s } -// SetQuestionId sets the QuestionId field's value. -func (s *ListCheckDetailsInput) SetQuestionId(v string) *ListCheckDetailsInput { - s.QuestionId = &v - return s -} - -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListCheckDetailsInput) SetWorkloadId(v string) *ListCheckDetailsInput { - s.WorkloadId = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *ListReviewTemplateAnswersInput) SetTemplateArn(v string) *ListReviewTemplateAnswersInput { + s.TemplateArn = &v return s } -type ListCheckDetailsOutput struct { +type ListReviewTemplateAnswersOutput struct { _ struct{} `type:"structure"` - // The details about the Trusted Advisor checks related to the Well-Architected - // best practice. - CheckDetails []*CheckDetail `type:"list"` + // List of answer summaries of a lens review in a review template. + AnswerSummaries []*ReviewTemplateAnswerSummary `type:"list"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` // The token to use to retrieve the next set of results. NextToken *string `type:"string"` + + // The ARN of the review template. + TemplateArn *string `min:"50" type:"string"` } // String returns the string representation. @@ -12412,7 +16384,7 @@ type ListCheckDetailsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListCheckDetailsOutput) String() string { +func (s ListReviewTemplateAnswersOutput) String() string { return awsutil.Prettify(s) } @@ -12421,58 +16393,42 @@ func (s ListCheckDetailsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListCheckDetailsOutput) GoString() string { +func (s ListReviewTemplateAnswersOutput) GoString() string { return s.String() } -// SetCheckDetails sets the CheckDetails field's value. -func (s *ListCheckDetailsOutput) SetCheckDetails(v []*CheckDetail) *ListCheckDetailsOutput { - s.CheckDetails = v +// SetAnswerSummaries sets the AnswerSummaries field's value. +func (s *ListReviewTemplateAnswersOutput) SetAnswerSummaries(v []*ReviewTemplateAnswerSummary) *ListReviewTemplateAnswersOutput { + s.AnswerSummaries = v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *ListReviewTemplateAnswersOutput) SetLensAlias(v string) *ListReviewTemplateAnswersOutput { + s.LensAlias = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListCheckDetailsOutput) SetNextToken(v string) *ListCheckDetailsOutput { +func (s *ListReviewTemplateAnswersOutput) SetNextToken(v string) *ListReviewTemplateAnswersOutput { s.NextToken = &v return s } -type ListCheckSummariesInput struct { - _ struct{} `type:"structure"` - - // The ID of a choice. - // - // ChoiceId is a required field - ChoiceId *string `min:"1" type:"string" required:"true"` +// SetTemplateArn sets the TemplateArn field's value. +func (s *ListReviewTemplateAnswersOutput) SetTemplateArn(v string) *ListReviewTemplateAnswersOutput { + s.TemplateArn = &v + return s +} - // Well-Architected Lens ARN. - // - // LensArn is a required field - LensArn *string `type:"string" required:"true"` +type ListReviewTemplatesInput struct { + _ struct{} `type:"structure" nopayload:"true"` // The maximum number of results to return for this request. - MaxResults *int64 `min:"1" type:"integer"` + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` - - // The ID used to identify a pillar, for example, security. - // - // A pillar is identified by its PillarReviewSummary$PillarId. - // - // PillarId is a required field - PillarId *string `min:"1" type:"string" required:"true"` - - // The ID of the question. - // - // QuestionId is a required field - QuestionId *string `min:"1" type:"string" required:"true"` - - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } // String returns the string representation. @@ -12480,7 +16436,7 @@ type ListCheckSummariesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListCheckSummariesInput) String() string { +func (s ListReviewTemplatesInput) String() string { return awsutil.Prettify(s) } @@ -12489,43 +16445,16 @@ func (s ListCheckSummariesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListCheckSummariesInput) GoString() string { +func (s ListReviewTemplatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListCheckSummariesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListCheckSummariesInput"} - if s.ChoiceId == nil { - invalidParams.Add(request.NewErrParamRequired("ChoiceId")) - } - if s.ChoiceId != nil && len(*s.ChoiceId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ChoiceId", 1)) - } - if s.LensArn == nil { - invalidParams.Add(request.NewErrParamRequired("LensArn")) - } +func (s *ListReviewTemplatesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReviewTemplatesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.PillarId == nil { - invalidParams.Add(request.NewErrParamRequired("PillarId")) - } - if s.PillarId != nil && len(*s.PillarId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) - } - if s.QuestionId == nil { - invalidParams.Add(request.NewErrParamRequired("QuestionId")) - } - if s.QuestionId != nil && len(*s.QuestionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } if invalidParams.Len() > 0 { return invalidParams @@ -12533,56 +16462,26 @@ func (s *ListCheckSummariesInput) Validate() error { return nil } -// SetChoiceId sets the ChoiceId field's value. -func (s *ListCheckSummariesInput) SetChoiceId(v string) *ListCheckSummariesInput { - s.ChoiceId = &v - return s -} - -// SetLensArn sets the LensArn field's value. -func (s *ListCheckSummariesInput) SetLensArn(v string) *ListCheckSummariesInput { - s.LensArn = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListCheckSummariesInput) SetMaxResults(v int64) *ListCheckSummariesInput { +func (s *ListReviewTemplatesInput) SetMaxResults(v int64) *ListReviewTemplatesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListCheckSummariesInput) SetNextToken(v string) *ListCheckSummariesInput { +func (s *ListReviewTemplatesInput) SetNextToken(v string) *ListReviewTemplatesInput { s.NextToken = &v return s } -// SetPillarId sets the PillarId field's value. -func (s *ListCheckSummariesInput) SetPillarId(v string) *ListCheckSummariesInput { - s.PillarId = &v - return s -} - -// SetQuestionId sets the QuestionId field's value. -func (s *ListCheckSummariesInput) SetQuestionId(v string) *ListCheckSummariesInput { - s.QuestionId = &v - return s -} - -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListCheckSummariesInput) SetWorkloadId(v string) *ListCheckSummariesInput { - s.WorkloadId = &v - return s -} - -type ListCheckSummariesOutput struct { +type ListReviewTemplatesOutput struct { _ struct{} `type:"structure"` - // List of Trusted Advisor summaries related to the Well-Architected best practice. - CheckSummaries []*CheckSummary `type:"list"` - // The token to use to retrieve the next set of results. NextToken *string `type:"string"` + + // List of review templates. + ReviewTemplates []*ReviewTemplateSummary `type:"list"` } // String returns the string representation. @@ -12590,7 +16489,7 @@ type ListCheckSummariesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListCheckSummariesOutput) String() string { +func (s ListReviewTemplatesOutput) String() string { return awsutil.Prettify(s) } @@ -12599,64 +16498,50 @@ func (s ListCheckSummariesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListCheckSummariesOutput) GoString() string { +func (s ListReviewTemplatesOutput) GoString() string { return s.String() } -// SetCheckSummaries sets the CheckSummaries field's value. -func (s *ListCheckSummariesOutput) SetCheckSummaries(v []*CheckSummary) *ListCheckSummariesOutput { - s.CheckSummaries = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListCheckSummariesOutput) SetNextToken(v string) *ListCheckSummariesOutput { +func (s *ListReviewTemplatesOutput) SetNextToken(v string) *ListReviewTemplatesOutput { s.NextToken = &v return s } -// Input to list lens review improvements. -type ListLensReviewImprovementsInput struct { +// SetReviewTemplates sets the ReviewTemplates field's value. +func (s *ListReviewTemplatesOutput) SetReviewTemplates(v []*ReviewTemplateSummary) *ListReviewTemplatesOutput { + s.ReviewTemplates = v + return s +} + +// Input for List Share Invitations +type ListShareInvitationsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + // An optional string added to the beginning of each lens name returned in the + // results. + LensNamePrefix *string `location:"querystring" locationName:"LensNamePrefix" type:"string"` // The maximum number of results to return for this request. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` - // The token to use to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The ID used to identify a pillar, for example, security. - // - // A pillar is identified by its PillarReviewSummary$PillarId. - PillarId *string `location:"querystring" locationName:"PillarId" min:"1" type:"string"` + // An optional string added to the beginning of each profile name returned in + // the results. + ProfileNamePrefix *string `location:"querystring" locationName:"ProfileNamePrefix" type:"string"` - // The priority of the question. - QuestionPriority *string `location:"querystring" locationName:"QuestionPriority" type:"string" enum:"QuestionPriority"` + // The type of share invitations to be returned. + ShareResourceType *string `location:"querystring" locationName:"ShareResourceType" type:"string" enum:"ShareResourceType"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // An optional string added to the beginning of each review template name returned + // in the results. + TemplateNamePrefix *string `location:"querystring" locationName:"TemplateNamePrefix" type:"string"` + + // An optional string added to the beginning of each workload name returned + // in the results. + WorkloadNamePrefix *string `location:"querystring" locationName:"WorkloadNamePrefix" type:"string"` } // String returns the string representation. @@ -12664,7 +16549,7 @@ type ListLensReviewImprovementsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensReviewImprovementsInput) String() string { +func (s ListShareInvitationsInput) String() string { return awsutil.Prettify(s) } @@ -12673,34 +16558,16 @@ func (s ListLensReviewImprovementsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensReviewImprovementsInput) GoString() string { +func (s ListShareInvitationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListLensReviewImprovementsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListLensReviewImprovementsInput"} - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) - } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) - } +func (s *ListShareInvitationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListShareInvitationsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) - } - if s.PillarId != nil && len(*s.PillarId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("PillarId", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } if invalidParams.Len() > 0 { return invalidParams @@ -12708,81 +16575,57 @@ func (s *ListLensReviewImprovementsInput) Validate() error { return nil } -// SetLensAlias sets the LensAlias field's value. -func (s *ListLensReviewImprovementsInput) SetLensAlias(v string) *ListLensReviewImprovementsInput { - s.LensAlias = &v +// SetLensNamePrefix sets the LensNamePrefix field's value. +func (s *ListShareInvitationsInput) SetLensNamePrefix(v string) *ListShareInvitationsInput { + s.LensNamePrefix = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListLensReviewImprovementsInput) SetMaxResults(v int64) *ListLensReviewImprovementsInput { +func (s *ListShareInvitationsInput) SetMaxResults(v int64) *ListShareInvitationsInput { s.MaxResults = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *ListLensReviewImprovementsInput) SetMilestoneNumber(v int64) *ListLensReviewImprovementsInput { - s.MilestoneNumber = &v +// SetNextToken sets the NextToken field's value. +func (s *ListShareInvitationsInput) SetNextToken(v string) *ListShareInvitationsInput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListLensReviewImprovementsInput) SetNextToken(v string) *ListLensReviewImprovementsInput { - s.NextToken = &v +// SetProfileNamePrefix sets the ProfileNamePrefix field's value. +func (s *ListShareInvitationsInput) SetProfileNamePrefix(v string) *ListShareInvitationsInput { + s.ProfileNamePrefix = &v return s } -// SetPillarId sets the PillarId field's value. -func (s *ListLensReviewImprovementsInput) SetPillarId(v string) *ListLensReviewImprovementsInput { - s.PillarId = &v +// SetShareResourceType sets the ShareResourceType field's value. +func (s *ListShareInvitationsInput) SetShareResourceType(v string) *ListShareInvitationsInput { + s.ShareResourceType = &v return s } -// SetQuestionPriority sets the QuestionPriority field's value. -func (s *ListLensReviewImprovementsInput) SetQuestionPriority(v string) *ListLensReviewImprovementsInput { - s.QuestionPriority = &v +// SetTemplateNamePrefix sets the TemplateNamePrefix field's value. +func (s *ListShareInvitationsInput) SetTemplateNamePrefix(v string) *ListShareInvitationsInput { + s.TemplateNamePrefix = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListLensReviewImprovementsInput) SetWorkloadId(v string) *ListLensReviewImprovementsInput { - s.WorkloadId = &v +// SetWorkloadNamePrefix sets the WorkloadNamePrefix field's value. +func (s *ListShareInvitationsInput) SetWorkloadNamePrefix(v string) *ListShareInvitationsInput { + s.WorkloadNamePrefix = &v return s } -// Output of a list lens review improvements call. -type ListLensReviewImprovementsOutput struct { +// Input for List Share Invitations +type ListShareInvitationsOutput struct { _ struct{} `type:"structure"` - // List of improvement summaries of lens review in a workload. - ImprovementSummaries []*ImprovementSummary `type:"list"` - - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - LensAlias *string `min:"1" type:"string"` - - // The ARN for the lens. - LensArn *string `type:"string"` - - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` - // The token to use to retrieve the next set of results. NextToken *string `type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // List of share invitation summaries in a workload. + ShareInvitationSummaries []*ShareInvitationSummary `type:"list"` } // String returns the string representation. @@ -12790,7 +16633,7 @@ type ListLensReviewImprovementsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensReviewImprovementsOutput) String() string { +func (s ListShareInvitationsOutput) String() string { return awsutil.Prettify(s) } @@ -12799,66 +16642,122 @@ func (s ListLensReviewImprovementsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensReviewImprovementsOutput) GoString() string { +func (s ListShareInvitationsOutput) GoString() string { return s.String() } -// SetImprovementSummaries sets the ImprovementSummaries field's value. -func (s *ListLensReviewImprovementsOutput) SetImprovementSummaries(v []*ImprovementSummary) *ListLensReviewImprovementsOutput { - s.ImprovementSummaries = v +// SetNextToken sets the NextToken field's value. +func (s *ListShareInvitationsOutput) SetNextToken(v string) *ListShareInvitationsOutput { + s.NextToken = &v return s } -// SetLensAlias sets the LensAlias field's value. -func (s *ListLensReviewImprovementsOutput) SetLensAlias(v string) *ListLensReviewImprovementsOutput { - s.LensAlias = &v +// SetShareInvitationSummaries sets the ShareInvitationSummaries field's value. +func (s *ListShareInvitationsOutput) SetShareInvitationSummaries(v []*ShareInvitationSummary) *ListShareInvitationsOutput { + s.ShareInvitationSummaries = v return s } -// SetLensArn sets the LensArn field's value. -func (s *ListLensReviewImprovementsOutput) SetLensArn(v string) *ListLensReviewImprovementsOutput { - s.LensArn = &v - return s +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN for the workload. + // + // WorkloadArn is a required field + WorkloadArn *string `location:"uri" locationName:"WorkloadArn" type:"string" required:"true"` } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *ListLensReviewImprovementsOutput) SetMilestoneNumber(v int64) *ListLensReviewImprovementsOutput { - s.MilestoneNumber = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) } -// SetNextToken sets the NextToken field's value. -func (s *ListLensReviewImprovementsOutput) SetNextToken(v string) *ListLensReviewImprovementsOutput { - s.NextToken = &v +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.WorkloadArn == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadArn")) + } + if s.WorkloadArn != nil && len(*s.WorkloadArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkloadArn sets the WorkloadArn field's value. +func (s *ListTagsForResourceInput) SetWorkloadArn(v string) *ListTagsForResourceInput { + s.WorkloadArn = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListLensReviewImprovementsOutput) SetWorkloadId(v string) *ListLensReviewImprovementsOutput { - s.WorkloadId = &v +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The tags for the resource. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v return s } -// Input to list lens reviews. -type ListLensReviewsInput struct { +type ListTemplateSharesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The maximum number of results to return for this request. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `location:"querystring" locationName:"MilestoneNumber" min:"1" type:"integer"` - // The token to use to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the profile is shared. + SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` + + // The status of the share request. + Status *string `location:"querystring" locationName:"Status" type:"string" enum:"ShareStatus"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -12866,7 +16765,7 @@ type ListLensReviewsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensReviewsInput) String() string { +func (s ListTemplateSharesInput) String() string { return awsutil.Prettify(s) } @@ -12875,24 +16774,21 @@ func (s ListLensReviewsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensReviewsInput) GoString() string { +func (s ListTemplateSharesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListLensReviewsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListLensReviewsInput"} +func (s *ListTemplateSharesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTemplateSharesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.MilestoneNumber != nil && *s.MilestoneNumber < 1 { - invalidParams.Add(request.NewErrParamMinValue("MilestoneNumber", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) } if invalidParams.Len() > 0 { @@ -12902,47 +16798,46 @@ func (s *ListLensReviewsInput) Validate() error { } // SetMaxResults sets the MaxResults field's value. -func (s *ListLensReviewsInput) SetMaxResults(v int64) *ListLensReviewsInput { +func (s *ListTemplateSharesInput) SetMaxResults(v int64) *ListTemplateSharesInput { s.MaxResults = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *ListLensReviewsInput) SetMilestoneNumber(v int64) *ListLensReviewsInput { - s.MilestoneNumber = &v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListLensReviewsInput) SetNextToken(v string) *ListLensReviewsInput { +func (s *ListTemplateSharesInput) SetNextToken(v string) *ListTemplateSharesInput { s.NextToken = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListLensReviewsInput) SetWorkloadId(v string) *ListLensReviewsInput { - s.WorkloadId = &v +// SetSharedWithPrefix sets the SharedWithPrefix field's value. +func (s *ListTemplateSharesInput) SetSharedWithPrefix(v string) *ListTemplateSharesInput { + s.SharedWithPrefix = &v return s } -// Output of a list lens reviews call. -type ListLensReviewsOutput struct { - _ struct{} `type:"structure"` +// SetStatus sets the Status field's value. +func (s *ListTemplateSharesInput) SetStatus(v string) *ListTemplateSharesInput { + s.Status = &v + return s +} - // List of lens summaries of lens reviews of a workload. - LensReviewSummaries []*LensReviewSummary `type:"list"` +// SetTemplateArn sets the TemplateArn field's value. +func (s *ListTemplateSharesInput) SetTemplateArn(v string) *ListTemplateSharesInput { + s.TemplateArn = &v + return s +} - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` +type ListTemplateSharesOutput struct { + _ struct{} `type:"structure"` // The token to use to retrieve the next set of results. NextToken *string `type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + + // A review template share summary return object. + TemplateShareSummaries []*TemplateShareSummary `type:"list"` } // String returns the string representation. @@ -12950,7 +16845,7 @@ type ListLensReviewsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensReviewsOutput) String() string { +func (s ListTemplateSharesOutput) String() string { return awsutil.Prettify(s) } @@ -12959,63 +16854,50 @@ func (s ListLensReviewsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensReviewsOutput) GoString() string { +func (s ListTemplateSharesOutput) GoString() string { return s.String() } -// SetLensReviewSummaries sets the LensReviewSummaries field's value. -func (s *ListLensReviewsOutput) SetLensReviewSummaries(v []*LensReviewSummary) *ListLensReviewsOutput { - s.LensReviewSummaries = v - return s -} - -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *ListLensReviewsOutput) SetMilestoneNumber(v int64) *ListLensReviewsOutput { - s.MilestoneNumber = &v +// SetNextToken sets the NextToken field's value. +func (s *ListTemplateSharesOutput) SetNextToken(v string) *ListTemplateSharesOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListLensReviewsOutput) SetNextToken(v string) *ListLensReviewsOutput { - s.NextToken = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *ListTemplateSharesOutput) SetTemplateArn(v string) *ListTemplateSharesOutput { + s.TemplateArn = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListLensReviewsOutput) SetWorkloadId(v string) *ListLensReviewsOutput { - s.WorkloadId = &v +// SetTemplateShareSummaries sets the TemplateShareSummaries field's value. +func (s *ListTemplateSharesOutput) SetTemplateShareSummaries(v []*TemplateShareSummary) *ListTemplateSharesOutput { + s.TemplateShareSummaries = v return s } -type ListLensSharesInput struct { +// Input for List Workload Share +type ListWorkloadSharesInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The alias of the lens. - // - // For Amazon Web Services official lenses, this is either the lens alias, such - // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. - // Note that some operations (such as ExportLens and CreateLensShare) are not - // permitted on Amazon Web Services official lenses. - // - // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. - // - // Each lens is identified by its LensSummary$LensAlias. - // - // LensAlias is a required field - LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // The maximum number of results to return for this request. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` // The token to use to retrieve the next set of results. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the lens is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload is shared. SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` // The status of the share request. Status *string `location:"querystring" locationName:"Status" type:"string" enum:"ShareStatus"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -13023,7 +16905,7 @@ type ListLensSharesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensSharesInput) String() string { +func (s ListWorkloadSharesInput) String() string { return awsutil.Prettify(s) } @@ -13032,22 +16914,22 @@ func (s ListLensSharesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensSharesInput) GoString() string { +func (s ListWorkloadSharesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListLensSharesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListLensSharesInput"} - if s.LensAlias == nil { - invalidParams.Add(request.NewErrParamRequired("LensAlias")) - } - if s.LensAlias != nil && len(*s.LensAlias) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) - } +func (s *ListWorkloadSharesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListWorkloadSharesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } if invalidParams.Len() > 0 { return invalidParams @@ -13055,44 +16937,49 @@ func (s *ListLensSharesInput) Validate() error { return nil } -// SetLensAlias sets the LensAlias field's value. -func (s *ListLensSharesInput) SetLensAlias(v string) *ListLensSharesInput { - s.LensAlias = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListLensSharesInput) SetMaxResults(v int64) *ListLensSharesInput { +func (s *ListWorkloadSharesInput) SetMaxResults(v int64) *ListWorkloadSharesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListLensSharesInput) SetNextToken(v string) *ListLensSharesInput { +func (s *ListWorkloadSharesInput) SetNextToken(v string) *ListWorkloadSharesInput { s.NextToken = &v return s } // SetSharedWithPrefix sets the SharedWithPrefix field's value. -func (s *ListLensSharesInput) SetSharedWithPrefix(v string) *ListLensSharesInput { +func (s *ListWorkloadSharesInput) SetSharedWithPrefix(v string) *ListWorkloadSharesInput { s.SharedWithPrefix = &v return s } // SetStatus sets the Status field's value. -func (s *ListLensSharesInput) SetStatus(v string) *ListLensSharesInput { +func (s *ListWorkloadSharesInput) SetStatus(v string) *ListWorkloadSharesInput { s.Status = &v return s } -type ListLensSharesOutput struct { - _ struct{} `type:"structure"` +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListWorkloadSharesInput) SetWorkloadId(v string) *ListWorkloadSharesInput { + s.WorkloadId = &v + return s +} - // A list of lens share summaries. - LensShareSummaries []*LensShareSummary `type:"list"` +// Input for List Workload Share +type ListWorkloadSharesOutput struct { + _ struct{} `type:"structure"` // The token to use to retrieve the next set of results. NextToken *string `type:"string"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` + + // A list of workload share summaries. + WorkloadShareSummaries []*WorkloadShareSummary `type:"list"` } // String returns the string representation. @@ -13100,7 +16987,7 @@ type ListLensSharesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensSharesOutput) String() string { +func (s ListWorkloadSharesOutput) String() string { return awsutil.Prettify(s) } @@ -13109,40 +16996,41 @@ func (s ListLensSharesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensSharesOutput) GoString() string { +func (s ListWorkloadSharesOutput) GoString() string { return s.String() } -// SetLensShareSummaries sets the LensShareSummaries field's value. -func (s *ListLensSharesOutput) SetLensShareSummaries(v []*LensShareSummary) *ListLensSharesOutput { - s.LensShareSummaries = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListLensSharesOutput) SetNextToken(v string) *ListLensSharesOutput { +func (s *ListWorkloadSharesOutput) SetNextToken(v string) *ListWorkloadSharesOutput { s.NextToken = &v return s } -// Input to list lenses. -type ListLensesInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The full name of the lens. - LensName *string `location:"querystring" locationName:"LensName" min:"1" type:"string"` +// SetWorkloadId sets the WorkloadId field's value. +func (s *ListWorkloadSharesOutput) SetWorkloadId(v string) *ListWorkloadSharesOutput { + s.WorkloadId = &v + return s +} - // The status of lenses to be returned. - LensStatus *string `location:"querystring" locationName:"LensStatus" type:"string" enum:"LensStatusType"` +// SetWorkloadShareSummaries sets the WorkloadShareSummaries field's value. +func (s *ListWorkloadSharesOutput) SetWorkloadShareSummaries(v []*WorkloadShareSummary) *ListWorkloadSharesOutput { + s.WorkloadShareSummaries = v + return s +} - // The type of lenses to be returned. - LensType *string `location:"querystring" locationName:"LensType" type:"string" enum:"LensType"` +// Input to list all workloads. +type ListWorkloadsInput struct { + _ struct{} `type:"structure"` // The maximum number of results to return for this request. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + MaxResults *int64 `min:"1" type:"integer"` // The token to use to retrieve the next set of results. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + NextToken *string `type:"string"` + + // An optional string added to the beginning of each workload name returned + // in the results. + WorkloadNamePrefix *string `type:"string"` } // String returns the string representation. @@ -13150,7 +17038,7 @@ type ListLensesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensesInput) String() string { +func (s ListWorkloadsInput) String() string { return awsutil.Prettify(s) } @@ -13159,16 +17047,13 @@ func (s ListLensesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensesInput) GoString() string { +func (s ListWorkloadsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListLensesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListLensesInput"} - if s.LensName != nil && len(*s.LensName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LensName", 1)) - } +func (s *ListWorkloadsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListWorkloadsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -13179,45 +17064,33 @@ func (s *ListLensesInput) Validate() error { return nil } -// SetLensName sets the LensName field's value. -func (s *ListLensesInput) SetLensName(v string) *ListLensesInput { - s.LensName = &v - return s -} - -// SetLensStatus sets the LensStatus field's value. -func (s *ListLensesInput) SetLensStatus(v string) *ListLensesInput { - s.LensStatus = &v - return s -} - -// SetLensType sets the LensType field's value. -func (s *ListLensesInput) SetLensType(v string) *ListLensesInput { - s.LensType = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListLensesInput) SetMaxResults(v int64) *ListLensesInput { +func (s *ListWorkloadsInput) SetMaxResults(v int64) *ListWorkloadsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListLensesInput) SetNextToken(v string) *ListLensesInput { +func (s *ListWorkloadsInput) SetNextToken(v string) *ListWorkloadsInput { s.NextToken = &v return s } -// Output of a list lenses call. -type ListLensesOutput struct { - _ struct{} `type:"structure"` +// SetWorkloadNamePrefix sets the WorkloadNamePrefix field's value. +func (s *ListWorkloadsInput) SetWorkloadNamePrefix(v string) *ListWorkloadsInput { + s.WorkloadNamePrefix = &v + return s +} - // List of lens summaries of available lenses. - LensSummaries []*LensSummary `type:"list"` +// Output of a list workloads call. +type ListWorkloadsOutput struct { + _ struct{} `type:"structure"` // The token to use to retrieve the next set of results. NextToken *string `type:"string"` + + // A list of workload summaries. + WorkloadSummaries []*WorkloadSummary `type:"list"` } // String returns the string representation. @@ -13225,7 +17098,7 @@ type ListLensesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensesOutput) String() string { +func (s ListWorkloadsOutput) String() string { return awsutil.Prettify(s) } @@ -13234,37 +17107,41 @@ func (s ListLensesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListLensesOutput) GoString() string { +func (s ListWorkloadsOutput) GoString() string { return s.String() } -// SetLensSummaries sets the LensSummaries field's value. -func (s *ListLensesOutput) SetLensSummaries(v []*LensSummary) *ListLensesOutput { - s.LensSummaries = v +// SetNextToken sets the NextToken field's value. +func (s *ListWorkloadsOutput) SetNextToken(v string) *ListWorkloadsOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListLensesOutput) SetNextToken(v string) *ListLensesOutput { - s.NextToken = &v +// SetWorkloadSummaries sets the WorkloadSummaries field's value. +func (s *ListWorkloadsOutput) SetWorkloadSummaries(v []*WorkloadSummary) *ListWorkloadsOutput { + s.WorkloadSummaries = v return s } -// Input to list all milestones for a workload. -type ListMilestonesInput struct { +// A milestone return object. +type Milestone struct { _ struct{} `type:"structure"` - // The maximum number of results to return for this request. - MaxResults *int64 `min:"1" type:"integer"` + // The name of the milestone in a workload. + // + // Milestone names must be unique within a workload. + MilestoneName *string `min:"3" type:"string"` + + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The date and time recorded. + RecordedAt *time.Time `type:"timestamp"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // A workload return object. + Workload *Workload `type:"structure"` } // String returns the string representation. @@ -13272,7 +17149,7 @@ type ListMilestonesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMilestonesInput) String() string { +func (s Milestone) String() string { return awsutil.Prettify(s) } @@ -13281,60 +17158,53 @@ func (s ListMilestonesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMilestonesInput) GoString() string { +func (s Milestone) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListMilestonesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListMilestonesInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetMilestoneName sets the MilestoneName field's value. +func (s *Milestone) SetMilestoneName(v string) *Milestone { + s.MilestoneName = &v + return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListMilestonesInput) SetMaxResults(v int64) *ListMilestonesInput { - s.MaxResults = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *Milestone) SetMilestoneNumber(v int64) *Milestone { + s.MilestoneNumber = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListMilestonesInput) SetNextToken(v string) *ListMilestonesInput { - s.NextToken = &v +// SetRecordedAt sets the RecordedAt field's value. +func (s *Milestone) SetRecordedAt(v time.Time) *Milestone { + s.RecordedAt = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListMilestonesInput) SetWorkloadId(v string) *ListMilestonesInput { - s.WorkloadId = &v +// SetWorkload sets the Workload field's value. +func (s *Milestone) SetWorkload(v *Workload) *Milestone { + s.Workload = v return s } -// Output of a list milestones call. -type ListMilestonesOutput struct { +// A milestone summary return object. +type MilestoneSummary struct { _ struct{} `type:"structure"` - // A list of milestone summaries. - MilestoneSummaries []*MilestoneSummary `type:"list"` + // The name of the milestone in a workload. + // + // Milestone names must be unique within a workload. + MilestoneName *string `min:"3" type:"string"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The milestone number. + // + // A workload can have a maximum of 100 milestones. + MilestoneNumber *int64 `min:"1" type:"integer"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The date and time recorded. + RecordedAt *time.Time `type:"timestamp"` + + // A workload summary return object. + WorkloadSummary *WorkloadSummary `type:"structure"` } // String returns the string representation. @@ -13342,7 +17212,7 @@ type ListMilestonesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMilestonesOutput) String() string { +func (s MilestoneSummary) String() string { return awsutil.Prettify(s) } @@ -13351,40 +17221,43 @@ func (s ListMilestonesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListMilestonesOutput) GoString() string { +func (s MilestoneSummary) GoString() string { return s.String() } -// SetMilestoneSummaries sets the MilestoneSummaries field's value. -func (s *ListMilestonesOutput) SetMilestoneSummaries(v []*MilestoneSummary) *ListMilestonesOutput { - s.MilestoneSummaries = v +// SetMilestoneName sets the MilestoneName field's value. +func (s *MilestoneSummary) SetMilestoneName(v string) *MilestoneSummary { + s.MilestoneName = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListMilestonesOutput) SetNextToken(v string) *ListMilestonesOutput { - s.NextToken = &v +// SetMilestoneNumber sets the MilestoneNumber field's value. +func (s *MilestoneSummary) SetMilestoneNumber(v int64) *MilestoneSummary { + s.MilestoneNumber = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListMilestonesOutput) SetWorkloadId(v string) *ListMilestonesOutput { - s.WorkloadId = &v +// SetRecordedAt sets the RecordedAt field's value. +func (s *MilestoneSummary) SetRecordedAt(v time.Time) *MilestoneSummary { + s.RecordedAt = &v return s } -type ListNotificationsInput struct { - _ struct{} `type:"structure"` +// SetWorkloadSummary sets the WorkloadSummary field's value. +func (s *MilestoneSummary) SetWorkloadSummary(v *WorkloadSummary) *MilestoneSummary { + s.WorkloadSummary = v + return s +} - // The maximum number of results to return for this request. - MaxResults *int64 `min:"1" type:"integer"` +// A notification summary return object. +type NotificationSummary struct { + _ struct{} `type:"structure"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // Summary of lens upgrade. + LensUpgradeSummary *LensUpgradeSummary `type:"structure"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The type of notification. + Type *string `type:"string" enum:"NotificationType"` } // String returns the string representation. @@ -13392,7 +17265,7 @@ type ListNotificationsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListNotificationsInput) String() string { +func (s NotificationSummary) String() string { return awsutil.Prettify(s) } @@ -13401,52 +17274,39 @@ func (s ListNotificationsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListNotificationsInput) GoString() string { +func (s NotificationSummary) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListNotificationsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListNotificationsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListNotificationsInput) SetMaxResults(v int64) *ListNotificationsInput { - s.MaxResults = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListNotificationsInput) SetNextToken(v string) *ListNotificationsInput { - s.NextToken = &v +// SetLensUpgradeSummary sets the LensUpgradeSummary field's value. +func (s *NotificationSummary) SetLensUpgradeSummary(v *LensUpgradeSummary) *NotificationSummary { + s.LensUpgradeSummary = v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListNotificationsInput) SetWorkloadId(v string) *ListNotificationsInput { - s.WorkloadId = &v +// SetType sets the Type field's value. +func (s *NotificationSummary) SetType(v string) *NotificationSummary { + s.Type = &v return s } -type ListNotificationsOutput struct { +// A pillar difference return object. +type PillarDifference struct { _ struct{} `type:"structure"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // Indicates the type of change to the pillar. + DifferenceStatus *string `type:"string" enum:"DifferenceStatus"` - // List of lens notification summaries in a workload. - NotificationSummaries []*NotificationSummary `type:"list"` + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The name of the pillar. + PillarName *string `min:"1" type:"string"` + + // List of question differences. + QuestionDifferences []*QuestionDifference `type:"list"` } // String returns the string representation. @@ -13454,7 +17314,7 @@ type ListNotificationsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListNotificationsOutput) String() string { +func (s PillarDifference) String() string { return awsutil.Prettify(s) } @@ -13463,34 +17323,48 @@ func (s ListNotificationsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListNotificationsOutput) GoString() string { +func (s PillarDifference) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListNotificationsOutput) SetNextToken(v string) *ListNotificationsOutput { - s.NextToken = &v +// SetDifferenceStatus sets the DifferenceStatus field's value. +func (s *PillarDifference) SetDifferenceStatus(v string) *PillarDifference { + s.DifferenceStatus = &v return s } -// SetNotificationSummaries sets the NotificationSummaries field's value. -func (s *ListNotificationsOutput) SetNotificationSummaries(v []*NotificationSummary) *ListNotificationsOutput { - s.NotificationSummaries = v +// SetPillarId sets the PillarId field's value. +func (s *PillarDifference) SetPillarId(v string) *PillarDifference { + s.PillarId = &v return s } -type ListProfileNotificationsInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetPillarName sets the PillarName field's value. +func (s *PillarDifference) SetPillarName(v string) *PillarDifference { + s.PillarName = &v + return s +} - // The maximum number of results to return for this request. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` +// SetQuestionDifferences sets the QuestionDifferences field's value. +func (s *PillarDifference) SetQuestionDifferences(v []*QuestionDifference) *PillarDifference { + s.QuestionDifferences = v + return s +} - // The token to use to retrieve the next set of results. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +// A metric for a particular pillar in a lens. +type PillarMetric struct { + _ struct{} `type:"structure"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `location:"querystring" locationName:"WorkloadId" min:"32" type:"string"` + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The questions that have been identified as risks in the pillar. + Questions []*QuestionMetric `type:"list"` + + // A map from risk names to the count of how many questions have that rating. + RiskCounts map[string]*int64 `type:"map"` } // String returns the string representation. @@ -13498,7 +17372,7 @@ type ListProfileNotificationsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfileNotificationsInput) String() string { +func (s PillarMetric) String() string { return awsutil.Prettify(s) } @@ -13507,52 +17381,51 @@ func (s ListProfileNotificationsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfileNotificationsInput) GoString() string { +func (s PillarMetric) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListProfileNotificationsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListProfileNotificationsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListProfileNotificationsInput) SetMaxResults(v int64) *ListProfileNotificationsInput { - s.MaxResults = &v +// SetPillarId sets the PillarId field's value. +func (s *PillarMetric) SetPillarId(v string) *PillarMetric { + s.PillarId = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListProfileNotificationsInput) SetNextToken(v string) *ListProfileNotificationsInput { - s.NextToken = &v +// SetQuestions sets the Questions field's value. +func (s *PillarMetric) SetQuestions(v []*QuestionMetric) *PillarMetric { + s.Questions = v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListProfileNotificationsInput) SetWorkloadId(v string) *ListProfileNotificationsInput { - s.WorkloadId = &v +// SetRiskCounts sets the RiskCounts field's value. +func (s *PillarMetric) SetRiskCounts(v map[string]*int64) *PillarMetric { + s.RiskCounts = v return s } -type ListProfileNotificationsOutput struct { +// A pillar review summary of a lens review. +type PillarReviewSummary struct { _ struct{} `type:"structure"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` - // Notification summaries. - NotificationSummaries []*ProfileNotificationSummary `type:"list"` + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` + + // The name of the pillar. + PillarName *string `min:"1" type:"string"` + + // A map from risk names to the count of how many questions have that rating. + PrioritizedRiskCounts map[string]*int64 `type:"map"` + + // A map from risk names to the count of how many questions have that rating. + RiskCounts map[string]*int64 `type:"map"` } // String returns the string representation. @@ -13560,7 +17433,7 @@ type ListProfileNotificationsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfileNotificationsOutput) String() string { +func (s PillarReviewSummary) String() string { return awsutil.Prettify(s) } @@ -13569,42 +17442,73 @@ func (s ListProfileNotificationsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfileNotificationsOutput) GoString() string { +func (s PillarReviewSummary) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListProfileNotificationsOutput) SetNextToken(v string) *ListProfileNotificationsOutput { - s.NextToken = &v +// SetNotes sets the Notes field's value. +func (s *PillarReviewSummary) SetNotes(v string) *PillarReviewSummary { + s.Notes = &v return s } -// SetNotificationSummaries sets the NotificationSummaries field's value. -func (s *ListProfileNotificationsOutput) SetNotificationSummaries(v []*ProfileNotificationSummary) *ListProfileNotificationsOutput { - s.NotificationSummaries = v +// SetPillarId sets the PillarId field's value. +func (s *PillarReviewSummary) SetPillarId(v string) *PillarReviewSummary { + s.PillarId = &v return s } -type ListProfileSharesInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetPillarName sets the PillarName field's value. +func (s *PillarReviewSummary) SetPillarName(v string) *PillarReviewSummary { + s.PillarName = &v + return s +} - // The maximum number of results to return for this request. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` +// SetPrioritizedRiskCounts sets the PrioritizedRiskCounts field's value. +func (s *PillarReviewSummary) SetPrioritizedRiskCounts(v map[string]*int64) *PillarReviewSummary { + s.PrioritizedRiskCounts = v + return s +} - // The token to use to retrieve the next set of results. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +// SetRiskCounts sets the RiskCounts field's value. +func (s *PillarReviewSummary) SetRiskCounts(v map[string]*int64) *PillarReviewSummary { + s.RiskCounts = v + return s +} + +// A profile. +type Profile struct { + _ struct{} `type:"structure"` + + // The date and time recorded. + CreatedAt *time.Time `type:"timestamp"` + + // An Amazon Web Services account ID. + Owner *string `min:"12" type:"string"` // The profile ARN. - // - // ProfileArn is a required field - ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` + ProfileArn *string `type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the profile is shared. - SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` + // The profile description. + ProfileDescription *string `min:"3" type:"string"` - // The status of the share request. - Status *string `location:"querystring" locationName:"Status" type:"string" enum:"ShareStatus"` + // The profile name. + ProfileName *string `min:"3" type:"string"` + + // Profile questions. + ProfileQuestions []*ProfileQuestion `type:"list"` + + // The profile version. + ProfileVersion *string `min:"1" type:"string"` + + // The ID assigned to the share invitation. + ShareInvitationId *string `type:"string"` + + // The tags assigned to the profile. + Tags map[string]*string `min:"1" type:"map"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -13612,7 +17516,7 @@ type ListProfileSharesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfileSharesInput) String() string { +func (s Profile) String() string { return awsutil.Prettify(s) } @@ -13621,67 +17525,82 @@ func (s ListProfileSharesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfileSharesInput) GoString() string { +func (s Profile) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListProfileSharesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListProfileSharesInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.ProfileArn == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileArn")) - } - if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) - } +// SetCreatedAt sets the CreatedAt field's value. +func (s *Profile) SetCreatedAt(v time.Time) *Profile { + s.CreatedAt = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetOwner sets the Owner field's value. +func (s *Profile) SetOwner(v string) *Profile { + s.Owner = &v + return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListProfileSharesInput) SetMaxResults(v int64) *ListProfileSharesInput { - s.MaxResults = &v +// SetProfileArn sets the ProfileArn field's value. +func (s *Profile) SetProfileArn(v string) *Profile { + s.ProfileArn = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListProfileSharesInput) SetNextToken(v string) *ListProfileSharesInput { - s.NextToken = &v +// SetProfileDescription sets the ProfileDescription field's value. +func (s *Profile) SetProfileDescription(v string) *Profile { + s.ProfileDescription = &v return s } -// SetProfileArn sets the ProfileArn field's value. -func (s *ListProfileSharesInput) SetProfileArn(v string) *ListProfileSharesInput { - s.ProfileArn = &v +// SetProfileName sets the ProfileName field's value. +func (s *Profile) SetProfileName(v string) *Profile { + s.ProfileName = &v return s } -// SetSharedWithPrefix sets the SharedWithPrefix field's value. -func (s *ListProfileSharesInput) SetSharedWithPrefix(v string) *ListProfileSharesInput { - s.SharedWithPrefix = &v +// SetProfileQuestions sets the ProfileQuestions field's value. +func (s *Profile) SetProfileQuestions(v []*ProfileQuestion) *Profile { + s.ProfileQuestions = v return s } -// SetStatus sets the Status field's value. -func (s *ListProfileSharesInput) SetStatus(v string) *ListProfileSharesInput { - s.Status = &v +// SetProfileVersion sets the ProfileVersion field's value. +func (s *Profile) SetProfileVersion(v string) *Profile { + s.ProfileVersion = &v return s } -type ListProfileSharesOutput struct { +// SetShareInvitationId sets the ShareInvitationId field's value. +func (s *Profile) SetShareInvitationId(v string) *Profile { + s.ShareInvitationId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Profile) SetTags(v map[string]*string) *Profile { + s.Tags = v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *Profile) SetUpdatedAt(v time.Time) *Profile { + s.UpdatedAt = &v + return s +} + +// The profile choice. +type ProfileChoice struct { _ struct{} `type:"structure"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The description of a choice. + ChoiceDescription *string `min:"1" type:"string"` - // Profile share summaries. - ProfileShareSummaries []*ProfileShareSummary `type:"list"` + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // The title of a choice. + ChoiceTitle *string `min:"1" type:"string"` } // String returns the string representation. @@ -13689,7 +17608,7 @@ type ListProfileSharesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfileSharesOutput) String() string { +func (s ProfileChoice) String() string { return awsutil.Prettify(s) } @@ -13698,36 +17617,56 @@ func (s ListProfileSharesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfileSharesOutput) GoString() string { +func (s ProfileChoice) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListProfileSharesOutput) SetNextToken(v string) *ListProfileSharesOutput { - s.NextToken = &v +// SetChoiceDescription sets the ChoiceDescription field's value. +func (s *ProfileChoice) SetChoiceDescription(v string) *ProfileChoice { + s.ChoiceDescription = &v return s } -// SetProfileShareSummaries sets the ProfileShareSummaries field's value. -func (s *ListProfileSharesOutput) SetProfileShareSummaries(v []*ProfileShareSummary) *ListProfileSharesOutput { - s.ProfileShareSummaries = v +// SetChoiceId sets the ChoiceId field's value. +func (s *ProfileChoice) SetChoiceId(v string) *ProfileChoice { + s.ChoiceId = &v return s } -type ListProfilesInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetChoiceTitle sets the ChoiceTitle field's value. +func (s *ProfileChoice) SetChoiceTitle(v string) *ProfileChoice { + s.ChoiceTitle = &v + return s +} - // The maximum number of results to return for this request. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` +// The profile notification summary. +type ProfileNotificationSummary struct { + _ struct{} `type:"structure"` - // The token to use to retrieve the next set of results. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + // The current profile version. + CurrentProfileVersion *string `min:"1" type:"string"` - // Prefix for profile name. - ProfileNamePrefix *string `location:"querystring" locationName:"ProfileNamePrefix" type:"string"` + // The latest profile version. + LatestProfileVersion *string `min:"1" type:"string"` - // Profile owner type. - ProfileOwnerType *string `location:"querystring" locationName:"ProfileOwnerType" type:"string" enum:"ProfileOwnerType"` + // The profile ARN. + ProfileArn *string `type:"string"` + + // The profile name. + ProfileName *string `min:"3" type:"string"` + + // Type of notification. + Type *string `type:"string" enum:"ProfileNotificationType"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` + + // The name of the workload. + // + // The name must be unique within an account within an Amazon Web Services Region. + // Spaces and capitalization are ignored when checking for uniqueness. + WorkloadName *string `min:"3" type:"string"` } // String returns the string representation. @@ -13735,7 +17674,7 @@ type ListProfilesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfilesInput) String() string { +func (s ProfileNotificationSummary) String() string { return awsutil.Prettify(s) } @@ -13744,55 +17683,76 @@ func (s ListProfilesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfilesInput) GoString() string { +func (s ProfileNotificationSummary) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListProfilesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListProfilesInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } +// SetCurrentProfileVersion sets the CurrentProfileVersion field's value. +func (s *ProfileNotificationSummary) SetCurrentProfileVersion(v string) *ProfileNotificationSummary { + s.CurrentProfileVersion = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetLatestProfileVersion sets the LatestProfileVersion field's value. +func (s *ProfileNotificationSummary) SetLatestProfileVersion(v string) *ProfileNotificationSummary { + s.LatestProfileVersion = &v + return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListProfilesInput) SetMaxResults(v int64) *ListProfilesInput { - s.MaxResults = &v +// SetProfileArn sets the ProfileArn field's value. +func (s *ProfileNotificationSummary) SetProfileArn(v string) *ProfileNotificationSummary { + s.ProfileArn = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListProfilesInput) SetNextToken(v string) *ListProfilesInput { - s.NextToken = &v +// SetProfileName sets the ProfileName field's value. +func (s *ProfileNotificationSummary) SetProfileName(v string) *ProfileNotificationSummary { + s.ProfileName = &v return s } -// SetProfileNamePrefix sets the ProfileNamePrefix field's value. -func (s *ListProfilesInput) SetProfileNamePrefix(v string) *ListProfilesInput { - s.ProfileNamePrefix = &v +// SetType sets the Type field's value. +func (s *ProfileNotificationSummary) SetType(v string) *ProfileNotificationSummary { + s.Type = &v return s } -// SetProfileOwnerType sets the ProfileOwnerType field's value. -func (s *ListProfilesInput) SetProfileOwnerType(v string) *ListProfilesInput { - s.ProfileOwnerType = &v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ProfileNotificationSummary) SetWorkloadId(v string) *ProfileNotificationSummary { + s.WorkloadId = &v return s } -type ListProfilesOutput struct { +// SetWorkloadName sets the WorkloadName field's value. +func (s *ProfileNotificationSummary) SetWorkloadName(v string) *ProfileNotificationSummary { + s.WorkloadName = &v + return s +} + +// A profile question. +type ProfileQuestion struct { _ struct{} `type:"structure"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The maximum number of selected choices. + MaxSelectedChoices *int64 `type:"integer"` - // Profile summaries. - ProfileSummaries []*ProfileSummary `type:"list"` + // The minimum number of selected choices. + MinSelectedChoices *int64 `type:"integer"` + + // The question choices. + QuestionChoices []*ProfileChoice `type:"list"` + + // The description of the question. + QuestionDescription *string `min:"1" type:"string"` + + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` + + // The selected choices. + SelectedChoiceIds []*string `type:"list"` } // String returns the string representation. @@ -13800,7 +17760,7 @@ type ListProfilesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfilesOutput) String() string { +func (s ProfileQuestion) String() string { return awsutil.Prettify(s) } @@ -13809,45 +17769,61 @@ func (s ListProfilesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListProfilesOutput) GoString() string { +func (s ProfileQuestion) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListProfilesOutput) SetNextToken(v string) *ListProfilesOutput { - s.NextToken = &v +// SetMaxSelectedChoices sets the MaxSelectedChoices field's value. +func (s *ProfileQuestion) SetMaxSelectedChoices(v int64) *ProfileQuestion { + s.MaxSelectedChoices = &v return s } -// SetProfileSummaries sets the ProfileSummaries field's value. -func (s *ListProfilesOutput) SetProfileSummaries(v []*ProfileSummary) *ListProfilesOutput { - s.ProfileSummaries = v +// SetMinSelectedChoices sets the MinSelectedChoices field's value. +func (s *ProfileQuestion) SetMinSelectedChoices(v int64) *ProfileQuestion { + s.MinSelectedChoices = &v return s } -// Input for List Share Invitations -type ListShareInvitationsInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetQuestionChoices sets the QuestionChoices field's value. +func (s *ProfileQuestion) SetQuestionChoices(v []*ProfileChoice) *ProfileQuestion { + s.QuestionChoices = v + return s +} - // An optional string added to the beginning of each lens name returned in the - // results. - LensNamePrefix *string `location:"querystring" locationName:"LensNamePrefix" type:"string"` +// SetQuestionDescription sets the QuestionDescription field's value. +func (s *ProfileQuestion) SetQuestionDescription(v string) *ProfileQuestion { + s.QuestionDescription = &v + return s +} - // The maximum number of results to return for this request. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` +// SetQuestionId sets the QuestionId field's value. +func (s *ProfileQuestion) SetQuestionId(v string) *ProfileQuestion { + s.QuestionId = &v + return s +} - // The token to use to retrieve the next set of results. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *ProfileQuestion) SetQuestionTitle(v string) *ProfileQuestion { + s.QuestionTitle = &v + return s +} - // Profile name prefix. - ProfileNamePrefix *string `location:"querystring" locationName:"ProfileNamePrefix" type:"string"` +// SetSelectedChoiceIds sets the SelectedChoiceIds field's value. +func (s *ProfileQuestion) SetSelectedChoiceIds(v []*string) *ProfileQuestion { + s.SelectedChoiceIds = v + return s +} - // The type of share invitations to be returned. - ShareResourceType *string `location:"querystring" locationName:"ShareResourceType" type:"string" enum:"ShareResourceType"` +// An update to a profile question. +type ProfileQuestionUpdate struct { + _ struct{} `type:"structure"` - // An optional string added to the beginning of each workload name returned - // in the results. - WorkloadNamePrefix *string `location:"querystring" locationName:"WorkloadNamePrefix" type:"string"` + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The selected choices. + SelectedChoiceIds []*string `type:"list"` } // String returns the string representation. @@ -13855,7 +17831,7 @@ type ListShareInvitationsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListShareInvitationsInput) String() string { +func (s ProfileQuestionUpdate) String() string { return awsutil.Prettify(s) } @@ -13864,15 +17840,15 @@ func (s ListShareInvitationsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListShareInvitationsInput) GoString() string { +func (s ProfileQuestionUpdate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListShareInvitationsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListShareInvitationsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) +func (s *ProfileQuestionUpdate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProfileQuestionUpdate"} + if s.QuestionId != nil && len(*s.QuestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) } if invalidParams.Len() > 0 { @@ -13881,51 +17857,102 @@ func (s *ListShareInvitationsInput) Validate() error { return nil } -// SetLensNamePrefix sets the LensNamePrefix field's value. -func (s *ListShareInvitationsInput) SetLensNamePrefix(v string) *ListShareInvitationsInput { - s.LensNamePrefix = &v +// SetQuestionId sets the QuestionId field's value. +func (s *ProfileQuestionUpdate) SetQuestionId(v string) *ProfileQuestionUpdate { + s.QuestionId = &v return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListShareInvitationsInput) SetMaxResults(v int64) *ListShareInvitationsInput { - s.MaxResults = &v +// SetSelectedChoiceIds sets the SelectedChoiceIds field's value. +func (s *ProfileQuestionUpdate) SetSelectedChoiceIds(v []*string) *ProfileQuestionUpdate { + s.SelectedChoiceIds = v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListShareInvitationsInput) SetNextToken(v string) *ListShareInvitationsInput { - s.NextToken = &v +// Summary of a profile share. +type ProfileShareSummary struct { + _ struct{} `type:"structure"` + + // The ID associated with the share. + ShareId *string `type:"string"` + + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + SharedWith *string `min:"12" type:"string"` + + // The status of the share request. + Status *string `type:"string" enum:"ShareStatus"` + + // Profile share invitation status message. + StatusMessage *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProfileShareSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ProfileShareSummary) GoString() string { + return s.String() +} + +// SetShareId sets the ShareId field's value. +func (s *ProfileShareSummary) SetShareId(v string) *ProfileShareSummary { + s.ShareId = &v return s } -// SetProfileNamePrefix sets the ProfileNamePrefix field's value. -func (s *ListShareInvitationsInput) SetProfileNamePrefix(v string) *ListShareInvitationsInput { - s.ProfileNamePrefix = &v +// SetSharedWith sets the SharedWith field's value. +func (s *ProfileShareSummary) SetSharedWith(v string) *ProfileShareSummary { + s.SharedWith = &v return s } -// SetShareResourceType sets the ShareResourceType field's value. -func (s *ListShareInvitationsInput) SetShareResourceType(v string) *ListShareInvitationsInput { - s.ShareResourceType = &v +// SetStatus sets the Status field's value. +func (s *ProfileShareSummary) SetStatus(v string) *ProfileShareSummary { + s.Status = &v return s } -// SetWorkloadNamePrefix sets the WorkloadNamePrefix field's value. -func (s *ListShareInvitationsInput) SetWorkloadNamePrefix(v string) *ListShareInvitationsInput { - s.WorkloadNamePrefix = &v +// SetStatusMessage sets the StatusMessage field's value. +func (s *ProfileShareSummary) SetStatusMessage(v string) *ProfileShareSummary { + s.StatusMessage = &v return s } -// Input for List Share Invitations -type ListShareInvitationsOutput struct { +// Summary of a profile. +type ProfileSummary struct { _ struct{} `type:"structure"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The date and time recorded. + CreatedAt *time.Time `type:"timestamp"` - // List of share invitation summaries in a workload. - ShareInvitationSummaries []*ShareInvitationSummary `type:"list"` + // An Amazon Web Services account ID. + Owner *string `min:"12" type:"string"` + + // The profile ARN. + ProfileArn *string `type:"string"` + + // The profile description. + ProfileDescription *string `min:"3" type:"string"` + + // The profile name. + ProfileName *string `min:"3" type:"string"` + + // The profile version. + ProfileVersion *string `min:"1" type:"string"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -13933,7 +17960,7 @@ type ListShareInvitationsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListShareInvitationsOutput) String() string { +func (s ProfileSummary) String() string { return awsutil.Prettify(s) } @@ -13942,76 +17969,67 @@ func (s ListShareInvitationsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListShareInvitationsOutput) GoString() string { +func (s ProfileSummary) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListShareInvitationsOutput) SetNextToken(v string) *ListShareInvitationsOutput { - s.NextToken = &v +// SetCreatedAt sets the CreatedAt field's value. +func (s *ProfileSummary) SetCreatedAt(v time.Time) *ProfileSummary { + s.CreatedAt = &v return s } -// SetShareInvitationSummaries sets the ShareInvitationSummaries field's value. -func (s *ListShareInvitationsOutput) SetShareInvitationSummaries(v []*ShareInvitationSummary) *ListShareInvitationsOutput { - s.ShareInvitationSummaries = v +// SetOwner sets the Owner field's value. +func (s *ProfileSummary) SetOwner(v string) *ProfileSummary { + s.Owner = &v return s } -type ListTagsForResourceInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The ARN for the workload. - // - // WorkloadArn is a required field - WorkloadArn *string `location:"uri" locationName:"WorkloadArn" type:"string" required:"true"` +// SetProfileArn sets the ProfileArn field's value. +func (s *ProfileSummary) SetProfileArn(v string) *ProfileSummary { + s.ProfileArn = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListTagsForResourceInput) String() string { - return awsutil.Prettify(s) +// SetProfileDescription sets the ProfileDescription field's value. +func (s *ProfileSummary) SetProfileDescription(v string) *ProfileSummary { + s.ProfileDescription = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ListTagsForResourceInput) GoString() string { - return s.String() +// SetProfileName sets the ProfileName field's value. +func (s *ProfileSummary) SetProfileName(v string) *ProfileSummary { + s.ProfileName = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListTagsForResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} - if s.WorkloadArn == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadArn")) - } - if s.WorkloadArn != nil && len(*s.WorkloadArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadArn", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetProfileVersion sets the ProfileVersion field's value. +func (s *ProfileSummary) SetProfileVersion(v string) *ProfileSummary { + s.ProfileVersion = &v + return s } -// SetWorkloadArn sets the WorkloadArn field's value. -func (s *ListTagsForResourceInput) SetWorkloadArn(v string) *ListTagsForResourceInput { - s.WorkloadArn = &v +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ProfileSummary) SetUpdatedAt(v time.Time) *ProfileSummary { + s.UpdatedAt = &v return s } -type ListTagsForResourceOutput struct { +// The profile template. +type ProfileTemplate struct { _ struct{} `type:"structure"` - // The tags for the resource. - Tags map[string]*string `min:"1" type:"map"` + // The date and time recorded. + CreatedAt *time.Time `type:"timestamp"` + + // The name of the profile template. + TemplateName *string `min:"3" type:"string"` + + // Profile template questions. + TemplateQuestions []*ProfileTemplateQuestion `type:"list"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -14019,7 +18037,7 @@ type ListTagsForResourceOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListTagsForResourceOutput) String() string { +func (s ProfileTemplate) String() string { return awsutil.Prettify(s) } @@ -14028,38 +18046,46 @@ func (s ListTagsForResourceOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListTagsForResourceOutput) GoString() string { +func (s ProfileTemplate) GoString() string { return s.String() } -// SetTags sets the Tags field's value. -func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { - s.Tags = v +// SetCreatedAt sets the CreatedAt field's value. +func (s *ProfileTemplate) SetCreatedAt(v time.Time) *ProfileTemplate { + s.CreatedAt = &v return s } -// Input for List Workload Share -type ListWorkloadSharesInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetTemplateName sets the TemplateName field's value. +func (s *ProfileTemplate) SetTemplateName(v string) *ProfileTemplate { + s.TemplateName = &v + return s +} - // The maximum number of results to return for this request. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` +// SetTemplateQuestions sets the TemplateQuestions field's value. +func (s *ProfileTemplate) SetTemplateQuestions(v []*ProfileTemplateQuestion) *ProfileTemplate { + s.TemplateQuestions = v + return s +} - // The token to use to retrieve the next set of results. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ProfileTemplate) SetUpdatedAt(v time.Time) *ProfileTemplate { + s.UpdatedAt = &v + return s +} - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload is shared. - SharedWithPrefix *string `location:"querystring" locationName:"SharedWithPrefix" type:"string"` +// A profile template choice. +type ProfileTemplateChoice struct { + _ struct{} `type:"structure"` - // The status of the share request. - Status *string `location:"querystring" locationName:"Status" type:"string" enum:"ShareStatus"` + // The description of a choice. + ChoiceDescription *string `min:"1" type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // The ID of a choice. + ChoiceId *string `min:"1" type:"string"` + + // The title of a choice. + ChoiceTitle *string `min:"1" type:"string"` } // String returns the string representation. @@ -14067,7 +18093,7 @@ type ListWorkloadSharesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListWorkloadSharesInput) String() string { +func (s ProfileTemplateChoice) String() string { return awsutil.Prettify(s) } @@ -14076,72 +18102,49 @@ func (s ListWorkloadSharesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListWorkloadSharesInput) GoString() string { +func (s ProfileTemplateChoice) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListWorkloadSharesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListWorkloadSharesInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) - } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListWorkloadSharesInput) SetMaxResults(v int64) *ListWorkloadSharesInput { - s.MaxResults = &v +// SetChoiceDescription sets the ChoiceDescription field's value. +func (s *ProfileTemplateChoice) SetChoiceDescription(v string) *ProfileTemplateChoice { + s.ChoiceDescription = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListWorkloadSharesInput) SetNextToken(v string) *ListWorkloadSharesInput { - s.NextToken = &v +// SetChoiceId sets the ChoiceId field's value. +func (s *ProfileTemplateChoice) SetChoiceId(v string) *ProfileTemplateChoice { + s.ChoiceId = &v return s } -// SetSharedWithPrefix sets the SharedWithPrefix field's value. -func (s *ListWorkloadSharesInput) SetSharedWithPrefix(v string) *ListWorkloadSharesInput { - s.SharedWithPrefix = &v +// SetChoiceTitle sets the ChoiceTitle field's value. +func (s *ProfileTemplateChoice) SetChoiceTitle(v string) *ProfileTemplateChoice { + s.ChoiceTitle = &v return s } -// SetStatus sets the Status field's value. -func (s *ListWorkloadSharesInput) SetStatus(v string) *ListWorkloadSharesInput { - s.Status = &v - return s -} +// A profile template question. +type ProfileTemplateQuestion struct { + _ struct{} `type:"structure"` -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListWorkloadSharesInput) SetWorkloadId(v string) *ListWorkloadSharesInput { - s.WorkloadId = &v - return s -} + // The maximum number of choices selected. + MaxSelectedChoices *int64 `type:"integer"` -// Input for List Workload Share -type ListWorkloadSharesOutput struct { - _ struct{} `type:"structure"` + // The minimum number of choices selected. + MinSelectedChoices *int64 `type:"integer"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The question choices. + QuestionChoices []*ProfileTemplateChoice `type:"list"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The description of the question. + QuestionDescription *string `min:"1" type:"string"` - // A list of workload share summaries. - WorkloadShareSummaries []*WorkloadShareSummary `type:"list"` + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` } // String returns the string representation. @@ -14149,7 +18152,7 @@ type ListWorkloadSharesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListWorkloadSharesOutput) String() string { +func (s ProfileTemplateQuestion) String() string { return awsutil.Prettify(s) } @@ -14158,41 +18161,58 @@ func (s ListWorkloadSharesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListWorkloadSharesOutput) GoString() string { +func (s ProfileTemplateQuestion) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListWorkloadSharesOutput) SetNextToken(v string) *ListWorkloadSharesOutput { - s.NextToken = &v +// SetMaxSelectedChoices sets the MaxSelectedChoices field's value. +func (s *ProfileTemplateQuestion) SetMaxSelectedChoices(v int64) *ProfileTemplateQuestion { + s.MaxSelectedChoices = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ListWorkloadSharesOutput) SetWorkloadId(v string) *ListWorkloadSharesOutput { - s.WorkloadId = &v +// SetMinSelectedChoices sets the MinSelectedChoices field's value. +func (s *ProfileTemplateQuestion) SetMinSelectedChoices(v int64) *ProfileTemplateQuestion { + s.MinSelectedChoices = &v return s } -// SetWorkloadShareSummaries sets the WorkloadShareSummaries field's value. -func (s *ListWorkloadSharesOutput) SetWorkloadShareSummaries(v []*WorkloadShareSummary) *ListWorkloadSharesOutput { - s.WorkloadShareSummaries = v +// SetQuestionChoices sets the QuestionChoices field's value. +func (s *ProfileTemplateQuestion) SetQuestionChoices(v []*ProfileTemplateChoice) *ProfileTemplateQuestion { + s.QuestionChoices = v return s } -// Input to list all workloads. -type ListWorkloadsInput struct { +// SetQuestionDescription sets the QuestionDescription field's value. +func (s *ProfileTemplateQuestion) SetQuestionDescription(v string) *ProfileTemplateQuestion { + s.QuestionDescription = &v + return s +} + +// SetQuestionId sets the QuestionId field's value. +func (s *ProfileTemplateQuestion) SetQuestionId(v string) *ProfileTemplateQuestion { + s.QuestionId = &v + return s +} + +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *ProfileTemplateQuestion) SetQuestionTitle(v string) *ProfileTemplateQuestion { + s.QuestionTitle = &v + return s +} + +// A question difference return object. +type QuestionDifference struct { _ struct{} `type:"structure"` - // The maximum number of results to return for this request. - MaxResults *int64 `min:"1" type:"integer"` + // Indicates the type of change to the question. + DifferenceStatus *string `type:"string" enum:"DifferenceStatus"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The ID of the question. + QuestionId *string `min:"1" type:"string"` - // An optional string added to the beginning of each workload name returned - // in the results. - WorkloadNamePrefix *string `type:"string"` + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` } // String returns the string representation. @@ -14200,7 +18220,7 @@ type ListWorkloadsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListWorkloadsInput) String() string { +func (s QuestionDifference) String() string { return awsutil.Prettify(s) } @@ -14209,50 +18229,41 @@ func (s ListWorkloadsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListWorkloadsInput) GoString() string { +func (s QuestionDifference) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListWorkloadsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListWorkloadsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListWorkloadsInput) SetMaxResults(v int64) *ListWorkloadsInput { - s.MaxResults = &v +// SetDifferenceStatus sets the DifferenceStatus field's value. +func (s *QuestionDifference) SetDifferenceStatus(v string) *QuestionDifference { + s.DifferenceStatus = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListWorkloadsInput) SetNextToken(v string) *ListWorkloadsInput { - s.NextToken = &v +// SetQuestionId sets the QuestionId field's value. +func (s *QuestionDifference) SetQuestionId(v string) *QuestionDifference { + s.QuestionId = &v return s } -// SetWorkloadNamePrefix sets the WorkloadNamePrefix field's value. -func (s *ListWorkloadsInput) SetWorkloadNamePrefix(v string) *ListWorkloadsInput { - s.WorkloadNamePrefix = &v +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *QuestionDifference) SetQuestionTitle(v string) *QuestionDifference { + s.QuestionTitle = &v return s } -// Output of a list workloads call. -type ListWorkloadsOutput struct { +// A metric for a particular question in the pillar. +type QuestionMetric struct { _ struct{} `type:"structure"` - // The token to use to retrieve the next set of results. - NextToken *string `type:"string"` + // The best practices, or choices, that have been identified as contributing + // to risk in a question. + BestPractices []*BestPractice `type:"list"` - // A list of workload summaries. - WorkloadSummaries []*WorkloadSummary `type:"list"` + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The risk for a given workload, lens review, pillar, or question. + Risk *string `type:"string" enum:"Risk"` } // String returns the string representation. @@ -14260,7 +18271,7 @@ type ListWorkloadsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListWorkloadsOutput) String() string { +func (s QuestionMetric) String() string { return awsutil.Prettify(s) } @@ -14269,41 +18280,45 @@ func (s ListWorkloadsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListWorkloadsOutput) GoString() string { +func (s QuestionMetric) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListWorkloadsOutput) SetNextToken(v string) *ListWorkloadsOutput { - s.NextToken = &v +// SetBestPractices sets the BestPractices field's value. +func (s *QuestionMetric) SetBestPractices(v []*BestPractice) *QuestionMetric { + s.BestPractices = v return s } -// SetWorkloadSummaries sets the WorkloadSummaries field's value. -func (s *ListWorkloadsOutput) SetWorkloadSummaries(v []*WorkloadSummary) *ListWorkloadsOutput { - s.WorkloadSummaries = v +// SetQuestionId sets the QuestionId field's value. +func (s *QuestionMetric) SetQuestionId(v string) *QuestionMetric { + s.QuestionId = &v return s } -// A milestone return object. -type Milestone struct { - _ struct{} `type:"structure"` +// SetRisk sets the Risk field's value. +func (s *QuestionMetric) SetRisk(v string) *QuestionMetric { + s.Risk = &v + return s +} - // The name of the milestone in a workload. - // - // Milestone names must be unique within a workload. - MilestoneName *string `min:"3" type:"string"` +// The requested resource was not found. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The milestone number. - // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` + // Description of the error. + Message_ *string `locationName:"Message" type:"string"` - // The date and time recorded. - RecordedAt *time.Time `type:"timestamp"` + // Identifier of the resource affected. + // + // ResourceId is a required field + ResourceId *string `type:"string" required:"true"` - // A workload return object. - Workload *Workload `type:"structure"` + // Type of the resource affected. + // + // ResourceType is a required field + ResourceType *string `type:"string" required:"true"` } // String returns the string representation. @@ -14311,7 +18326,7 @@ type Milestone struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Milestone) String() string { +func (s ResourceNotFoundException) String() string { return awsutil.Prettify(s) } @@ -14320,53 +18335,88 @@ func (s Milestone) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Milestone) GoString() string { +func (s ResourceNotFoundException) GoString() string { return s.String() } -// SetMilestoneName sets the MilestoneName field's value. -func (s *Milestone) SetMilestoneName(v string) *Milestone { - s.MilestoneName = &v - return s +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *Milestone) SetMilestoneNumber(v int64) *Milestone { - s.MilestoneNumber = &v - return s +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" } -// SetRecordedAt sets the RecordedAt field's value. -func (s *Milestone) SetRecordedAt(v time.Time) *Milestone { - s.RecordedAt = &v - return s +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetWorkload sets the Workload field's value. -func (s *Milestone) SetWorkload(v *Workload) *Milestone { - s.Workload = v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil } -// A milestone summary return object. -type MilestoneSummary struct { +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A review template. +type ReviewTemplate struct { _ struct{} `type:"structure"` - // The name of the milestone in a workload. - // - // Milestone names must be unique within a workload. - MilestoneName *string `min:"3" type:"string"` + // The review template description. + Description *string `min:"3" type:"string"` - // The milestone number. + // The lenses applied to the review template. + Lenses []*string `type:"list"` + + // The notes associated with the workload. // - // A workload can have a maximum of 100 milestones. - MilestoneNumber *int64 `min:"1" type:"integer"` + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` - // The date and time recorded. - RecordedAt *time.Time `type:"timestamp"` + // An Amazon Web Services account ID. + Owner *string `min:"12" type:"string"` - // A workload summary return object. - WorkloadSummary *WorkloadSummary `type:"structure"` + // A count of how many total questions are answered and unanswered in the review + // template. + QuestionCounts map[string]*int64 `type:"map"` + + // The ID assigned to the template share invitation. + ShareInvitationId *string `type:"string"` + + // The tags assigned to the review template. + Tags map[string]*string `min:"1" type:"map"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + + // The name of the review template. + TemplateName *string `min:"3" type:"string"` + + // The latest status of a review template. + UpdateStatus *string `type:"string" enum:"ReviewTemplateUpdateStatus"` + + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -14374,7 +18424,7 @@ type MilestoneSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MilestoneSummary) String() string { +func (s ReviewTemplate) String() string { return awsutil.Prettify(s) } @@ -14383,92 +18433,141 @@ func (s MilestoneSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s MilestoneSummary) GoString() string { +func (s ReviewTemplate) GoString() string { return s.String() } -// SetMilestoneName sets the MilestoneName field's value. -func (s *MilestoneSummary) SetMilestoneName(v string) *MilestoneSummary { - s.MilestoneName = &v +// SetDescription sets the Description field's value. +func (s *ReviewTemplate) SetDescription(v string) *ReviewTemplate { + s.Description = &v return s } -// SetMilestoneNumber sets the MilestoneNumber field's value. -func (s *MilestoneSummary) SetMilestoneNumber(v int64) *MilestoneSummary { - s.MilestoneNumber = &v +// SetLenses sets the Lenses field's value. +func (s *ReviewTemplate) SetLenses(v []*string) *ReviewTemplate { + s.Lenses = v return s } -// SetRecordedAt sets the RecordedAt field's value. -func (s *MilestoneSummary) SetRecordedAt(v time.Time) *MilestoneSummary { - s.RecordedAt = &v +// SetNotes sets the Notes field's value. +func (s *ReviewTemplate) SetNotes(v string) *ReviewTemplate { + s.Notes = &v return s } -// SetWorkloadSummary sets the WorkloadSummary field's value. -func (s *MilestoneSummary) SetWorkloadSummary(v *WorkloadSummary) *MilestoneSummary { - s.WorkloadSummary = v +// SetOwner sets the Owner field's value. +func (s *ReviewTemplate) SetOwner(v string) *ReviewTemplate { + s.Owner = &v return s } -// A notification summary return object. -type NotificationSummary struct { - _ struct{} `type:"structure"` - - // Summary of lens upgrade. - LensUpgradeSummary *LensUpgradeSummary `type:"structure"` +// SetQuestionCounts sets the QuestionCounts field's value. +func (s *ReviewTemplate) SetQuestionCounts(v map[string]*int64) *ReviewTemplate { + s.QuestionCounts = v + return s +} - // The type of notification. - Type *string `type:"string" enum:"NotificationType"` +// SetShareInvitationId sets the ShareInvitationId field's value. +func (s *ReviewTemplate) SetShareInvitationId(v string) *ReviewTemplate { + s.ShareInvitationId = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s NotificationSummary) String() string { - return awsutil.Prettify(s) +// SetTags sets the Tags field's value. +func (s *ReviewTemplate) SetTags(v map[string]*string) *ReviewTemplate { + s.Tags = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s NotificationSummary) GoString() string { - return s.String() +// SetTemplateArn sets the TemplateArn field's value. +func (s *ReviewTemplate) SetTemplateArn(v string) *ReviewTemplate { + s.TemplateArn = &v + return s } -// SetLensUpgradeSummary sets the LensUpgradeSummary field's value. -func (s *NotificationSummary) SetLensUpgradeSummary(v *LensUpgradeSummary) *NotificationSummary { - s.LensUpgradeSummary = v +// SetTemplateName sets the TemplateName field's value. +func (s *ReviewTemplate) SetTemplateName(v string) *ReviewTemplate { + s.TemplateName = &v + return s +} + +// SetUpdateStatus sets the UpdateStatus field's value. +func (s *ReviewTemplate) SetUpdateStatus(v string) *ReviewTemplate { + s.UpdateStatus = &v return s } -// SetType sets the Type field's value. -func (s *NotificationSummary) SetType(v string) *NotificationSummary { - s.Type = &v +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ReviewTemplate) SetUpdatedAt(v time.Time) *ReviewTemplate { + s.UpdatedAt = &v return s } -// A pillar difference return object. -type PillarDifference struct { +// An answer of the question. +type ReviewTemplateAnswer struct { _ struct{} `type:"structure"` - // Indicates the type of change to the pillar. - DifferenceStatus *string `type:"string" enum:"DifferenceStatus"` + // The status of whether or not this question has been answered. + AnswerStatus *string `type:"string" enum:"ReviewTemplateAnswerStatus"` + + // A list of selected choices to a question in your review template. + ChoiceAnswers []*ChoiceAnswer `type:"list"` + + // List of choices available for a question. + Choices []*Choice `type:"list"` + + // The helpful resource text to be displayed for a custom lens. + // + // This field does not apply to Amazon Web Services official lenses. + HelpfulResourceDisplayText *string `min:"1" type:"string"` + + // The helpful resource URL. + // + // For Amazon Web Services official lenses, this is the helpful resource URL + // for a question or choice. + // + // For custom lenses, this is the helpful resource URL for a question and is + // only provided if HelpfulResourceDisplayText was specified for the question. + HelpfulResourceUrl *string `min:"1" type:"string"` + + // The improvement plan URL for a question in an Amazon Web Services official + // lenses. + // + // This value is only available if the question has been answered. + // + // This value does not apply to custom lenses. + ImprovementPlanUrl *string `min:"1" type:"string"` + + // Defines whether this question is applicable to a lens review. + IsApplicable *bool `type:"boolean"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` // The ID used to identify a pillar, for example, security. // // A pillar is identified by its PillarReviewSummary$PillarId. PillarId *string `min:"1" type:"string"` - // The name of the pillar. - PillarName *string `min:"1" type:"string"` + // The description of the question. + QuestionDescription *string `min:"1" type:"string"` - // List of question differences. - QuestionDifferences []*QuestionDifference `type:"list"` + // The ID of the question. + QuestionId *string `min:"1" type:"string"` + + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` + + // The reason why the question is not applicable to your review template. + Reason *string `type:"string" enum:"AnswerReason"` + + // List of selected choice IDs in a question answer. + // + // The values entered replace the previously selected choices. + SelectedChoices []*string `type:"list"` } // String returns the string representation. @@ -14476,7 +18575,7 @@ type PillarDifference struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s PillarDifference) String() string { +func (s ReviewTemplateAnswer) String() string { return awsutil.Prettify(s) } @@ -14485,106 +18584,131 @@ func (s PillarDifference) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s PillarDifference) GoString() string { +func (s ReviewTemplateAnswer) GoString() string { return s.String() } -// SetDifferenceStatus sets the DifferenceStatus field's value. -func (s *PillarDifference) SetDifferenceStatus(v string) *PillarDifference { - s.DifferenceStatus = &v +// SetAnswerStatus sets the AnswerStatus field's value. +func (s *ReviewTemplateAnswer) SetAnswerStatus(v string) *ReviewTemplateAnswer { + s.AnswerStatus = &v return s } -// SetPillarId sets the PillarId field's value. -func (s *PillarDifference) SetPillarId(v string) *PillarDifference { - s.PillarId = &v +// SetChoiceAnswers sets the ChoiceAnswers field's value. +func (s *ReviewTemplateAnswer) SetChoiceAnswers(v []*ChoiceAnswer) *ReviewTemplateAnswer { + s.ChoiceAnswers = v return s } -// SetPillarName sets the PillarName field's value. -func (s *PillarDifference) SetPillarName(v string) *PillarDifference { - s.PillarName = &v +// SetChoices sets the Choices field's value. +func (s *ReviewTemplateAnswer) SetChoices(v []*Choice) *ReviewTemplateAnswer { + s.Choices = v return s } -// SetQuestionDifferences sets the QuestionDifferences field's value. -func (s *PillarDifference) SetQuestionDifferences(v []*QuestionDifference) *PillarDifference { - s.QuestionDifferences = v +// SetHelpfulResourceDisplayText sets the HelpfulResourceDisplayText field's value. +func (s *ReviewTemplateAnswer) SetHelpfulResourceDisplayText(v string) *ReviewTemplateAnswer { + s.HelpfulResourceDisplayText = &v return s } -// A metric for a particular pillar in a lens. -type PillarMetric struct { - _ struct{} `type:"structure"` - - // The ID used to identify a pillar, for example, security. - // - // A pillar is identified by its PillarReviewSummary$PillarId. - PillarId *string `min:"1" type:"string"` - - // The questions that have been identified as risks in the pillar. - Questions []*QuestionMetric `type:"list"` +// SetHelpfulResourceUrl sets the HelpfulResourceUrl field's value. +func (s *ReviewTemplateAnswer) SetHelpfulResourceUrl(v string) *ReviewTemplateAnswer { + s.HelpfulResourceUrl = &v + return s +} - // A map from risk names to the count of how many questions have that rating. - RiskCounts map[string]*int64 `type:"map"` +// SetImprovementPlanUrl sets the ImprovementPlanUrl field's value. +func (s *ReviewTemplateAnswer) SetImprovementPlanUrl(v string) *ReviewTemplateAnswer { + s.ImprovementPlanUrl = &v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s PillarMetric) String() string { - return awsutil.Prettify(s) +// SetIsApplicable sets the IsApplicable field's value. +func (s *ReviewTemplateAnswer) SetIsApplicable(v bool) *ReviewTemplateAnswer { + s.IsApplicable = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s PillarMetric) GoString() string { - return s.String() +// SetNotes sets the Notes field's value. +func (s *ReviewTemplateAnswer) SetNotes(v string) *ReviewTemplateAnswer { + s.Notes = &v + return s } // SetPillarId sets the PillarId field's value. -func (s *PillarMetric) SetPillarId(v string) *PillarMetric { +func (s *ReviewTemplateAnswer) SetPillarId(v string) *ReviewTemplateAnswer { s.PillarId = &v return s } -// SetQuestions sets the Questions field's value. -func (s *PillarMetric) SetQuestions(v []*QuestionMetric) *PillarMetric { - s.Questions = v +// SetQuestionDescription sets the QuestionDescription field's value. +func (s *ReviewTemplateAnswer) SetQuestionDescription(v string) *ReviewTemplateAnswer { + s.QuestionDescription = &v return s } -// SetRiskCounts sets the RiskCounts field's value. -func (s *PillarMetric) SetRiskCounts(v map[string]*int64) *PillarMetric { - s.RiskCounts = v +// SetQuestionId sets the QuestionId field's value. +func (s *ReviewTemplateAnswer) SetQuestionId(v string) *ReviewTemplateAnswer { + s.QuestionId = &v return s } -// A pillar review summary of a lens review. -type PillarReviewSummary struct { +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *ReviewTemplateAnswer) SetQuestionTitle(v string) *ReviewTemplateAnswer { + s.QuestionTitle = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *ReviewTemplateAnswer) SetReason(v string) *ReviewTemplateAnswer { + s.Reason = &v + return s +} + +// SetSelectedChoices sets the SelectedChoices field's value. +func (s *ReviewTemplateAnswer) SetSelectedChoices(v []*string) *ReviewTemplateAnswer { + s.SelectedChoices = v + return s +} + +// The summary of review template answers. +type ReviewTemplateAnswerSummary struct { _ struct{} `type:"structure"` - // The notes associated with the workload. - Notes *string `type:"string"` + // The status of whether or not this question has been answered. + AnswerStatus *string `type:"string" enum:"ReviewTemplateAnswerStatus"` + + // A list of selected choices to a question in the review template. + ChoiceAnswerSummaries []*ChoiceAnswerSummary `type:"list"` + + // List of choices available for a question. + Choices []*Choice `type:"list"` + + // Defines whether this question is applicable to a lens review. + IsApplicable *bool `type:"boolean"` // The ID used to identify a pillar, for example, security. // // A pillar is identified by its PillarReviewSummary$PillarId. PillarId *string `min:"1" type:"string"` - // The name of the pillar. - PillarName *string `min:"1" type:"string"` + // The ID of the question. + QuestionId *string `min:"1" type:"string"` - // A map from risk names to the count of how many questions have that rating. - PrioritizedRiskCounts map[string]*int64 `type:"map"` + // The title of the question. + QuestionTitle *string `min:"1" type:"string"` - // A map from risk names to the count of how many questions have that rating. - RiskCounts map[string]*int64 `type:"map"` + // The type of question. + QuestionType *string `type:"string" enum:"QuestionType"` + + // The reason why a choice is not-applicable to a question in the review template. + Reason *string `type:"string" enum:"AnswerReason"` + + // List of selected choice IDs in a question answer. + // + // The values entered replace the previously selected choices. + SelectedChoices []*string `type:"list"` } // String returns the string representation. @@ -14592,7 +18716,7 @@ type PillarReviewSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s PillarReviewSummary) String() string { +func (s ReviewTemplateAnswerSummary) String() string { return awsutil.Prettify(s) } @@ -14601,70 +18725,112 @@ func (s PillarReviewSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s PillarReviewSummary) GoString() string { +func (s ReviewTemplateAnswerSummary) GoString() string { return s.String() } -// SetNotes sets the Notes field's value. -func (s *PillarReviewSummary) SetNotes(v string) *PillarReviewSummary { - s.Notes = &v +// SetAnswerStatus sets the AnswerStatus field's value. +func (s *ReviewTemplateAnswerSummary) SetAnswerStatus(v string) *ReviewTemplateAnswerSummary { + s.AnswerStatus = &v + return s +} + +// SetChoiceAnswerSummaries sets the ChoiceAnswerSummaries field's value. +func (s *ReviewTemplateAnswerSummary) SetChoiceAnswerSummaries(v []*ChoiceAnswerSummary) *ReviewTemplateAnswerSummary { + s.ChoiceAnswerSummaries = v + return s +} + +// SetChoices sets the Choices field's value. +func (s *ReviewTemplateAnswerSummary) SetChoices(v []*Choice) *ReviewTemplateAnswerSummary { + s.Choices = v + return s +} + +// SetIsApplicable sets the IsApplicable field's value. +func (s *ReviewTemplateAnswerSummary) SetIsApplicable(v bool) *ReviewTemplateAnswerSummary { + s.IsApplicable = &v return s } // SetPillarId sets the PillarId field's value. -func (s *PillarReviewSummary) SetPillarId(v string) *PillarReviewSummary { +func (s *ReviewTemplateAnswerSummary) SetPillarId(v string) *ReviewTemplateAnswerSummary { s.PillarId = &v return s } -// SetPillarName sets the PillarName field's value. -func (s *PillarReviewSummary) SetPillarName(v string) *PillarReviewSummary { - s.PillarName = &v +// SetQuestionId sets the QuestionId field's value. +func (s *ReviewTemplateAnswerSummary) SetQuestionId(v string) *ReviewTemplateAnswerSummary { + s.QuestionId = &v return s } -// SetPrioritizedRiskCounts sets the PrioritizedRiskCounts field's value. -func (s *PillarReviewSummary) SetPrioritizedRiskCounts(v map[string]*int64) *PillarReviewSummary { - s.PrioritizedRiskCounts = v +// SetQuestionTitle sets the QuestionTitle field's value. +func (s *ReviewTemplateAnswerSummary) SetQuestionTitle(v string) *ReviewTemplateAnswerSummary { + s.QuestionTitle = &v return s } -// SetRiskCounts sets the RiskCounts field's value. -func (s *PillarReviewSummary) SetRiskCounts(v map[string]*int64) *PillarReviewSummary { - s.RiskCounts = v +// SetQuestionType sets the QuestionType field's value. +func (s *ReviewTemplateAnswerSummary) SetQuestionType(v string) *ReviewTemplateAnswerSummary { + s.QuestionType = &v return s } -// A profile. -type Profile struct { - _ struct{} `type:"structure"` +// SetReason sets the Reason field's value. +func (s *ReviewTemplateAnswerSummary) SetReason(v string) *ReviewTemplateAnswerSummary { + s.Reason = &v + return s +} - // The date and time recorded. - CreatedAt *time.Time `type:"timestamp"` +// SetSelectedChoices sets the SelectedChoices field's value. +func (s *ReviewTemplateAnswerSummary) SetSelectedChoices(v []*string) *ReviewTemplateAnswerSummary { + s.SelectedChoices = v + return s +} - // An Amazon Web Services account ID. - Owner *string `min:"12" type:"string"` +// The lens review of a review template. +type ReviewTemplateLensReview struct { + _ struct{} `type:"structure"` - // The profile ARN. - ProfileArn *string `type:"string"` + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` - // The profile description. - ProfileDescription *string `min:"3" type:"string"` + // The lens ARN. + LensArn *string `type:"string"` - // The profile name. - ProfileName *string `min:"3" type:"string"` + // The full name of the lens. + LensName *string `min:"1" type:"string"` + + // The status of the lens. + LensStatus *string `type:"string" enum:"LensStatus"` - // Profile questions. - ProfileQuestions []*ProfileQuestion `type:"list"` + // The version of the lens. + LensVersion *string `min:"1" type:"string"` - // The profile version. - ProfileVersion *string `min:"1" type:"string"` + // The token to use to retrieve the next set of results. + NextToken *string `type:"string"` - // The ID assigned to the share invitation. - ShareInvitationId *string `type:"string"` + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` - // The tags assigned to the profile. - Tags map[string]*string `min:"1" type:"map"` + // Pillar review summaries of a lens review. + PillarReviewSummaries []*ReviewTemplatePillarReviewSummary `type:"list"` + + // A count of how many questions are answered and unanswered in the lens review. + QuestionCounts map[string]*int64 `type:"map"` // The date and time recorded. UpdatedAt *time.Time `type:"timestamp"` @@ -14675,7 +18841,7 @@ type Profile struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Profile) String() string { +func (s ReviewTemplateLensReview) String() string { return awsutil.Prettify(s) } @@ -14684,148 +18850,91 @@ func (s Profile) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s Profile) GoString() string { +func (s ReviewTemplateLensReview) GoString() string { return s.String() } -// SetCreatedAt sets the CreatedAt field's value. -func (s *Profile) SetCreatedAt(v time.Time) *Profile { - s.CreatedAt = &v +// SetLensAlias sets the LensAlias field's value. +func (s *ReviewTemplateLensReview) SetLensAlias(v string) *ReviewTemplateLensReview { + s.LensAlias = &v return s } -// SetOwner sets the Owner field's value. -func (s *Profile) SetOwner(v string) *Profile { - s.Owner = &v +// SetLensArn sets the LensArn field's value. +func (s *ReviewTemplateLensReview) SetLensArn(v string) *ReviewTemplateLensReview { + s.LensArn = &v return s } -// SetProfileArn sets the ProfileArn field's value. -func (s *Profile) SetProfileArn(v string) *Profile { - s.ProfileArn = &v +// SetLensName sets the LensName field's value. +func (s *ReviewTemplateLensReview) SetLensName(v string) *ReviewTemplateLensReview { + s.LensName = &v return s } -// SetProfileDescription sets the ProfileDescription field's value. -func (s *Profile) SetProfileDescription(v string) *Profile { - s.ProfileDescription = &v +// SetLensStatus sets the LensStatus field's value. +func (s *ReviewTemplateLensReview) SetLensStatus(v string) *ReviewTemplateLensReview { + s.LensStatus = &v return s } -// SetProfileName sets the ProfileName field's value. -func (s *Profile) SetProfileName(v string) *Profile { - s.ProfileName = &v +// SetLensVersion sets the LensVersion field's value. +func (s *ReviewTemplateLensReview) SetLensVersion(v string) *ReviewTemplateLensReview { + s.LensVersion = &v return s } -// SetProfileQuestions sets the ProfileQuestions field's value. -func (s *Profile) SetProfileQuestions(v []*ProfileQuestion) *Profile { - s.ProfileQuestions = v +// SetNextToken sets the NextToken field's value. +func (s *ReviewTemplateLensReview) SetNextToken(v string) *ReviewTemplateLensReview { + s.NextToken = &v return s } -// SetProfileVersion sets the ProfileVersion field's value. -func (s *Profile) SetProfileVersion(v string) *Profile { - s.ProfileVersion = &v +// SetNotes sets the Notes field's value. +func (s *ReviewTemplateLensReview) SetNotes(v string) *ReviewTemplateLensReview { + s.Notes = &v return s } -// SetShareInvitationId sets the ShareInvitationId field's value. -func (s *Profile) SetShareInvitationId(v string) *Profile { - s.ShareInvitationId = &v +// SetPillarReviewSummaries sets the PillarReviewSummaries field's value. +func (s *ReviewTemplateLensReview) SetPillarReviewSummaries(v []*ReviewTemplatePillarReviewSummary) *ReviewTemplateLensReview { + s.PillarReviewSummaries = v return s } -// SetTags sets the Tags field's value. -func (s *Profile) SetTags(v map[string]*string) *Profile { - s.Tags = v +// SetQuestionCounts sets the QuestionCounts field's value. +func (s *ReviewTemplateLensReview) SetQuestionCounts(v map[string]*int64) *ReviewTemplateLensReview { + s.QuestionCounts = v return s } // SetUpdatedAt sets the UpdatedAt field's value. -func (s *Profile) SetUpdatedAt(v time.Time) *Profile { +func (s *ReviewTemplateLensReview) SetUpdatedAt(v time.Time) *ReviewTemplateLensReview { s.UpdatedAt = &v return s } -// The profile choice. -type ProfileChoice struct { - _ struct{} `type:"structure"` - - // The description of a choice. - ChoiceDescription *string `min:"1" type:"string"` - - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` - - // The title of a choice. - ChoiceTitle *string `min:"1" type:"string"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ProfileChoice) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ProfileChoice) GoString() string { - return s.String() -} - -// SetChoiceDescription sets the ChoiceDescription field's value. -func (s *ProfileChoice) SetChoiceDescription(v string) *ProfileChoice { - s.ChoiceDescription = &v - return s -} - -// SetChoiceId sets the ChoiceId field's value. -func (s *ProfileChoice) SetChoiceId(v string) *ProfileChoice { - s.ChoiceId = &v - return s -} - -// SetChoiceTitle sets the ChoiceTitle field's value. -func (s *ProfileChoice) SetChoiceTitle(v string) *ProfileChoice { - s.ChoiceTitle = &v - return s -} - -// The profile notification summary. -type ProfileNotificationSummary struct { +// Summary of a review template. +type ReviewTemplatePillarReviewSummary struct { _ struct{} `type:"structure"` - // The current profile version. - CurrentProfileVersion *string `min:"1" type:"string"` - - // The latest profile version. - LatestProfileVersion *string `min:"1" type:"string"` - - // The profile ARN. - ProfileArn *string `type:"string"` - - // The profile name. - ProfileName *string `min:"3" type:"string"` + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` - // Type of notification. - Type *string `type:"string" enum:"ProfileNotificationType"` + // The ID used to identify a pillar, for example, security. + // + // A pillar is identified by its PillarReviewSummary$PillarId. + PillarId *string `min:"1" type:"string"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The name of the pillar. + PillarName *string `min:"1" type:"string"` - // The name of the workload. - // - // The name must be unique within an account within an Amazon Web Services Region. - // Spaces and capitalization are ignored when checking for uniqueness. - WorkloadName *string `min:"3" type:"string"` + // A count of how many questions are answered and unanswered in the requested + // pillar of the lens review. + QuestionCounts map[string]*int64 `type:"map"` } // String returns the string representation. @@ -14833,7 +18942,7 @@ type ProfileNotificationSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileNotificationSummary) String() string { +func (s ReviewTemplatePillarReviewSummary) String() string { return awsutil.Prettify(s) } @@ -14842,76 +18951,58 @@ func (s ProfileNotificationSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileNotificationSummary) GoString() string { +func (s ReviewTemplatePillarReviewSummary) GoString() string { return s.String() } -// SetCurrentProfileVersion sets the CurrentProfileVersion field's value. -func (s *ProfileNotificationSummary) SetCurrentProfileVersion(v string) *ProfileNotificationSummary { - s.CurrentProfileVersion = &v - return s -} - -// SetLatestProfileVersion sets the LatestProfileVersion field's value. -func (s *ProfileNotificationSummary) SetLatestProfileVersion(v string) *ProfileNotificationSummary { - s.LatestProfileVersion = &v - return s -} - -// SetProfileArn sets the ProfileArn field's value. -func (s *ProfileNotificationSummary) SetProfileArn(v string) *ProfileNotificationSummary { - s.ProfileArn = &v - return s -} - -// SetProfileName sets the ProfileName field's value. -func (s *ProfileNotificationSummary) SetProfileName(v string) *ProfileNotificationSummary { - s.ProfileName = &v +// SetNotes sets the Notes field's value. +func (s *ReviewTemplatePillarReviewSummary) SetNotes(v string) *ReviewTemplatePillarReviewSummary { + s.Notes = &v return s } -// SetType sets the Type field's value. -func (s *ProfileNotificationSummary) SetType(v string) *ProfileNotificationSummary { - s.Type = &v +// SetPillarId sets the PillarId field's value. +func (s *ReviewTemplatePillarReviewSummary) SetPillarId(v string) *ReviewTemplatePillarReviewSummary { + s.PillarId = &v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ProfileNotificationSummary) SetWorkloadId(v string) *ProfileNotificationSummary { - s.WorkloadId = &v +// SetPillarName sets the PillarName field's value. +func (s *ReviewTemplatePillarReviewSummary) SetPillarName(v string) *ReviewTemplatePillarReviewSummary { + s.PillarName = &v return s } -// SetWorkloadName sets the WorkloadName field's value. -func (s *ProfileNotificationSummary) SetWorkloadName(v string) *ProfileNotificationSummary { - s.WorkloadName = &v +// SetQuestionCounts sets the QuestionCounts field's value. +func (s *ReviewTemplatePillarReviewSummary) SetQuestionCounts(v map[string]*int64) *ReviewTemplatePillarReviewSummary { + s.QuestionCounts = v return s } -// A profile question. -type ProfileQuestion struct { +// Summary of a review template. +type ReviewTemplateSummary struct { _ struct{} `type:"structure"` - // The maximum number of selected choices. - MaxSelectedChoices *int64 `type:"integer"` + // Description of the review template. + Description *string `min:"3" type:"string"` - // The minimum number of selected choices. - MinSelectedChoices *int64 `type:"integer"` + // Lenses associated with the review template. + Lenses []*string `type:"list"` - // The question choices. - QuestionChoices []*ProfileChoice `type:"list"` + // An Amazon Web Services account ID. + Owner *string `min:"12" type:"string"` - // The description of the question. - QuestionDescription *string `min:"1" type:"string"` + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` - // The ID of the question. - QuestionId *string `min:"1" type:"string"` + // The name of the review template. + TemplateName *string `min:"3" type:"string"` - // The title of the question. - QuestionTitle *string `min:"1" type:"string"` + // The latest status of a review template. + UpdateStatus *string `type:"string" enum:"ReviewTemplateUpdateStatus"` - // The selected choices. - SelectedChoiceIds []*string `type:"list"` + // The date and time recorded. + UpdatedAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -14919,7 +19010,7 @@ type ProfileQuestion struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileQuestion) String() string { +func (s ReviewTemplateSummary) String() string { return awsutil.Prettify(s) } @@ -14928,61 +19019,75 @@ func (s ProfileQuestion) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileQuestion) GoString() string { +func (s ReviewTemplateSummary) GoString() string { return s.String() } -// SetMaxSelectedChoices sets the MaxSelectedChoices field's value. -func (s *ProfileQuestion) SetMaxSelectedChoices(v int64) *ProfileQuestion { - s.MaxSelectedChoices = &v +// SetDescription sets the Description field's value. +func (s *ReviewTemplateSummary) SetDescription(v string) *ReviewTemplateSummary { + s.Description = &v return s } -// SetMinSelectedChoices sets the MinSelectedChoices field's value. -func (s *ProfileQuestion) SetMinSelectedChoices(v int64) *ProfileQuestion { - s.MinSelectedChoices = &v +// SetLenses sets the Lenses field's value. +func (s *ReviewTemplateSummary) SetLenses(v []*string) *ReviewTemplateSummary { + s.Lenses = v return s } -// SetQuestionChoices sets the QuestionChoices field's value. -func (s *ProfileQuestion) SetQuestionChoices(v []*ProfileChoice) *ProfileQuestion { - s.QuestionChoices = v +// SetOwner sets the Owner field's value. +func (s *ReviewTemplateSummary) SetOwner(v string) *ReviewTemplateSummary { + s.Owner = &v return s } -// SetQuestionDescription sets the QuestionDescription field's value. -func (s *ProfileQuestion) SetQuestionDescription(v string) *ProfileQuestion { - s.QuestionDescription = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *ReviewTemplateSummary) SetTemplateArn(v string) *ReviewTemplateSummary { + s.TemplateArn = &v return s } -// SetQuestionId sets the QuestionId field's value. -func (s *ProfileQuestion) SetQuestionId(v string) *ProfileQuestion { - s.QuestionId = &v +// SetTemplateName sets the TemplateName field's value. +func (s *ReviewTemplateSummary) SetTemplateName(v string) *ReviewTemplateSummary { + s.TemplateName = &v return s } -// SetQuestionTitle sets the QuestionTitle field's value. -func (s *ProfileQuestion) SetQuestionTitle(v string) *ProfileQuestion { - s.QuestionTitle = &v +// SetUpdateStatus sets the UpdateStatus field's value. +func (s *ReviewTemplateSummary) SetUpdateStatus(v string) *ReviewTemplateSummary { + s.UpdateStatus = &v return s } -// SetSelectedChoiceIds sets the SelectedChoiceIds field's value. -func (s *ProfileQuestion) SetSelectedChoiceIds(v []*string) *ProfileQuestion { - s.SelectedChoiceIds = v +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ReviewTemplateSummary) SetUpdatedAt(v time.Time) *ReviewTemplateSummary { + s.UpdatedAt = &v return s } -// An update to a profile question. -type ProfileQuestionUpdate struct { - _ struct{} `type:"structure"` +// The user has reached their resource quota. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // Description of the error. + Message_ *string `locationName:"Message" type:"string"` + + // Service Quotas requirement to identify originating quota. + // + // QuotaCode is a required field + QuotaCode *string `type:"string" required:"true"` + + // Identifier of the resource affected. + ResourceId *string `type:"string"` - // The ID of the question. - QuestionId *string `min:"1" type:"string"` + // Type of the resource affected. + ResourceType *string `type:"string"` - // The selected choices. - SelectedChoiceIds []*string `type:"list"` + // Service Quotas requirement to identify originating service. + // + // ServiceCode is a required field + ServiceCode *string `type:"string" required:"true"` } // String returns the string representation. @@ -14990,7 +19095,7 @@ type ProfileQuestionUpdate struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileQuestionUpdate) String() string { +func (s ServiceQuotaExceededException) String() string { return awsutil.Prettify(s) } @@ -14999,51 +19104,82 @@ func (s ProfileQuestionUpdate) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileQuestionUpdate) GoString() string { +func (s ServiceQuotaExceededException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ProfileQuestionUpdate) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ProfileQuestionUpdate"} - if s.QuestionId != nil && len(*s.QuestionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { return nil } -// SetQuestionId sets the QuestionId field's value. -func (s *ProfileQuestionUpdate) SetQuestionId(v string) *ProfileQuestionUpdate { - s.QuestionId = &v - return s +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetSelectedChoiceIds sets the SelectedChoiceIds field's value. -func (s *ProfileQuestionUpdate) SetSelectedChoiceIds(v []*string) *ProfileQuestionUpdate { - s.SelectedChoiceIds = v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode } -// Summary of a profile share. -type ProfileShareSummary struct { +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The share invitation. +type ShareInvitation struct { _ struct{} `type:"structure"` - // The ID associated with the share. - ShareId *string `type:"string"` + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + LensAlias *string `min:"1" type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. - SharedWith *string `min:"12" type:"string"` + // The ARN for the lens. + LensArn *string `type:"string"` - // The status of the share request. - Status *string `type:"string" enum:"ShareStatus"` + // The profile ARN. + ProfileArn *string `type:"string"` - // Profile share invitation status message. - StatusMessage *string `min:"1" type:"string"` + // The ID assigned to the share invitation. + ShareInvitationId *string `type:"string"` + + // The resource type of the share invitation. + ShareResourceType *string `type:"string" enum:"ShareResourceType"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -15051,7 +19187,7 @@ type ProfileShareSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileShareSummary) String() string { +func (s ShareInvitation) String() string { return awsutil.Prettify(s) } @@ -15060,58 +19196,99 @@ func (s ProfileShareSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileShareSummary) GoString() string { +func (s ShareInvitation) GoString() string { return s.String() } -// SetShareId sets the ShareId field's value. -func (s *ProfileShareSummary) SetShareId(v string) *ProfileShareSummary { - s.ShareId = &v +// SetLensAlias sets the LensAlias field's value. +func (s *ShareInvitation) SetLensAlias(v string) *ShareInvitation { + s.LensAlias = &v return s } -// SetSharedWith sets the SharedWith field's value. -func (s *ProfileShareSummary) SetSharedWith(v string) *ProfileShareSummary { - s.SharedWith = &v +// SetLensArn sets the LensArn field's value. +func (s *ShareInvitation) SetLensArn(v string) *ShareInvitation { + s.LensArn = &v return s } -// SetStatus sets the Status field's value. -func (s *ProfileShareSummary) SetStatus(v string) *ProfileShareSummary { - s.Status = &v +// SetProfileArn sets the ProfileArn field's value. +func (s *ShareInvitation) SetProfileArn(v string) *ShareInvitation { + s.ProfileArn = &v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *ProfileShareSummary) SetStatusMessage(v string) *ProfileShareSummary { - s.StatusMessage = &v +// SetShareInvitationId sets the ShareInvitationId field's value. +func (s *ShareInvitation) SetShareInvitationId(v string) *ShareInvitation { + s.ShareInvitationId = &v return s } -// Summary of a profile. -type ProfileSummary struct { +// SetShareResourceType sets the ShareResourceType field's value. +func (s *ShareInvitation) SetShareResourceType(v string) *ShareInvitation { + s.ShareResourceType = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *ShareInvitation) SetTemplateArn(v string) *ShareInvitation { + s.TemplateArn = &v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *ShareInvitation) SetWorkloadId(v string) *ShareInvitation { + s.WorkloadId = &v + return s +} + +// A share invitation summary return object. +type ShareInvitationSummary struct { _ struct{} `type:"structure"` - // The date and time recorded. - CreatedAt *time.Time `type:"timestamp"` + // The ARN for the lens. + LensArn *string `type:"string"` - // An Amazon Web Services account ID. - Owner *string `min:"12" type:"string"` + // The full name of the lens. + LensName *string `min:"1" type:"string"` + + // Permission granted on a share request. + PermissionType *string `type:"string" enum:"PermissionType"` // The profile ARN. ProfileArn *string `type:"string"` - // The profile description. - ProfileDescription *string `min:"3" type:"string"` - // The profile name. ProfileName *string `min:"3" type:"string"` - // The profile version. - ProfileVersion *string `min:"1" type:"string"` + // The ID assigned to the share invitation. + ShareInvitationId *string `type:"string"` - // The date and time recorded. - UpdatedAt *time.Time `type:"timestamp"` + // The resource type of the share invitation. + ShareResourceType *string `type:"string" enum:"ShareResourceType"` + + // An Amazon Web Services account ID. + SharedBy *string `min:"12" type:"string"` + + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + SharedWith *string `min:"12" type:"string"` + + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` + + // The name of the review template. + TemplateName *string `min:"3" type:"string"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` + + // The name of the workload. + // + // The name must be unique within an account within an Amazon Web Services Region. + // Spaces and capitalization are ignored when checking for uniqueness. + WorkloadName *string `min:"3" type:"string"` } // String returns the string representation. @@ -15119,7 +19296,7 @@ type ProfileSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileSummary) String() string { +func (s ShareInvitationSummary) String() string { return awsutil.Prettify(s) } @@ -15128,123 +19305,100 @@ func (s ProfileSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileSummary) GoString() string { +func (s ShareInvitationSummary) GoString() string { return s.String() } -// SetCreatedAt sets the CreatedAt field's value. -func (s *ProfileSummary) SetCreatedAt(v time.Time) *ProfileSummary { - s.CreatedAt = &v +// SetLensArn sets the LensArn field's value. +func (s *ShareInvitationSummary) SetLensArn(v string) *ShareInvitationSummary { + s.LensArn = &v return s } -// SetOwner sets the Owner field's value. -func (s *ProfileSummary) SetOwner(v string) *ProfileSummary { - s.Owner = &v +// SetLensName sets the LensName field's value. +func (s *ShareInvitationSummary) SetLensName(v string) *ShareInvitationSummary { + s.LensName = &v return s } -// SetProfileArn sets the ProfileArn field's value. -func (s *ProfileSummary) SetProfileArn(v string) *ProfileSummary { - s.ProfileArn = &v +// SetPermissionType sets the PermissionType field's value. +func (s *ShareInvitationSummary) SetPermissionType(v string) *ShareInvitationSummary { + s.PermissionType = &v return s } -// SetProfileDescription sets the ProfileDescription field's value. -func (s *ProfileSummary) SetProfileDescription(v string) *ProfileSummary { - s.ProfileDescription = &v +// SetProfileArn sets the ProfileArn field's value. +func (s *ShareInvitationSummary) SetProfileArn(v string) *ShareInvitationSummary { + s.ProfileArn = &v return s } // SetProfileName sets the ProfileName field's value. -func (s *ProfileSummary) SetProfileName(v string) *ProfileSummary { +func (s *ShareInvitationSummary) SetProfileName(v string) *ShareInvitationSummary { s.ProfileName = &v return s } -// SetProfileVersion sets the ProfileVersion field's value. -func (s *ProfileSummary) SetProfileVersion(v string) *ProfileSummary { - s.ProfileVersion = &v +// SetShareInvitationId sets the ShareInvitationId field's value. +func (s *ShareInvitationSummary) SetShareInvitationId(v string) *ShareInvitationSummary { + s.ShareInvitationId = &v return s } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *ProfileSummary) SetUpdatedAt(v time.Time) *ProfileSummary { - s.UpdatedAt = &v +// SetShareResourceType sets the ShareResourceType field's value. +func (s *ShareInvitationSummary) SetShareResourceType(v string) *ShareInvitationSummary { + s.ShareResourceType = &v return s } -// The profile template. -type ProfileTemplate struct { - _ struct{} `type:"structure"` - - // The date and time recorded. - CreatedAt *time.Time `type:"timestamp"` - - // The name of the profile template. - TemplateName *string `min:"3" type:"string"` - - // Profile template questions. - TemplateQuestions []*ProfileTemplateQuestion `type:"list"` - - // The date and time recorded. - UpdatedAt *time.Time `type:"timestamp"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ProfileTemplate) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ProfileTemplate) GoString() string { - return s.String() +// SetSharedBy sets the SharedBy field's value. +func (s *ShareInvitationSummary) SetSharedBy(v string) *ShareInvitationSummary { + s.SharedBy = &v + return s } -// SetCreatedAt sets the CreatedAt field's value. -func (s *ProfileTemplate) SetCreatedAt(v time.Time) *ProfileTemplate { - s.CreatedAt = &v +// SetSharedWith sets the SharedWith field's value. +func (s *ShareInvitationSummary) SetSharedWith(v string) *ShareInvitationSummary { + s.SharedWith = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *ShareInvitationSummary) SetTemplateArn(v string) *ShareInvitationSummary { + s.TemplateArn = &v return s } // SetTemplateName sets the TemplateName field's value. -func (s *ProfileTemplate) SetTemplateName(v string) *ProfileTemplate { +func (s *ShareInvitationSummary) SetTemplateName(v string) *ShareInvitationSummary { s.TemplateName = &v return s } -// SetTemplateQuestions sets the TemplateQuestions field's value. -func (s *ProfileTemplate) SetTemplateQuestions(v []*ProfileTemplateQuestion) *ProfileTemplate { - s.TemplateQuestions = v +// SetWorkloadId sets the WorkloadId field's value. +func (s *ShareInvitationSummary) SetWorkloadId(v string) *ShareInvitationSummary { + s.WorkloadId = &v return s } -// SetUpdatedAt sets the UpdatedAt field's value. -func (s *ProfileTemplate) SetUpdatedAt(v time.Time) *ProfileTemplate { - s.UpdatedAt = &v +// SetWorkloadName sets the WorkloadName field's value. +func (s *ShareInvitationSummary) SetWorkloadName(v string) *ShareInvitationSummary { + s.WorkloadName = &v return s } -// A profile template choice. -type ProfileTemplateChoice struct { +type TagResourceInput struct { _ struct{} `type:"structure"` - // The description of a choice. - ChoiceDescription *string `min:"1" type:"string"` - - // The ID of a choice. - ChoiceId *string `min:"1" type:"string"` + // The tags for the resource. + // + // Tags is a required field + Tags map[string]*string `min:"1" type:"map" required:"true"` - // The title of a choice. - ChoiceTitle *string `min:"1" type:"string"` + // The ARN for the workload. + // + // WorkloadArn is a required field + WorkloadArn *string `location:"uri" locationName:"WorkloadArn" type:"string" required:"true"` } // String returns the string representation. @@ -15252,7 +19406,7 @@ type ProfileTemplateChoice struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileTemplateChoice) String() string { +func (s TagResourceInput) String() string { return awsutil.Prettify(s) } @@ -15261,49 +19415,46 @@ func (s ProfileTemplateChoice) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileTemplateChoice) GoString() string { +func (s TagResourceInput) GoString() string { return s.String() } -// SetChoiceDescription sets the ChoiceDescription field's value. -func (s *ProfileTemplateChoice) SetChoiceDescription(v string) *ProfileTemplateChoice { - s.ChoiceDescription = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.WorkloadArn == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadArn")) + } + if s.WorkloadArn != nil && len(*s.WorkloadArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetChoiceId sets the ChoiceId field's value. -func (s *ProfileTemplateChoice) SetChoiceId(v string) *ProfileTemplateChoice { - s.ChoiceId = &v +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v return s } -// SetChoiceTitle sets the ChoiceTitle field's value. -func (s *ProfileTemplateChoice) SetChoiceTitle(v string) *ProfileTemplateChoice { - s.ChoiceTitle = &v +// SetWorkloadArn sets the WorkloadArn field's value. +func (s *TagResourceInput) SetWorkloadArn(v string) *TagResourceInput { + s.WorkloadArn = &v return s } -// A profile template question. -type ProfileTemplateQuestion struct { +type TagResourceOutput struct { _ struct{} `type:"structure"` - - // The maximum number of choices selected. - MaxSelectedChoices *int64 `type:"integer"` - - // The minimum number of choices selected. - MinSelectedChoices *int64 `type:"integer"` - - // The question choices. - QuestionChoices []*ProfileTemplateChoice `type:"list"` - - // The description of the question. - QuestionDescription *string `min:"1" type:"string"` - - // The ID of the question. - QuestionId *string `min:"1" type:"string"` - - // The title of the question. - QuestionTitle *string `min:"1" type:"string"` } // String returns the string representation. @@ -15311,7 +19462,7 @@ type ProfileTemplateQuestion struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileTemplateQuestion) String() string { +func (s TagResourceOutput) String() string { return awsutil.Prettify(s) } @@ -15320,58 +19471,26 @@ func (s ProfileTemplateQuestion) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ProfileTemplateQuestion) GoString() string { +func (s TagResourceOutput) GoString() string { return s.String() } -// SetMaxSelectedChoices sets the MaxSelectedChoices field's value. -func (s *ProfileTemplateQuestion) SetMaxSelectedChoices(v int64) *ProfileTemplateQuestion { - s.MaxSelectedChoices = &v - return s -} - -// SetMinSelectedChoices sets the MinSelectedChoices field's value. -func (s *ProfileTemplateQuestion) SetMinSelectedChoices(v int64) *ProfileTemplateQuestion { - s.MinSelectedChoices = &v - return s -} - -// SetQuestionChoices sets the QuestionChoices field's value. -func (s *ProfileTemplateQuestion) SetQuestionChoices(v []*ProfileTemplateChoice) *ProfileTemplateQuestion { - s.QuestionChoices = v - return s -} - -// SetQuestionDescription sets the QuestionDescription field's value. -func (s *ProfileTemplateQuestion) SetQuestionDescription(v string) *ProfileTemplateQuestion { - s.QuestionDescription = &v - return s -} - -// SetQuestionId sets the QuestionId field's value. -func (s *ProfileTemplateQuestion) SetQuestionId(v string) *ProfileTemplateQuestion { - s.QuestionId = &v - return s -} - -// SetQuestionTitle sets the QuestionTitle field's value. -func (s *ProfileTemplateQuestion) SetQuestionTitle(v string) *ProfileTemplateQuestion { - s.QuestionTitle = &v - return s -} - -// A question difference return object. -type QuestionDifference struct { +// Summary of a review template share. +type TemplateShareSummary struct { _ struct{} `type:"structure"` - // Indicates the type of change to the question. - DifferenceStatus *string `type:"string" enum:"DifferenceStatus"` + // The ID associated with the share. + ShareId *string `type:"string"` - // The ID of the question. - QuestionId *string `min:"1" type:"string"` + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. + SharedWith *string `min:"12" type:"string"` - // The title of the question. - QuestionTitle *string `min:"1" type:"string"` + // The status of the share request. + Status *string `type:"string" enum:"ShareStatus"` + + // Review template share invitation status message. + StatusMessage *string `min:"1" type:"string"` } // String returns the string representation. @@ -15379,7 +19498,7 @@ type QuestionDifference struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s QuestionDifference) String() string { +func (s TemplateShareSummary) String() string { return awsutil.Prettify(s) } @@ -15388,41 +19507,47 @@ func (s QuestionDifference) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s QuestionDifference) GoString() string { +func (s TemplateShareSummary) GoString() string { return s.String() } -// SetDifferenceStatus sets the DifferenceStatus field's value. -func (s *QuestionDifference) SetDifferenceStatus(v string) *QuestionDifference { - s.DifferenceStatus = &v +// SetShareId sets the ShareId field's value. +func (s *TemplateShareSummary) SetShareId(v string) *TemplateShareSummary { + s.ShareId = &v return s } -// SetQuestionId sets the QuestionId field's value. -func (s *QuestionDifference) SetQuestionId(v string) *QuestionDifference { - s.QuestionId = &v +// SetSharedWith sets the SharedWith field's value. +func (s *TemplateShareSummary) SetSharedWith(v string) *TemplateShareSummary { + s.SharedWith = &v return s } -// SetQuestionTitle sets the QuestionTitle field's value. -func (s *QuestionDifference) SetQuestionTitle(v string) *QuestionDifference { - s.QuestionTitle = &v +// SetStatus sets the Status field's value. +func (s *TemplateShareSummary) SetStatus(v string) *TemplateShareSummary { + s.Status = &v return s } -// A metric for a particular question in the pillar. -type QuestionMetric struct { - _ struct{} `type:"structure"` +// SetStatusMessage sets the StatusMessage field's value. +func (s *TemplateShareSummary) SetStatusMessage(v string) *TemplateShareSummary { + s.StatusMessage = &v + return s +} - // The best practices, or choices, that have been identified as contributing - // to risk in a question. - BestPractices []*BestPractice `type:"list"` +// Request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The ID of the question. - QuestionId *string `min:"1" type:"string"` + // Description of the error. + Message_ *string `locationName:"Message" type:"string"` - // The risk for a given workload, lens review, pillar, or question. - Risk *string `type:"string" enum:"Risk"` + // Service Quotas requirement to identify originating quota. + QuotaCode *string `type:"string"` + + // Service Quotas requirement to identify originating service. + ServiceCode *string `type:"string"` } // String returns the string representation. @@ -15430,7 +19555,7 @@ type QuestionMetric struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s QuestionMetric) String() string { +func (s ThrottlingException) String() string { return awsutil.Prettify(s) } @@ -15439,45 +19564,61 @@ func (s QuestionMetric) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s QuestionMetric) GoString() string { +func (s ThrottlingException) GoString() string { return s.String() } -// SetBestPractices sets the BestPractices field's value. -func (s *QuestionMetric) SetBestPractices(v []*BestPractice) *QuestionMetric { - s.BestPractices = v - return s +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } } -// SetQuestionId sets the QuestionId field's value. -func (s *QuestionMetric) SetQuestionId(v string) *QuestionMetric { - s.QuestionId = &v - return s +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" } -// SetRisk sets the Risk field's value. -func (s *QuestionMetric) SetRisk(v string) *QuestionMetric { - s.Risk = &v - return s +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// The requested resource was not found. -type ResourceNotFoundException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} - // Description of the error. - Message_ *string `locationName:"Message" type:"string"` +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // Identifier of the resource affected. + // A list of tag keys. Existing tags of the resource whose keys are members + // of this list are removed from the resource. // - // ResourceId is a required field - ResourceId *string `type:"string" required:"true"` + // TagKeys is a required field + TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"` - // Type of the resource affected. + // The ARN for the workload. // - // ResourceType is a required field - ResourceType *string `type:"string" required:"true"` + // WorkloadArn is a required field + WorkloadArn *string `location:"uri" locationName:"WorkloadArn" type:"string" required:"true"` } // String returns the string representation. @@ -15485,7 +19626,7 @@ type ResourceNotFoundException struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ResourceNotFoundException) String() string { +func (s UntagResourceInput) String() string { return awsutil.Prettify(s) } @@ -15494,71 +19635,115 @@ func (s ResourceNotFoundException) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ResourceNotFoundException) GoString() string { +func (s UntagResourceInput) GoString() string { return s.String() } -func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { - return &ResourceNotFoundException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + if s.TagKeys != nil && len(s.TagKeys) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + } + if s.WorkloadArn == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadArn")) + } + if s.WorkloadArn != nil && len(*s.WorkloadArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadArn", 1)) } -} -// Code returns the exception type name. -func (s *ResourceNotFoundException) Code() string { - return "ResourceNotFoundException" + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Message returns the exception's message. -func (s *ResourceNotFoundException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceNotFoundException) OrigErr() error { - return nil +// SetWorkloadArn sets the WorkloadArn field's value. +func (s *UntagResourceInput) SetWorkloadArn(v string) *UntagResourceInput { + s.WorkloadArn = &v + return s } -func (s *ResourceNotFoundException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +type UntagResourceOutput struct { + _ struct{} `type:"structure"` } -// Status code returns the HTTP status code for the request's response error. -func (s *ResourceNotFoundException) StatusCode() int { - return s.RespMetadata.StatusCode +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) } -// RequestID returns the service's response RequestID for request. -func (s *ResourceNotFoundException) RequestID() string { - return s.RespMetadata.RequestID +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() } -// The user has reached their resource quota. -type ServiceQuotaExceededException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// Input to update answer. +type UpdateAnswerInput struct { + _ struct{} `type:"structure"` - // Description of the error. - Message_ *string `locationName:"Message" type:"string"` + // A list of choices to update on a question in your workload. The String key + // corresponds to the choice ID to be updated. + ChoiceUpdates map[string]*ChoiceUpdate `type:"map"` - // Service Quotas requirement to identify originating quota. + // Defines whether this question is applicable to a lens review. + IsApplicable *bool `type:"boolean"` + + // The alias of the lens. // - // QuotaCode is a required field - QuotaCode *string `type:"string" required:"true"` + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` - // Identifier of the resource affected. - ResourceId *string `type:"string"` + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` - // Type of the resource affected. - ResourceType *string `type:"string"` + // The ID of the question. + // + // QuestionId is a required field + QuestionId *string `location:"uri" locationName:"QuestionId" min:"1" type:"string" required:"true"` - // Service Quotas requirement to identify originating service. + // The reason why a question is not applicable to your workload. + Reason *string `type:"string" enum:"AnswerReason"` + + // List of selected choice IDs in a question answer. // - // ServiceCode is a required field - ServiceCode *string `type:"string" required:"true"` + // The values entered replace the previously selected choices. + SelectedChoices []*string `type:"list"` + + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + // + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -15566,7 +19751,7 @@ type ServiceQuotaExceededException struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ServiceQuotaExceededException) String() string { +func (s UpdateAnswerInput) String() string { return awsutil.Prettify(s) } @@ -15575,52 +19760,103 @@ func (s ServiceQuotaExceededException) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ServiceQuotaExceededException) GoString() string { +func (s UpdateAnswerInput) GoString() string { return s.String() } -func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { - return &ServiceQuotaExceededException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAnswerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAnswerInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.QuestionId == nil { + invalidParams.Add(request.NewErrParamRequired("QuestionId")) + } + if s.QuestionId != nil && len(*s.QuestionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) } + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + } + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + } + if s.ChoiceUpdates != nil { + for i, v := range s.ChoiceUpdates { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ChoiceUpdates", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Code returns the exception type name. -func (s *ServiceQuotaExceededException) Code() string { - return "ServiceQuotaExceededException" +// SetChoiceUpdates sets the ChoiceUpdates field's value. +func (s *UpdateAnswerInput) SetChoiceUpdates(v map[string]*ChoiceUpdate) *UpdateAnswerInput { + s.ChoiceUpdates = v + return s } -// Message returns the exception's message. -func (s *ServiceQuotaExceededException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetIsApplicable sets the IsApplicable field's value. +func (s *UpdateAnswerInput) SetIsApplicable(v bool) *UpdateAnswerInput { + s.IsApplicable = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ServiceQuotaExceededException) OrigErr() error { - return nil +// SetLensAlias sets the LensAlias field's value. +func (s *UpdateAnswerInput) SetLensAlias(v string) *UpdateAnswerInput { + s.LensAlias = &v + return s } -func (s *ServiceQuotaExceededException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetNotes sets the Notes field's value. +func (s *UpdateAnswerInput) SetNotes(v string) *UpdateAnswerInput { + s.Notes = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *ServiceQuotaExceededException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetQuestionId sets the QuestionId field's value. +func (s *UpdateAnswerInput) SetQuestionId(v string) *UpdateAnswerInput { + s.QuestionId = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ServiceQuotaExceededException) RequestID() string { - return s.RespMetadata.RequestID +// SetReason sets the Reason field's value. +func (s *UpdateAnswerInput) SetReason(v string) *UpdateAnswerInput { + s.Reason = &v + return s } -// The share invitation. -type ShareInvitation struct { +// SetSelectedChoices sets the SelectedChoices field's value. +func (s *UpdateAnswerInput) SetSelectedChoices(v []*string) *UpdateAnswerInput { + s.SelectedChoices = v + return s +} + +// SetWorkloadId sets the WorkloadId field's value. +func (s *UpdateAnswerInput) SetWorkloadId(v string) *UpdateAnswerInput { + s.WorkloadId = &v + return s +} + +// Output of a update answer call. +type UpdateAnswerOutput struct { _ struct{} `type:"structure"` + // An answer of the question. + Answer *Answer `type:"structure"` + // The alias of the lens. // // For Amazon Web Services official lenses, this is either the lens alias, such @@ -15633,18 +19869,9 @@ type ShareInvitation struct { // Each lens is identified by its LensSummary$LensAlias. LensAlias *string `min:"1" type:"string"` - // The ARN for the lens. - LensArn *string `type:"string"` - - // The profile ARN. - ProfileArn *string `type:"string"` - - // The ID assigned to the share invitation. - ShareInvitationId *string `type:"string"` - - // The resource type of the share invitation. - ShareResourceType *string `type:"string" enum:"ShareResourceType"` - + // The ARN for the lens. + LensArn *string `type:"string"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services // Region. WorkloadId *string `min:"32" type:"string"` @@ -15655,7 +19882,7 @@ type ShareInvitation struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ShareInvitation) String() string { +func (s UpdateAnswerOutput) String() string { return awsutil.Prettify(s) } @@ -15664,87 +19891,42 @@ func (s ShareInvitation) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ShareInvitation) GoString() string { +func (s UpdateAnswerOutput) GoString() string { return s.String() } +// SetAnswer sets the Answer field's value. +func (s *UpdateAnswerOutput) SetAnswer(v *Answer) *UpdateAnswerOutput { + s.Answer = v + return s +} + // SetLensAlias sets the LensAlias field's value. -func (s *ShareInvitation) SetLensAlias(v string) *ShareInvitation { +func (s *UpdateAnswerOutput) SetLensAlias(v string) *UpdateAnswerOutput { s.LensAlias = &v return s } // SetLensArn sets the LensArn field's value. -func (s *ShareInvitation) SetLensArn(v string) *ShareInvitation { +func (s *UpdateAnswerOutput) SetLensArn(v string) *UpdateAnswerOutput { s.LensArn = &v return s } -// SetProfileArn sets the ProfileArn field's value. -func (s *ShareInvitation) SetProfileArn(v string) *ShareInvitation { - s.ProfileArn = &v - return s -} - -// SetShareInvitationId sets the ShareInvitationId field's value. -func (s *ShareInvitation) SetShareInvitationId(v string) *ShareInvitation { - s.ShareInvitationId = &v - return s -} - -// SetShareResourceType sets the ShareResourceType field's value. -func (s *ShareInvitation) SetShareResourceType(v string) *ShareInvitation { - s.ShareResourceType = &v - return s -} - // SetWorkloadId sets the WorkloadId field's value. -func (s *ShareInvitation) SetWorkloadId(v string) *ShareInvitation { +func (s *UpdateAnswerOutput) SetWorkloadId(v string) *UpdateAnswerOutput { s.WorkloadId = &v return s } -// A share invitation summary return object. -type ShareInvitationSummary struct { +type UpdateGlobalSettingsInput struct { _ struct{} `type:"structure"` - // The ARN for the lens. - LensArn *string `type:"string"` - - // The full name of the lens. - LensName *string `min:"1" type:"string"` - - // Permission granted on a share request. - PermissionType *string `type:"string" enum:"PermissionType"` - - // The profile ARN. - ProfileArn *string `type:"string"` - - // The profile name. - ProfileName *string `min:"3" type:"string"` - - // The ID assigned to the share invitation. - ShareInvitationId *string `type:"string"` - - // The resource type of the share invitation. - ShareResourceType *string `type:"string" enum:"ShareResourceType"` - - // An Amazon Web Services account ID. - SharedBy *string `min:"12" type:"string"` - - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. - SharedWith *string `min:"12" type:"string"` - - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The status of discovery support settings. + DiscoveryIntegrationStatus *string `type:"string" enum:"DiscoveryIntegrationStatus"` - // The name of the workload. - // - // The name must be unique within an account within an Amazon Web Services Region. - // Spaces and capitalization are ignored when checking for uniqueness. - WorkloadName *string `min:"3" type:"string"` + // The status of organization sharing settings. + OrganizationSharingStatus *string `type:"string" enum:"OrganizationSharingStatus"` } // String returns the string representation. @@ -15752,7 +19934,7 @@ type ShareInvitationSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ShareInvitationSummary) String() string { +func (s UpdateGlobalSettingsInput) String() string { return awsutil.Prettify(s) } @@ -15761,88 +19943,79 @@ func (s ShareInvitationSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ShareInvitationSummary) GoString() string { +func (s UpdateGlobalSettingsInput) GoString() string { return s.String() } -// SetLensArn sets the LensArn field's value. -func (s *ShareInvitationSummary) SetLensArn(v string) *ShareInvitationSummary { - s.LensArn = &v - return s -} - -// SetLensName sets the LensName field's value. -func (s *ShareInvitationSummary) SetLensName(v string) *ShareInvitationSummary { - s.LensName = &v - return s -} - -// SetPermissionType sets the PermissionType field's value. -func (s *ShareInvitationSummary) SetPermissionType(v string) *ShareInvitationSummary { - s.PermissionType = &v - return s -} - -// SetProfileArn sets the ProfileArn field's value. -func (s *ShareInvitationSummary) SetProfileArn(v string) *ShareInvitationSummary { - s.ProfileArn = &v - return s -} - -// SetProfileName sets the ProfileName field's value. -func (s *ShareInvitationSummary) SetProfileName(v string) *ShareInvitationSummary { - s.ProfileName = &v +// SetDiscoveryIntegrationStatus sets the DiscoveryIntegrationStatus field's value. +func (s *UpdateGlobalSettingsInput) SetDiscoveryIntegrationStatus(v string) *UpdateGlobalSettingsInput { + s.DiscoveryIntegrationStatus = &v return s } -// SetShareInvitationId sets the ShareInvitationId field's value. -func (s *ShareInvitationSummary) SetShareInvitationId(v string) *ShareInvitationSummary { - s.ShareInvitationId = &v +// SetOrganizationSharingStatus sets the OrganizationSharingStatus field's value. +func (s *UpdateGlobalSettingsInput) SetOrganizationSharingStatus(v string) *UpdateGlobalSettingsInput { + s.OrganizationSharingStatus = &v return s } -// SetShareResourceType sets the ShareResourceType field's value. -func (s *ShareInvitationSummary) SetShareResourceType(v string) *ShareInvitationSummary { - s.ShareResourceType = &v - return s +type UpdateGlobalSettingsOutput struct { + _ struct{} `type:"structure"` } -// SetSharedBy sets the SharedBy field's value. -func (s *ShareInvitationSummary) SetSharedBy(v string) *ShareInvitationSummary { - s.SharedBy = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGlobalSettingsOutput) String() string { + return awsutil.Prettify(s) } -// SetSharedWith sets the SharedWith field's value. -func (s *ShareInvitationSummary) SetSharedWith(v string) *ShareInvitationSummary { - s.SharedWith = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateGlobalSettingsOutput) GoString() string { + return s.String() } -// SetWorkloadId sets the WorkloadId field's value. -func (s *ShareInvitationSummary) SetWorkloadId(v string) *ShareInvitationSummary { - s.WorkloadId = &v - return s -} +// Input for update lens review. +type UpdateLensReviewInput struct { + _ struct{} `type:"structure"` -// SetWorkloadName sets the WorkloadName field's value. -func (s *ShareInvitationSummary) SetWorkloadName(v string) *ShareInvitationSummary { - s.WorkloadName = &v - return s -} + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` -type TagResourceInput struct { - _ struct{} `type:"structure"` + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + LensNotes *string `type:"string"` - // The tags for the resource. + // List of pillar notes of a lens review in a workload. // - // Tags is a required field - Tags map[string]*string `min:"1" type:"map" required:"true"` + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + PillarNotes map[string]*string `type:"map"` - // The ARN for the workload. + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. // - // WorkloadArn is a required field - WorkloadArn *string `location:"uri" locationName:"WorkloadArn" type:"string" required:"true"` + // WorkloadId is a required field + WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` } // String returns the string representation. @@ -15850,7 +20023,7 @@ type TagResourceInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s TagResourceInput) String() string { +func (s UpdateLensReviewInput) String() string { return awsutil.Prettify(s) } @@ -15859,24 +20032,24 @@ func (s TagResourceInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s TagResourceInput) GoString() string { +func (s UpdateLensReviewInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *TagResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} - if s.Tags == nil { - invalidParams.Add(request.NewErrParamRequired("Tags")) +func (s *UpdateLensReviewInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateLensReviewInput"} + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) } - if s.Tags != nil && len(s.Tags) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.WorkloadArn == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadArn")) + if s.WorkloadId == nil { + invalidParams.Add(request.NewErrParamRequired("WorkloadId")) } - if s.WorkloadArn != nil && len(*s.WorkloadArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadArn", 1)) + if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { + invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) } if invalidParams.Len() > 0 { @@ -15885,53 +20058,40 @@ func (s *TagResourceInput) Validate() error { return nil } -// SetTags sets the Tags field's value. -func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { - s.Tags = v +// SetLensAlias sets the LensAlias field's value. +func (s *UpdateLensReviewInput) SetLensAlias(v string) *UpdateLensReviewInput { + s.LensAlias = &v return s } -// SetWorkloadArn sets the WorkloadArn field's value. -func (s *TagResourceInput) SetWorkloadArn(v string) *TagResourceInput { - s.WorkloadArn = &v +// SetLensNotes sets the LensNotes field's value. +func (s *UpdateLensReviewInput) SetLensNotes(v string) *UpdateLensReviewInput { + s.LensNotes = &v return s } -type TagResourceOutput struct { - _ struct{} `type:"structure"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s TagResourceOutput) String() string { - return awsutil.Prettify(s) +// SetPillarNotes sets the PillarNotes field's value. +func (s *UpdateLensReviewInput) SetPillarNotes(v map[string]*string) *UpdateLensReviewInput { + s.PillarNotes = v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s TagResourceOutput) GoString() string { - return s.String() +// SetWorkloadId sets the WorkloadId field's value. +func (s *UpdateLensReviewInput) SetWorkloadId(v string) *UpdateLensReviewInput { + s.WorkloadId = &v + return s } -// Request was denied due to request throttling. -type ThrottlingException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - // Description of the error. - Message_ *string `locationName:"Message" type:"string"` +// Output of a update lens review call. +type UpdateLensReviewOutput struct { + _ struct{} `type:"structure"` - // Service Quotas requirement to identify originating quota. - QuotaCode *string `type:"string"` + // A lens review of a question. + LensReview *LensReview `type:"structure"` - // Service Quotas requirement to identify originating service. - ServiceCode *string `type:"string"` + // The ID assigned to the workload. This ID is unique within an Amazon Web Services + // Region. + WorkloadId *string `min:"32" type:"string"` } // String returns the string representation. @@ -15939,7 +20099,7 @@ type ThrottlingException struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ThrottlingException) String() string { +func (s UpdateLensReviewOutput) String() string { return awsutil.Prettify(s) } @@ -15948,61 +20108,35 @@ func (s ThrottlingException) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ThrottlingException) GoString() string { +func (s UpdateLensReviewOutput) GoString() string { return s.String() } -func newErrorThrottlingException(v protocol.ResponseMetadata) error { - return &ThrottlingException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *ThrottlingException) Code() string { - return "ThrottlingException" -} - -// Message returns the exception's message. -func (s *ThrottlingException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ThrottlingException) OrigErr() error { - return nil -} - -func (s *ThrottlingException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *ThrottlingException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetLensReview sets the LensReview field's value. +func (s *UpdateLensReviewOutput) SetLensReview(v *LensReview) *UpdateLensReviewOutput { + s.LensReview = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ThrottlingException) RequestID() string { - return s.RespMetadata.RequestID +// SetWorkloadId sets the WorkloadId field's value. +func (s *UpdateLensReviewOutput) SetWorkloadId(v string) *UpdateLensReviewOutput { + s.WorkloadId = &v + return s } -type UntagResourceInput struct { - _ struct{} `type:"structure" nopayload:"true"` +type UpdateProfileInput struct { + _ struct{} `type:"structure"` - // A list of tag keys. Existing tags of the resource whose keys are members - // of this list are removed from the resource. + // The profile ARN. // - // TagKeys is a required field - TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"` + // ProfileArn is a required field + ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` - // The ARN for the workload. - // - // WorkloadArn is a required field - WorkloadArn *string `location:"uri" locationName:"WorkloadArn" type:"string" required:"true"` + // The profile description. + ProfileDescription *string `min:"3" type:"string"` + + // Profile questions. + ProfileQuestions []*ProfileQuestionUpdate `type:"list"` } // String returns the string representation. @@ -16010,7 +20144,7 @@ type UntagResourceInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UntagResourceInput) String() string { +func (s UpdateProfileInput) String() string { return awsutil.Prettify(s) } @@ -16019,24 +20153,31 @@ func (s UntagResourceInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UntagResourceInput) GoString() string { +func (s UpdateProfileInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UntagResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} - if s.TagKeys == nil { - invalidParams.Add(request.NewErrParamRequired("TagKeys")) +func (s *UpdateProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateProfileInput"} + if s.ProfileArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileArn")) } - if s.TagKeys != nil && len(s.TagKeys) < 1 { - invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) } - if s.WorkloadArn == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadArn")) + if s.ProfileDescription != nil && len(*s.ProfileDescription) < 3 { + invalidParams.Add(request.NewErrParamMinLen("ProfileDescription", 3)) } - if s.WorkloadArn != nil && len(*s.WorkloadArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadArn", 1)) + if s.ProfileQuestions != nil { + for i, v := range s.ProfileQuestions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProfileQuestions", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -16045,20 +20186,29 @@ func (s *UntagResourceInput) Validate() error { return nil } -// SetTagKeys sets the TagKeys field's value. -func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { - s.TagKeys = v +// SetProfileArn sets the ProfileArn field's value. +func (s *UpdateProfileInput) SetProfileArn(v string) *UpdateProfileInput { + s.ProfileArn = &v return s } -// SetWorkloadArn sets the WorkloadArn field's value. -func (s *UntagResourceInput) SetWorkloadArn(v string) *UntagResourceInput { - s.WorkloadArn = &v +// SetProfileDescription sets the ProfileDescription field's value. +func (s *UpdateProfileInput) SetProfileDescription(v string) *UpdateProfileInput { + s.ProfileDescription = &v return s } -type UntagResourceOutput struct { +// SetProfileQuestions sets the ProfileQuestions field's value. +func (s *UpdateProfileInput) SetProfileQuestions(v []*ProfileQuestionUpdate) *UpdateProfileInput { + s.ProfileQuestions = v + return s +} + +type UpdateProfileOutput struct { _ struct{} `type:"structure"` + + // The profile. + Profile *Profile `type:"structure"` } // String returns the string representation. @@ -16066,7 +20216,7 @@ type UntagResourceOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UntagResourceOutput) String() string { +func (s UpdateProfileOutput) String() string { return awsutil.Prettify(s) } @@ -16075,16 +20225,20 @@ func (s UntagResourceOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UntagResourceOutput) GoString() string { +func (s UpdateProfileOutput) GoString() string { return s.String() } -// Input to update answer. -type UpdateAnswerInput struct { +// SetProfile sets the Profile field's value. +func (s *UpdateProfileOutput) SetProfile(v *Profile) *UpdateProfileOutput { + s.Profile = v + return s +} + +type UpdateReviewTemplateAnswerInput struct { _ struct{} `type:"structure"` - // A list of choices to update on a question in your workload. The String key - // corresponds to the choice ID to be updated. + // A list of choices to be updated. ChoiceUpdates map[string]*ChoiceUpdate `type:"map"` // Defines whether this question is applicable to a lens review. @@ -16105,6 +20259,9 @@ type UpdateAnswerInput struct { LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // The ID of the question. @@ -16112,7 +20269,7 @@ type UpdateAnswerInput struct { // QuestionId is a required field QuestionId *string `location:"uri" locationName:"QuestionId" min:"1" type:"string" required:"true"` - // The reason why a question is not applicable to your workload. + // The update reason. Reason *string `type:"string" enum:"AnswerReason"` // List of selected choice IDs in a question answer. @@ -16120,11 +20277,10 @@ type UpdateAnswerInput struct { // The values entered replace the previously selected choices. SelectedChoices []*string `type:"list"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. + // The review template ARN. // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -16132,7 +20288,7 @@ type UpdateAnswerInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateAnswerInput) String() string { +func (s UpdateReviewTemplateAnswerInput) String() string { return awsutil.Prettify(s) } @@ -16141,13 +20297,13 @@ func (s UpdateAnswerInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateAnswerInput) GoString() string { +func (s UpdateReviewTemplateAnswerInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateAnswerInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateAnswerInput"} +func (s *UpdateReviewTemplateAnswerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateReviewTemplateAnswerInput"} if s.LensAlias == nil { invalidParams.Add(request.NewErrParamRequired("LensAlias")) } @@ -16160,11 +20316,11 @@ func (s *UpdateAnswerInput) Validate() error { if s.QuestionId != nil && len(*s.QuestionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("QuestionId", 1)) } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) } if s.ChoiceUpdates != nil { for i, v := range s.ChoiceUpdates { @@ -16184,59 +20340,58 @@ func (s *UpdateAnswerInput) Validate() error { } // SetChoiceUpdates sets the ChoiceUpdates field's value. -func (s *UpdateAnswerInput) SetChoiceUpdates(v map[string]*ChoiceUpdate) *UpdateAnswerInput { +func (s *UpdateReviewTemplateAnswerInput) SetChoiceUpdates(v map[string]*ChoiceUpdate) *UpdateReviewTemplateAnswerInput { s.ChoiceUpdates = v return s } // SetIsApplicable sets the IsApplicable field's value. -func (s *UpdateAnswerInput) SetIsApplicable(v bool) *UpdateAnswerInput { +func (s *UpdateReviewTemplateAnswerInput) SetIsApplicable(v bool) *UpdateReviewTemplateAnswerInput { s.IsApplicable = &v return s } // SetLensAlias sets the LensAlias field's value. -func (s *UpdateAnswerInput) SetLensAlias(v string) *UpdateAnswerInput { +func (s *UpdateReviewTemplateAnswerInput) SetLensAlias(v string) *UpdateReviewTemplateAnswerInput { s.LensAlias = &v return s } // SetNotes sets the Notes field's value. -func (s *UpdateAnswerInput) SetNotes(v string) *UpdateAnswerInput { +func (s *UpdateReviewTemplateAnswerInput) SetNotes(v string) *UpdateReviewTemplateAnswerInput { s.Notes = &v return s } // SetQuestionId sets the QuestionId field's value. -func (s *UpdateAnswerInput) SetQuestionId(v string) *UpdateAnswerInput { +func (s *UpdateReviewTemplateAnswerInput) SetQuestionId(v string) *UpdateReviewTemplateAnswerInput { s.QuestionId = &v return s } // SetReason sets the Reason field's value. -func (s *UpdateAnswerInput) SetReason(v string) *UpdateAnswerInput { +func (s *UpdateReviewTemplateAnswerInput) SetReason(v string) *UpdateReviewTemplateAnswerInput { s.Reason = &v return s } // SetSelectedChoices sets the SelectedChoices field's value. -func (s *UpdateAnswerInput) SetSelectedChoices(v []*string) *UpdateAnswerInput { +func (s *UpdateReviewTemplateAnswerInput) SetSelectedChoices(v []*string) *UpdateReviewTemplateAnswerInput { s.SelectedChoices = v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *UpdateAnswerInput) SetWorkloadId(v string) *UpdateAnswerInput { - s.WorkloadId = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateAnswerInput) SetTemplateArn(v string) *UpdateReviewTemplateAnswerInput { + s.TemplateArn = &v return s } -// Output of a update answer call. -type UpdateAnswerOutput struct { +type UpdateReviewTemplateAnswerOutput struct { _ struct{} `type:"structure"` // An answer of the question. - Answer *Answer `type:"structure"` + Answer *ReviewTemplateAnswer `type:"structure"` // The alias of the lens. // @@ -16250,12 +20405,8 @@ type UpdateAnswerOutput struct { // Each lens is identified by its LensSummary$LensAlias. LensAlias *string `min:"1" type:"string"` - // The ARN for the lens. - LensArn *string `type:"string"` - - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` } // String returns the string representation. @@ -16263,7 +20414,7 @@ type UpdateAnswerOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateAnswerOutput) String() string { +func (s UpdateReviewTemplateAnswerOutput) String() string { return awsutil.Prettify(s) } @@ -16272,42 +20423,54 @@ func (s UpdateAnswerOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateAnswerOutput) GoString() string { +func (s UpdateReviewTemplateAnswerOutput) GoString() string { return s.String() } // SetAnswer sets the Answer field's value. -func (s *UpdateAnswerOutput) SetAnswer(v *Answer) *UpdateAnswerOutput { +func (s *UpdateReviewTemplateAnswerOutput) SetAnswer(v *ReviewTemplateAnswer) *UpdateReviewTemplateAnswerOutput { s.Answer = v return s } // SetLensAlias sets the LensAlias field's value. -func (s *UpdateAnswerOutput) SetLensAlias(v string) *UpdateAnswerOutput { +func (s *UpdateReviewTemplateAnswerOutput) SetLensAlias(v string) *UpdateReviewTemplateAnswerOutput { s.LensAlias = &v return s } -// SetLensArn sets the LensArn field's value. -func (s *UpdateAnswerOutput) SetLensArn(v string) *UpdateAnswerOutput { - s.LensArn = &v - return s -} - -// SetWorkloadId sets the WorkloadId field's value. -func (s *UpdateAnswerOutput) SetWorkloadId(v string) *UpdateAnswerOutput { - s.WorkloadId = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateAnswerOutput) SetTemplateArn(v string) *UpdateReviewTemplateAnswerOutput { + s.TemplateArn = &v return s } -type UpdateGlobalSettingsInput struct { +type UpdateReviewTemplateInput struct { _ struct{} `type:"structure"` - // The status of discovery support settings. - DiscoveryIntegrationStatus *string `type:"string" enum:"DiscoveryIntegrationStatus"` + // The review template description. + Description *string `min:"3" type:"string"` - // The status of organization sharing settings. - OrganizationSharingStatus *string `type:"string" enum:"OrganizationSharingStatus"` + // A list of lens aliases or ARNs to apply to the review template. + LensesToAssociate []*string `min:"1" type:"list"` + + // A list of lens aliases or ARNs to unapply to the review template. The wellarchitected + // lens cannot be unapplied. + LensesToDisassociate []*string `min:"1" type:"list"` + + // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. + Notes *string `type:"string"` + + // The review template ARN. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` + + // The review template name. + TemplateName *string `min:"3" type:"string"` } // String returns the string representation. @@ -16315,7 +20478,7 @@ type UpdateGlobalSettingsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateGlobalSettingsInput) String() string { +func (s UpdateReviewTemplateInput) String() string { return awsutil.Prettify(s) } @@ -16324,46 +20487,75 @@ func (s UpdateGlobalSettingsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateGlobalSettingsInput) GoString() string { +func (s UpdateReviewTemplateInput) GoString() string { return s.String() } -// SetDiscoveryIntegrationStatus sets the DiscoveryIntegrationStatus field's value. -func (s *UpdateGlobalSettingsInput) SetDiscoveryIntegrationStatus(v string) *UpdateGlobalSettingsInput { - s.DiscoveryIntegrationStatus = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateReviewTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateReviewTemplateInput"} + if s.Description != nil && len(*s.Description) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Description", 3)) + } + if s.LensesToAssociate != nil && len(s.LensesToAssociate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensesToAssociate", 1)) + } + if s.LensesToDisassociate != nil && len(s.LensesToDisassociate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensesToDisassociate", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + if s.TemplateName != nil && len(*s.TemplateName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateReviewTemplateInput) SetDescription(v string) *UpdateReviewTemplateInput { + s.Description = &v return s } -// SetOrganizationSharingStatus sets the OrganizationSharingStatus field's value. -func (s *UpdateGlobalSettingsInput) SetOrganizationSharingStatus(v string) *UpdateGlobalSettingsInput { - s.OrganizationSharingStatus = &v +// SetLensesToAssociate sets the LensesToAssociate field's value. +func (s *UpdateReviewTemplateInput) SetLensesToAssociate(v []*string) *UpdateReviewTemplateInput { + s.LensesToAssociate = v return s } -type UpdateGlobalSettingsOutput struct { - _ struct{} `type:"structure"` +// SetLensesToDisassociate sets the LensesToDisassociate field's value. +func (s *UpdateReviewTemplateInput) SetLensesToDisassociate(v []*string) *UpdateReviewTemplateInput { + s.LensesToDisassociate = v + return s } -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateGlobalSettingsOutput) String() string { - return awsutil.Prettify(s) +// SetNotes sets the Notes field's value. +func (s *UpdateReviewTemplateInput) SetNotes(v string) *UpdateReviewTemplateInput { + s.Notes = &v + return s } -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateGlobalSettingsOutput) GoString() string { - return s.String() +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateInput) SetTemplateArn(v string) *UpdateReviewTemplateInput { + s.TemplateArn = &v + return s } -// Input for update lens review. -type UpdateLensReviewInput struct { +// SetTemplateName sets the TemplateName field's value. +func (s *UpdateReviewTemplateInput) SetTemplateName(v string) *UpdateReviewTemplateInput { + s.TemplateName = &v + return s +} + +type UpdateReviewTemplateLensReviewInput struct { _ struct{} `type:"structure"` // The alias of the lens. @@ -16381,16 +20573,21 @@ type UpdateLensReviewInput struct { LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. LensNotes *string `type:"string"` // List of pillar notes of a lens review in a workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. PillarNotes map[string]*string `type:"map"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. + // The review template ARN. // - // WorkloadId is a required field - WorkloadId *string `location:"uri" locationName:"WorkloadId" min:"32" type:"string" required:"true"` + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` } // String returns the string representation. @@ -16398,7 +20595,7 @@ type UpdateLensReviewInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateLensReviewInput) String() string { +func (s UpdateReviewTemplateLensReviewInput) String() string { return awsutil.Prettify(s) } @@ -16407,24 +20604,24 @@ func (s UpdateLensReviewInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateLensReviewInput) GoString() string { +func (s UpdateReviewTemplateLensReviewInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateLensReviewInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateLensReviewInput"} +func (s *UpdateReviewTemplateLensReviewInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateReviewTemplateLensReviewInput"} if s.LensAlias == nil { invalidParams.Add(request.NewErrParamRequired("LensAlias")) } if s.LensAlias != nil && len(*s.LensAlias) < 1 { invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) } - if s.WorkloadId == nil { - invalidParams.Add(request.NewErrParamRequired("WorkloadId")) + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) } - if s.WorkloadId != nil && len(*s.WorkloadId) < 32 { - invalidParams.Add(request.NewErrParamMinLen("WorkloadId", 32)) + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) } if invalidParams.Len() > 0 { @@ -16434,39 +20631,37 @@ func (s *UpdateLensReviewInput) Validate() error { } // SetLensAlias sets the LensAlias field's value. -func (s *UpdateLensReviewInput) SetLensAlias(v string) *UpdateLensReviewInput { +func (s *UpdateReviewTemplateLensReviewInput) SetLensAlias(v string) *UpdateReviewTemplateLensReviewInput { s.LensAlias = &v return s } // SetLensNotes sets the LensNotes field's value. -func (s *UpdateLensReviewInput) SetLensNotes(v string) *UpdateLensReviewInput { +func (s *UpdateReviewTemplateLensReviewInput) SetLensNotes(v string) *UpdateReviewTemplateLensReviewInput { s.LensNotes = &v return s } // SetPillarNotes sets the PillarNotes field's value. -func (s *UpdateLensReviewInput) SetPillarNotes(v map[string]*string) *UpdateLensReviewInput { +func (s *UpdateReviewTemplateLensReviewInput) SetPillarNotes(v map[string]*string) *UpdateReviewTemplateLensReviewInput { s.PillarNotes = v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *UpdateLensReviewInput) SetWorkloadId(v string) *UpdateLensReviewInput { - s.WorkloadId = &v +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateLensReviewInput) SetTemplateArn(v string) *UpdateReviewTemplateLensReviewInput { + s.TemplateArn = &v return s } -// Output of a update lens review call. -type UpdateLensReviewOutput struct { +type UpdateReviewTemplateLensReviewOutput struct { _ struct{} `type:"structure"` // A lens review of a question. - LensReview *LensReview `type:"structure"` + LensReview *ReviewTemplateLensReview `type:"structure"` - // The ID assigned to the workload. This ID is unique within an Amazon Web Services - // Region. - WorkloadId *string `min:"32" type:"string"` + // The review template ARN. + TemplateArn *string `min:"50" type:"string"` } // String returns the string representation. @@ -16474,7 +20669,7 @@ type UpdateLensReviewOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateLensReviewOutput) String() string { +func (s UpdateReviewTemplateLensReviewOutput) String() string { return awsutil.Prettify(s) } @@ -16483,107 +20678,27 @@ func (s UpdateLensReviewOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateLensReviewOutput) GoString() string { +func (s UpdateReviewTemplateLensReviewOutput) GoString() string { return s.String() } // SetLensReview sets the LensReview field's value. -func (s *UpdateLensReviewOutput) SetLensReview(v *LensReview) *UpdateLensReviewOutput { +func (s *UpdateReviewTemplateLensReviewOutput) SetLensReview(v *ReviewTemplateLensReview) *UpdateReviewTemplateLensReviewOutput { s.LensReview = v return s } -// SetWorkloadId sets the WorkloadId field's value. -func (s *UpdateLensReviewOutput) SetWorkloadId(v string) *UpdateLensReviewOutput { - s.WorkloadId = &v - return s -} - -type UpdateProfileInput struct { - _ struct{} `type:"structure"` - - // The profile ARN. - // - // ProfileArn is a required field - ProfileArn *string `location:"uri" locationName:"ProfileArn" type:"string" required:"true"` - - // The profile description. - ProfileDescription *string `min:"3" type:"string"` - - // Profile questions. - ProfileQuestions []*ProfileQuestionUpdate `type:"list"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateProfileInput) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s UpdateProfileInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *UpdateProfileInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "UpdateProfileInput"} - if s.ProfileArn == nil { - invalidParams.Add(request.NewErrParamRequired("ProfileArn")) - } - if s.ProfileArn != nil && len(*s.ProfileArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ProfileArn", 1)) - } - if s.ProfileDescription != nil && len(*s.ProfileDescription) < 3 { - invalidParams.Add(request.NewErrParamMinLen("ProfileDescription", 3)) - } - if s.ProfileQuestions != nil { - for i, v := range s.ProfileQuestions { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProfileQuestions", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetProfileArn sets the ProfileArn field's value. -func (s *UpdateProfileInput) SetProfileArn(v string) *UpdateProfileInput { - s.ProfileArn = &v - return s -} - -// SetProfileDescription sets the ProfileDescription field's value. -func (s *UpdateProfileInput) SetProfileDescription(v string) *UpdateProfileInput { - s.ProfileDescription = &v - return s -} - -// SetProfileQuestions sets the ProfileQuestions field's value. -func (s *UpdateProfileInput) SetProfileQuestions(v []*ProfileQuestionUpdate) *UpdateProfileInput { - s.ProfileQuestions = v +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateReviewTemplateLensReviewOutput) SetTemplateArn(v string) *UpdateReviewTemplateLensReviewOutput { + s.TemplateArn = &v return s } -type UpdateProfileOutput struct { +type UpdateReviewTemplateOutput struct { _ struct{} `type:"structure"` - // The profile. - Profile *Profile `type:"structure"` + // A review template. + ReviewTemplate *ReviewTemplate `type:"structure"` } // String returns the string representation. @@ -16591,7 +20706,7 @@ type UpdateProfileOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateProfileOutput) String() string { +func (s UpdateReviewTemplateOutput) String() string { return awsutil.Prettify(s) } @@ -16600,13 +20715,13 @@ func (s UpdateProfileOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s UpdateProfileOutput) GoString() string { +func (s UpdateReviewTemplateOutput) GoString() string { return s.String() } -// SetProfile sets the Profile field's value. -func (s *UpdateProfileOutput) SetProfile(v *Profile) *UpdateProfileOutput { - s.Profile = v +// SetReviewTemplate sets the ReviewTemplate field's value. +func (s *UpdateReviewTemplateOutput) SetReviewTemplate(v *ReviewTemplate) *UpdateReviewTemplateOutput { + s.ReviewTemplate = v return s } @@ -16807,6 +20922,9 @@ type UpdateWorkloadInput struct { NonAwsRegions []*string `type:"list"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // The priorities of the pillars, which are used to order items in the improvement @@ -17397,6 +21515,126 @@ func (s UpgradeProfileVersionOutput) GoString() string { return s.String() } +type UpgradeReviewTemplateLensReviewInput struct { + _ struct{} `type:"structure"` + + // A unique case-sensitive string used to ensure that this request is idempotent + // (executes only once). + // + // You should not reuse the same token for other requests. If you retry a request + // with the same client request token and the same parameters after the original + // request has completed successfully, the result of the original request is + // returned. + // + // This token is listed as required, however, if you do not specify it, the + // Amazon Web Services SDKs automatically generate one for you. If you are not + // using the Amazon Web Services SDK or the CLI, you must provide this token + // or the request will fail. + ClientRequestToken *string `min:"1" type:"string"` + + // The alias of the lens. + // + // For Amazon Web Services official lenses, this is either the lens alias, such + // as serverless, or the lens ARN, such as arn:aws:wellarchitected:us-east-1::lens/serverless. + // Note that some operations (such as ExportLens and CreateLensShare) are not + // permitted on Amazon Web Services official lenses. + // + // For custom lenses, this is the lens ARN, such as arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef. + // + // Each lens is identified by its LensSummary$LensAlias. + // + // LensAlias is a required field + LensAlias *string `location:"uri" locationName:"LensAlias" min:"1" type:"string" required:"true"` + + // The ARN of the review template. + // + // TemplateArn is a required field + TemplateArn *string `location:"uri" locationName:"TemplateArn" min:"50" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpgradeReviewTemplateLensReviewInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpgradeReviewTemplateLensReviewInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpgradeReviewTemplateLensReviewInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpgradeReviewTemplateLensReviewInput"} + if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1)) + } + if s.LensAlias == nil { + invalidParams.Add(request.NewErrParamRequired("LensAlias")) + } + if s.LensAlias != nil && len(*s.LensAlias) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LensAlias", 1)) + } + if s.TemplateArn == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateArn")) + } + if s.TemplateArn != nil && len(*s.TemplateArn) < 50 { + invalidParams.Add(request.NewErrParamMinLen("TemplateArn", 50)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *UpgradeReviewTemplateLensReviewInput) SetClientRequestToken(v string) *UpgradeReviewTemplateLensReviewInput { + s.ClientRequestToken = &v + return s +} + +// SetLensAlias sets the LensAlias field's value. +func (s *UpgradeReviewTemplateLensReviewInput) SetLensAlias(v string) *UpgradeReviewTemplateLensReviewInput { + s.LensAlias = &v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpgradeReviewTemplateLensReviewInput) SetTemplateArn(v string) *UpgradeReviewTemplateLensReviewInput { + s.TemplateArn = &v + return s +} + +type UpgradeReviewTemplateLensReviewOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpgradeReviewTemplateLensReviewOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpgradeReviewTemplateLensReviewOutput) GoString() string { + return s.String() +} + // The user input is not valid. type ValidationException struct { _ struct{} `type:"structure"` @@ -17646,12 +21884,18 @@ type Workload struct { // The list of lenses associated with the workload. Each lens is identified // by its LensSummary$LensAlias. + // + // If a review template that specifies lenses is applied to the workload, those + // lenses are applied to the workload in addition to these lenses. Lenses []*string `type:"list"` // The list of non-Amazon Web Services Regions associated with the workload. NonAwsRegions []*string `type:"list"` // The notes associated with the workload. + // + // For a review template, these are the notes that will be associated with the + // workload when the template is applied. Notes *string `type:"string"` // An Amazon Web Services account ID. @@ -17977,8 +22221,8 @@ type WorkloadShare struct { // An Amazon Web Services account ID. SharedBy *string `min:"12" type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. SharedWith *string `min:"12" type:"string"` // The status of the share request. @@ -18065,8 +22309,8 @@ type WorkloadShareSummary struct { // The ID associated with the share. ShareId *string `type:"string"` - // The Amazon Web Services account ID, IAM role, organization ID, or organizational - // unit (OU) ID with which the workload, lens, or profile is shared. + // The Amazon Web Services account ID, organization ID, or organizational unit + // (OU) ID with which the workload, lens, profile, or review template is shared. SharedWith *string `min:"12" type:"string"` // The status of the share request. @@ -18133,6 +22377,9 @@ type WorkloadSummary struct { // The list of lenses associated with the workload. Each lens is identified // by its LensSummary$LensAlias. + // + // If a review template that specifies lenses is applied to the workload, those + // lenses are applied to the workload in addition to these lenses. Lenses []*string `type:"list"` // An Amazon Web Services account ID. @@ -18631,6 +22878,22 @@ func ProfileOwnerType_Values() []string { } } +const ( + // QuestionUnanswered is a Question enum value + QuestionUnanswered = "UNANSWERED" + + // QuestionAnswered is a Question enum value + QuestionAnswered = "ANSWERED" +) + +// Question_Values returns all elements of the Question enum +func Question_Values() []string { + return []string{ + QuestionUnanswered, + QuestionAnswered, + } +} + const ( // QuestionPriorityPrioritized is a QuestionPriority enum value QuestionPriorityPrioritized = "PRIORITIZED" @@ -18679,6 +22942,38 @@ func ReportFormat_Values() []string { } } +const ( + // ReviewTemplateAnswerStatusUnanswered is a ReviewTemplateAnswerStatus enum value + ReviewTemplateAnswerStatusUnanswered = "UNANSWERED" + + // ReviewTemplateAnswerStatusAnswered is a ReviewTemplateAnswerStatus enum value + ReviewTemplateAnswerStatusAnswered = "ANSWERED" +) + +// ReviewTemplateAnswerStatus_Values returns all elements of the ReviewTemplateAnswerStatus enum +func ReviewTemplateAnswerStatus_Values() []string { + return []string{ + ReviewTemplateAnswerStatusUnanswered, + ReviewTemplateAnswerStatusAnswered, + } +} + +const ( + // ReviewTemplateUpdateStatusCurrent is a ReviewTemplateUpdateStatus enum value + ReviewTemplateUpdateStatusCurrent = "CURRENT" + + // ReviewTemplateUpdateStatusLensNotCurrent is a ReviewTemplateUpdateStatus enum value + ReviewTemplateUpdateStatusLensNotCurrent = "LENS_NOT_CURRENT" +) + +// ReviewTemplateUpdateStatus_Values returns all elements of the ReviewTemplateUpdateStatus enum +func ReviewTemplateUpdateStatus_Values() []string { + return []string{ + ReviewTemplateUpdateStatusCurrent, + ReviewTemplateUpdateStatusLensNotCurrent, + } +} + // The risk for a given workload, lens review, pillar, or question. const ( // RiskUnanswered is a Risk enum value @@ -18734,6 +23029,9 @@ const ( // ShareResourceTypeProfile is a ShareResourceType enum value ShareResourceTypeProfile = "PROFILE" + + // ShareResourceTypeTemplate is a ShareResourceType enum value + ShareResourceTypeTemplate = "TEMPLATE" ) // ShareResourceType_Values returns all elements of the ShareResourceType enum @@ -18742,6 +23040,7 @@ func ShareResourceType_Values() []string { ShareResourceTypeWorkload, ShareResourceTypeLens, ShareResourceTypeProfile, + ShareResourceTypeTemplate, } } diff --git a/service/wellarchitected/wellarchitectediface/interface.go b/service/wellarchitected/wellarchitectediface/interface.go index e46f9c191a8..d25f400d36b 100644 --- a/service/wellarchitected/wellarchitectediface/interface.go +++ b/service/wellarchitected/wellarchitectediface/interface.go @@ -88,6 +88,14 @@ type WellArchitectedAPI interface { CreateProfileShareWithContext(aws.Context, *wellarchitected.CreateProfileShareInput, ...request.Option) (*wellarchitected.CreateProfileShareOutput, error) CreateProfileShareRequest(*wellarchitected.CreateProfileShareInput) (*request.Request, *wellarchitected.CreateProfileShareOutput) + CreateReviewTemplate(*wellarchitected.CreateReviewTemplateInput) (*wellarchitected.CreateReviewTemplateOutput, error) + CreateReviewTemplateWithContext(aws.Context, *wellarchitected.CreateReviewTemplateInput, ...request.Option) (*wellarchitected.CreateReviewTemplateOutput, error) + CreateReviewTemplateRequest(*wellarchitected.CreateReviewTemplateInput) (*request.Request, *wellarchitected.CreateReviewTemplateOutput) + + CreateTemplateShare(*wellarchitected.CreateTemplateShareInput) (*wellarchitected.CreateTemplateShareOutput, error) + CreateTemplateShareWithContext(aws.Context, *wellarchitected.CreateTemplateShareInput, ...request.Option) (*wellarchitected.CreateTemplateShareOutput, error) + CreateTemplateShareRequest(*wellarchitected.CreateTemplateShareInput) (*request.Request, *wellarchitected.CreateTemplateShareOutput) + CreateWorkload(*wellarchitected.CreateWorkloadInput) (*wellarchitected.CreateWorkloadOutput, error) CreateWorkloadWithContext(aws.Context, *wellarchitected.CreateWorkloadInput, ...request.Option) (*wellarchitected.CreateWorkloadOutput, error) CreateWorkloadRequest(*wellarchitected.CreateWorkloadInput) (*request.Request, *wellarchitected.CreateWorkloadOutput) @@ -112,6 +120,14 @@ type WellArchitectedAPI interface { DeleteProfileShareWithContext(aws.Context, *wellarchitected.DeleteProfileShareInput, ...request.Option) (*wellarchitected.DeleteProfileShareOutput, error) DeleteProfileShareRequest(*wellarchitected.DeleteProfileShareInput) (*request.Request, *wellarchitected.DeleteProfileShareOutput) + DeleteReviewTemplate(*wellarchitected.DeleteReviewTemplateInput) (*wellarchitected.DeleteReviewTemplateOutput, error) + DeleteReviewTemplateWithContext(aws.Context, *wellarchitected.DeleteReviewTemplateInput, ...request.Option) (*wellarchitected.DeleteReviewTemplateOutput, error) + DeleteReviewTemplateRequest(*wellarchitected.DeleteReviewTemplateInput) (*request.Request, *wellarchitected.DeleteReviewTemplateOutput) + + DeleteTemplateShare(*wellarchitected.DeleteTemplateShareInput) (*wellarchitected.DeleteTemplateShareOutput, error) + DeleteTemplateShareWithContext(aws.Context, *wellarchitected.DeleteTemplateShareInput, ...request.Option) (*wellarchitected.DeleteTemplateShareOutput, error) + DeleteTemplateShareRequest(*wellarchitected.DeleteTemplateShareInput) (*request.Request, *wellarchitected.DeleteTemplateShareOutput) + DeleteWorkload(*wellarchitected.DeleteWorkloadInput) (*wellarchitected.DeleteWorkloadOutput, error) DeleteWorkloadWithContext(aws.Context, *wellarchitected.DeleteWorkloadInput, ...request.Option) (*wellarchitected.DeleteWorkloadOutput, error) DeleteWorkloadRequest(*wellarchitected.DeleteWorkloadInput) (*request.Request, *wellarchitected.DeleteWorkloadOutput) @@ -171,6 +187,18 @@ type WellArchitectedAPI interface { GetProfileTemplateWithContext(aws.Context, *wellarchitected.GetProfileTemplateInput, ...request.Option) (*wellarchitected.GetProfileTemplateOutput, error) GetProfileTemplateRequest(*wellarchitected.GetProfileTemplateInput) (*request.Request, *wellarchitected.GetProfileTemplateOutput) + GetReviewTemplate(*wellarchitected.GetReviewTemplateInput) (*wellarchitected.GetReviewTemplateOutput, error) + GetReviewTemplateWithContext(aws.Context, *wellarchitected.GetReviewTemplateInput, ...request.Option) (*wellarchitected.GetReviewTemplateOutput, error) + GetReviewTemplateRequest(*wellarchitected.GetReviewTemplateInput) (*request.Request, *wellarchitected.GetReviewTemplateOutput) + + GetReviewTemplateAnswer(*wellarchitected.GetReviewTemplateAnswerInput) (*wellarchitected.GetReviewTemplateAnswerOutput, error) + GetReviewTemplateAnswerWithContext(aws.Context, *wellarchitected.GetReviewTemplateAnswerInput, ...request.Option) (*wellarchitected.GetReviewTemplateAnswerOutput, error) + GetReviewTemplateAnswerRequest(*wellarchitected.GetReviewTemplateAnswerInput) (*request.Request, *wellarchitected.GetReviewTemplateAnswerOutput) + + GetReviewTemplateLensReview(*wellarchitected.GetReviewTemplateLensReviewInput) (*wellarchitected.GetReviewTemplateLensReviewOutput, error) + GetReviewTemplateLensReviewWithContext(aws.Context, *wellarchitected.GetReviewTemplateLensReviewInput, ...request.Option) (*wellarchitected.GetReviewTemplateLensReviewOutput, error) + GetReviewTemplateLensReviewRequest(*wellarchitected.GetReviewTemplateLensReviewInput) (*request.Request, *wellarchitected.GetReviewTemplateLensReviewOutput) + GetWorkload(*wellarchitected.GetWorkloadInput) (*wellarchitected.GetWorkloadOutput, error) GetWorkloadWithContext(aws.Context, *wellarchitected.GetWorkloadInput, ...request.Option) (*wellarchitected.GetWorkloadOutput, error) GetWorkloadRequest(*wellarchitected.GetWorkloadInput) (*request.Request, *wellarchitected.GetWorkloadOutput) @@ -263,6 +291,20 @@ type WellArchitectedAPI interface { ListProfilesPages(*wellarchitected.ListProfilesInput, func(*wellarchitected.ListProfilesOutput, bool) bool) error ListProfilesPagesWithContext(aws.Context, *wellarchitected.ListProfilesInput, func(*wellarchitected.ListProfilesOutput, bool) bool, ...request.Option) error + ListReviewTemplateAnswers(*wellarchitected.ListReviewTemplateAnswersInput) (*wellarchitected.ListReviewTemplateAnswersOutput, error) + ListReviewTemplateAnswersWithContext(aws.Context, *wellarchitected.ListReviewTemplateAnswersInput, ...request.Option) (*wellarchitected.ListReviewTemplateAnswersOutput, error) + ListReviewTemplateAnswersRequest(*wellarchitected.ListReviewTemplateAnswersInput) (*request.Request, *wellarchitected.ListReviewTemplateAnswersOutput) + + ListReviewTemplateAnswersPages(*wellarchitected.ListReviewTemplateAnswersInput, func(*wellarchitected.ListReviewTemplateAnswersOutput, bool) bool) error + ListReviewTemplateAnswersPagesWithContext(aws.Context, *wellarchitected.ListReviewTemplateAnswersInput, func(*wellarchitected.ListReviewTemplateAnswersOutput, bool) bool, ...request.Option) error + + ListReviewTemplates(*wellarchitected.ListReviewTemplatesInput) (*wellarchitected.ListReviewTemplatesOutput, error) + ListReviewTemplatesWithContext(aws.Context, *wellarchitected.ListReviewTemplatesInput, ...request.Option) (*wellarchitected.ListReviewTemplatesOutput, error) + ListReviewTemplatesRequest(*wellarchitected.ListReviewTemplatesInput) (*request.Request, *wellarchitected.ListReviewTemplatesOutput) + + ListReviewTemplatesPages(*wellarchitected.ListReviewTemplatesInput, func(*wellarchitected.ListReviewTemplatesOutput, bool) bool) error + ListReviewTemplatesPagesWithContext(aws.Context, *wellarchitected.ListReviewTemplatesInput, func(*wellarchitected.ListReviewTemplatesOutput, bool) bool, ...request.Option) error + ListShareInvitations(*wellarchitected.ListShareInvitationsInput) (*wellarchitected.ListShareInvitationsOutput, error) ListShareInvitationsWithContext(aws.Context, *wellarchitected.ListShareInvitationsInput, ...request.Option) (*wellarchitected.ListShareInvitationsOutput, error) ListShareInvitationsRequest(*wellarchitected.ListShareInvitationsInput) (*request.Request, *wellarchitected.ListShareInvitationsOutput) @@ -274,6 +316,13 @@ type WellArchitectedAPI interface { ListTagsForResourceWithContext(aws.Context, *wellarchitected.ListTagsForResourceInput, ...request.Option) (*wellarchitected.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*wellarchitected.ListTagsForResourceInput) (*request.Request, *wellarchitected.ListTagsForResourceOutput) + ListTemplateShares(*wellarchitected.ListTemplateSharesInput) (*wellarchitected.ListTemplateSharesOutput, error) + ListTemplateSharesWithContext(aws.Context, *wellarchitected.ListTemplateSharesInput, ...request.Option) (*wellarchitected.ListTemplateSharesOutput, error) + ListTemplateSharesRequest(*wellarchitected.ListTemplateSharesInput) (*request.Request, *wellarchitected.ListTemplateSharesOutput) + + ListTemplateSharesPages(*wellarchitected.ListTemplateSharesInput, func(*wellarchitected.ListTemplateSharesOutput, bool) bool) error + ListTemplateSharesPagesWithContext(aws.Context, *wellarchitected.ListTemplateSharesInput, func(*wellarchitected.ListTemplateSharesOutput, bool) bool, ...request.Option) error + ListWorkloadShares(*wellarchitected.ListWorkloadSharesInput) (*wellarchitected.ListWorkloadSharesOutput, error) ListWorkloadSharesWithContext(aws.Context, *wellarchitected.ListWorkloadSharesInput, ...request.Option) (*wellarchitected.ListWorkloadSharesOutput, error) ListWorkloadSharesRequest(*wellarchitected.ListWorkloadSharesInput) (*request.Request, *wellarchitected.ListWorkloadSharesOutput) @@ -312,6 +361,18 @@ type WellArchitectedAPI interface { UpdateProfileWithContext(aws.Context, *wellarchitected.UpdateProfileInput, ...request.Option) (*wellarchitected.UpdateProfileOutput, error) UpdateProfileRequest(*wellarchitected.UpdateProfileInput) (*request.Request, *wellarchitected.UpdateProfileOutput) + UpdateReviewTemplate(*wellarchitected.UpdateReviewTemplateInput) (*wellarchitected.UpdateReviewTemplateOutput, error) + UpdateReviewTemplateWithContext(aws.Context, *wellarchitected.UpdateReviewTemplateInput, ...request.Option) (*wellarchitected.UpdateReviewTemplateOutput, error) + UpdateReviewTemplateRequest(*wellarchitected.UpdateReviewTemplateInput) (*request.Request, *wellarchitected.UpdateReviewTemplateOutput) + + UpdateReviewTemplateAnswer(*wellarchitected.UpdateReviewTemplateAnswerInput) (*wellarchitected.UpdateReviewTemplateAnswerOutput, error) + UpdateReviewTemplateAnswerWithContext(aws.Context, *wellarchitected.UpdateReviewTemplateAnswerInput, ...request.Option) (*wellarchitected.UpdateReviewTemplateAnswerOutput, error) + UpdateReviewTemplateAnswerRequest(*wellarchitected.UpdateReviewTemplateAnswerInput) (*request.Request, *wellarchitected.UpdateReviewTemplateAnswerOutput) + + UpdateReviewTemplateLensReview(*wellarchitected.UpdateReviewTemplateLensReviewInput) (*wellarchitected.UpdateReviewTemplateLensReviewOutput, error) + UpdateReviewTemplateLensReviewWithContext(aws.Context, *wellarchitected.UpdateReviewTemplateLensReviewInput, ...request.Option) (*wellarchitected.UpdateReviewTemplateLensReviewOutput, error) + UpdateReviewTemplateLensReviewRequest(*wellarchitected.UpdateReviewTemplateLensReviewInput) (*request.Request, *wellarchitected.UpdateReviewTemplateLensReviewOutput) + UpdateShareInvitation(*wellarchitected.UpdateShareInvitationInput) (*wellarchitected.UpdateShareInvitationOutput, error) UpdateShareInvitationWithContext(aws.Context, *wellarchitected.UpdateShareInvitationInput, ...request.Option) (*wellarchitected.UpdateShareInvitationOutput, error) UpdateShareInvitationRequest(*wellarchitected.UpdateShareInvitationInput) (*request.Request, *wellarchitected.UpdateShareInvitationOutput) @@ -331,6 +392,10 @@ type WellArchitectedAPI interface { UpgradeProfileVersion(*wellarchitected.UpgradeProfileVersionInput) (*wellarchitected.UpgradeProfileVersionOutput, error) UpgradeProfileVersionWithContext(aws.Context, *wellarchitected.UpgradeProfileVersionInput, ...request.Option) (*wellarchitected.UpgradeProfileVersionOutput, error) UpgradeProfileVersionRequest(*wellarchitected.UpgradeProfileVersionInput) (*request.Request, *wellarchitected.UpgradeProfileVersionOutput) + + UpgradeReviewTemplateLensReview(*wellarchitected.UpgradeReviewTemplateLensReviewInput) (*wellarchitected.UpgradeReviewTemplateLensReviewOutput, error) + UpgradeReviewTemplateLensReviewWithContext(aws.Context, *wellarchitected.UpgradeReviewTemplateLensReviewInput, ...request.Option) (*wellarchitected.UpgradeReviewTemplateLensReviewOutput, error) + UpgradeReviewTemplateLensReviewRequest(*wellarchitected.UpgradeReviewTemplateLensReviewInput) (*request.Request, *wellarchitected.UpgradeReviewTemplateLensReviewOutput) } var _ WellArchitectedAPI = (*wellarchitected.WellArchitected)(nil)