diff --git a/.changelog/225abf04fd5745c8871212acd27db346.json b/.changelog/225abf04fd5745c8871212acd27db346.json new file mode 100644 index 00000000000..64599e54904 --- /dev/null +++ b/.changelog/225abf04fd5745c8871212acd27db346.json @@ -0,0 +1,30 @@ +{ + "id": "225abf04-fd57-45c8-8712-12acd27db346", + "type": "feature", + "description": "Updated API models", + "modules": [ + "service/appsync", + "service/computeoptimizer", + "service/databrew", + "service/ec2", + "service/elasticache", + "service/elasticsearchservice", + "service/glue", + "service/honeycode", + "service/iotwireless", + "service/kendra", + "service/lexmodelsv2", + "service/lexruntimev2", + "service/lookoutmetrics", + "service/medialive", + "service/mediatailor", + "service/mwaa", + "service/nimble", + "service/opensearch", + "service/pi", + "service/pinpoint", + "service/rds", + "service/ssm", + "service/workspaces" + ] +} \ No newline at end of file diff --git a/.changelog/5ab32814eb5e456ea921d0f0a645ca5b.json b/.changelog/5ab32814eb5e456ea921d0f0a645ca5b.json index ef3ffc0ddc2..53389b1da15 100644 --- a/.changelog/5ab32814eb5e456ea921d0f0a645ca5b.json +++ b/.changelog/5ab32814eb5e456ea921d0f0a645ca5b.json @@ -3,6 +3,7 @@ "type": "feature", "description": "Adds new MarshalWithOptions and UnmarshalWithOptions helpers allowing Encoding and Decoding options to be specified when serializing AttributeValues. Addresses issue: https://github.com/aws/aws-sdk-go-v2/issues/1494", "modules": [ - "feature/dynamodb/attributevalue" + "feature/dynamodb/attributevalue", + "feature/dynamodbstreams/attributevalue" ] -} +} \ No newline at end of file diff --git a/.changelog/e3d77e4f69974ea3a46d44d70be675ba.json b/.changelog/e3d77e4f69974ea3a46d44d70be675ba.json new file mode 100644 index 00000000000..4a2c26d66fd --- /dev/null +++ b/.changelog/e3d77e4f69974ea3a46d44d70be675ba.json @@ -0,0 +1,16 @@ +{ + "id": "e3d77e4f-6997-4ea3-a46d-44d70be675ba", + "type": "documentation", + "description": "Updated API models", + "modules": [ + "service/autoscalingplans", + "service/costexplorer", + "service/databasemigrationservice", + "service/finspacedata", + "service/fms", + "service/identitystore", + "service/ioteventsdata", + "service/sso", + "service/transcribe" + ] +} diff --git a/codegen/sdk-codegen/aws-models/appsync.2017-07-25.json b/codegen/sdk-codegen/aws-models/appsync.2017-07-25.json index 8be4c799ec6..365e42529c3 100644 --- a/codegen/sdk-codegen/aws-models/appsync.2017-07-25.json +++ b/codegen/sdk-codegen/aws-models/appsync.2017-07-25.json @@ -1253,6 +1253,12 @@ }, "syncConfig": { "target": "com.amazonaws.appsync#SyncConfig" + }, + "maxBatchSize": { + "target": "com.amazonaws.appsync#MaxBatchSize", + "traits": { + "smithy.api#documentation": "

The maximum batching size for a resolver.

" + } } } }, @@ -1474,6 +1480,12 @@ "traits": { "smithy.api#documentation": "

The caching configuration for the resolver.

" } + }, + "maxBatchSize": { + "target": "com.amazonaws.appsync#MaxBatchSize", + "traits": { + "smithy.api#documentation": "

The maximum batching size for a resolver.

" + } } } }, @@ -2481,6 +2493,12 @@ }, "syncConfig": { "target": "com.amazonaws.appsync#SyncConfig" + }, + "maxBatchSize": { + "target": "com.amazonaws.appsync#MaxBatchSize", + "traits": { + "smithy.api#documentation": "

The maximum batching size for a resolver.

" + } } }, "traits": { @@ -4050,6 +4068,16 @@ "smithy.api#length": { "min": 1, "max": 65536 + }, + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.appsync#MaxBatchSize": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 2000 } } }, @@ -4300,6 +4328,12 @@ "traits": { "smithy.api#documentation": "

The caching configuration for the resolver.

" } + }, + "maxBatchSize": { + "target": "com.amazonaws.appsync#MaxBatchSize", + "traits": { + "smithy.api#documentation": "

The maximum batching size for a resolver.

" + } } }, "traits": { @@ -4588,7 +4622,8 @@ "smithy.api#length": { "min": 0, "max": 256 - } + }, + "smithy.api#pattern": "^[\\s\\w+-=\\.:/@]*$" } }, "com.amazonaws.appsync#Type": { @@ -5167,6 +5202,12 @@ }, "syncConfig": { "target": "com.amazonaws.appsync#SyncConfig" + }, + "maxBatchSize": { + "target": "com.amazonaws.appsync#MaxBatchSize", + "traits": { + "smithy.api#documentation": "

The maximum batching size for a resolver.

" + } } } }, @@ -5390,6 +5431,12 @@ "traits": { "smithy.api#documentation": "

The caching configuration for the resolver.

" } + }, + "maxBatchSize": { + "target": "com.amazonaws.appsync#MaxBatchSize", + "traits": { + "smithy.api#documentation": "

The maximum batching size for a resolver.

" + } } } }, diff --git a/codegen/sdk-codegen/aws-models/computeoptimizer.2019-11-01.json b/codegen/sdk-codegen/aws-models/computeoptimizer.2019-11-01.json index 0d06b593e15..f1f2a584fd7 100644 --- a/codegen/sdk-codegen/aws-models/computeoptimizer.2019-11-01.json +++ b/codegen/sdk-codegen/aws-models/computeoptimizer.2019-11-01.json @@ -201,6 +201,12 @@ "traits": { "smithy.api#documentation": "

An object that describes the effective recommendation preferences for the Auto Scaling group.

" } + }, + "inferredWorkloadTypes": { + "target": "com.amazonaws.computeoptimizer#InferredWorkloadTypes", + "traits": { + "smithy.api#documentation": "

The applications that might be running on the instances in the Auto Scaling group\n as inferred by Compute Optimizer.

\n\n

Compute Optimizer can infer if one of the following applications might be running on\n the instances:

\n\n " + } } }, "traits": { @@ -239,6 +245,12 @@ "traits": { "smithy.api#documentation": "

An object that describes the savings opportunity for the Auto Scaling group\n recommendation option. Savings opportunity includes the estimated monthly savings amount\n and percentage.

" } + }, + "migrationEffort": { + "target": "com.amazonaws.computeoptimizer#MigrationEffort", + "traits": { + "smithy.api#documentation": "

The level of effort required to migrate from the current instance type to the\n recommended instance type.

\n\n

For example, the migration effort is Low if Amazon EMR is the\n inferred workload type and an Amazon Web Services Graviton instance type is recommended.\n The migration effort is Medium if a workload type couldn't be inferred but\n an Amazon Web Services Graviton instance type is recommended. The migration effort is\n VeryLow if both the current and recommended instance types are of the\n same CPU architecture.

" + } } }, "traits": { @@ -714,7 +726,13 @@ "enhancedInfrastructureMetrics": { "target": "com.amazonaws.computeoptimizer#EnhancedInfrastructureMetrics", "traits": { - "smithy.api#documentation": "

Describes the activation status of the enhanced infrastructure metrics\n preference.

\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh, and a status of Inactive confirms that it's not yet\n applied.

" + "smithy.api#documentation": "

Describes the activation status of the enhanced infrastructure metrics\n preference.

\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh, and a status of Inactive confirms that it's not yet\n applied to recommendations.

\n

For more information, see Enhanced\n infrastructure metrics in the Compute Optimizer User\n Guide.

" + } + }, + "inferredWorkloadTypes": { + "target": "com.amazonaws.computeoptimizer#InferredWorkloadTypesPreference", + "traits": { + "smithy.api#documentation": "

Describes the activation status of the inferred workload types preference.

\n\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh. A status of Inactive confirms that it's not yet\n applied to recommendations.

" } } }, @@ -794,7 +812,7 @@ } }, "traits": { - "smithy.api#documentation": "

Describes the estimated monthly savings amount possible for a given resource based on\n On-Demand instance pricing

\n

For more information, see Estimated monthly savings and savings opportunities in the\n Compute Optimizer User Guide.

" + "smithy.api#documentation": "

Describes the estimated monthly savings amount possible, based on On-Demand instance\n pricing, by adopting Compute Optimizer recommendations for a given resource.

\n

For more information, see Estimated monthly savings and savings opportunities in the\n Compute Optimizer User Guide.

" } }, "com.amazonaws.computeoptimizer#ExportAutoScalingGroupRecommendations": { @@ -1410,6 +1428,18 @@ { "value": "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", "name": "EFFECTIVE_RECOMMENDATION_PREFERENCES_ENHANCED_INFRASTRUCTURE_METRICS" + }, + { + "value": "EffectiveRecommendationPreferencesInferredWorkloadTypes", + "name": "EFFECTIVE_RECOMMENDATION_PREFERENCES_INFERRED_WORKLOAD_TYPES" + }, + { + "value": "InferredWorkloadTypes", + "name": "INFERRED_WORKLOAD_TYPES" + }, + { + "value": "RecommendationOptionsMigrationEffort", + "name": "RECOMMENDATION_OPTIONS_MIGRATION_EFFORT" } ] } @@ -1619,6 +1649,18 @@ { "value": "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", "name": "EFFECTIVE_RECOMMENDATION_PREFERENCES_ENHANCED_INFRASTRUCTURE_METRICS" + }, + { + "value": "EffectiveRecommendationPreferencesInferredWorkloadTypes", + "name": "EFFECTIVE_RECOMMENDATION_PREFERENCES_INFERRED_WORKLOAD_TYPES" + }, + { + "value": "InferredWorkloadTypes", + "name": "INFERRED_WORKLOAD_TYPES" + }, + { + "value": "RecommendationOptionsMigrationEffort", + "name": "RECOMMENDATION_OPTIONS_MIGRATION_EFFORT" } ] } @@ -2440,7 +2482,7 @@ "enhancedInfrastructureMetrics": { "target": "com.amazonaws.computeoptimizer#EnhancedInfrastructureMetrics", "traits": { - "smithy.api#documentation": "

The status of the enhanced infrastructure metrics recommendation preference. Considers\n all applicable preferences that you might have set at the resource, account, and\n organization level.

\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh, and a status of Inactive confirms that it's not yet\n applied.

\n

To validate whether the preference is applied to your last generated set of\n recommendations, review the effectiveRecommendationPreferences value in the\n response of the GetAutoScalingGroupRecommendations and GetEC2InstanceRecommendations actions.

" + "smithy.api#documentation": "

The status of the enhanced infrastructure metrics recommendation preference. Considers\n all applicable preferences that you might have set at the resource, account, and\n organization level.

\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh, and a status of Inactive confirms that it's not yet\n applied to recommendations.

\n

To validate whether the preference is applied to your last generated set of\n recommendations, review the effectiveRecommendationPreferences value in the\n response of the GetAutoScalingGroupRecommendations and GetEC2InstanceRecommendations actions.

\n

For more information, see Enhanced\n infrastructure metrics in the Compute Optimizer User\n Guide.

" } } } @@ -2879,6 +2921,62 @@ "com.amazonaws.computeoptimizer#IncludeMemberAccounts": { "type": "boolean" }, + "com.amazonaws.computeoptimizer#InferredWorkloadType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "AmazonEmr", + "name": "AMAZON_EMR" + }, + { + "value": "ApacheCassandra", + "name": "APACHE_CASSANDRA" + }, + { + "value": "ApacheHadoop", + "name": "APACHE_HADOOP" + }, + { + "value": "Memcached", + "name": "MEMCACHED" + }, + { + "value": "Nginx", + "name": "NGINX" + }, + { + "value": "PostgreSql", + "name": "POSTGRE_SQL" + }, + { + "value": "Redis", + "name": "REDIS" + } + ] + } + }, + "com.amazonaws.computeoptimizer#InferredWorkloadTypes": { + "type": "list", + "member": { + "target": "com.amazonaws.computeoptimizer#InferredWorkloadType" + } + }, + "com.amazonaws.computeoptimizer#InferredWorkloadTypesPreference": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "Active", + "name": "ACTIVE" + }, + { + "value": "Inactive", + "name": "INACTIVE" + } + ] + } + }, "com.amazonaws.computeoptimizer#InstanceArn": { "type": "string" }, @@ -2963,7 +3061,7 @@ "currentPerformanceRisk": { "target": "com.amazonaws.computeoptimizer#CurrentPerformanceRisk", "traits": { - "smithy.api#documentation": "

The risk of the current instance not meeting the performance needs of its workloads.\n The higher the risk, the more likely the current Lambda function requires\n more memory.

" + "smithy.api#documentation": "

The risk of the current instance not meeting the performance needs of its workloads.\n The higher the risk, the more likely the current instance cannot meet the performance\n requirements of its workload.

" } }, "effectiveRecommendationPreferences": { @@ -2971,6 +3069,12 @@ "traits": { "smithy.api#documentation": "

An object that describes the effective recommendation preferences for the\n instance.

" } + }, + "inferredWorkloadTypes": { + "target": "com.amazonaws.computeoptimizer#InferredWorkloadTypes", + "traits": { + "smithy.api#documentation": "

The applications that might be running on the instance as inferred by Compute Optimizer.

\n\n

Compute Optimizer can infer if one of the following applications might be running on\n the instance:

\n\n " + } } }, "traits": { @@ -3092,6 +3196,12 @@ "traits": { "smithy.api#documentation": "

An object that describes the savings opportunity for the instance recommendation\n option. Savings opportunity includes the estimated monthly savings amount and\n percentage.

" } + }, + "migrationEffort": { + "target": "com.amazonaws.computeoptimizer#MigrationEffort", + "traits": { + "smithy.api#documentation": "

The level of effort required to migrate from the current instance type to the\n recommended instance type.

\n\n

For example, the migration effort is Low if Amazon EMR is the\n inferred workload type and an Amazon Web Services Graviton instance type is recommended.\n The migration effort is Medium if a workload type couldn't be inferred but\n an Amazon Web Services Graviton instance type is recommended. The migration effort is\n VeryLow if both the current and recommended instance types are of the\n same CPU architecture.

" + } } }, "traits": { @@ -3408,7 +3518,7 @@ "currentPerformanceRisk": { "target": "com.amazonaws.computeoptimizer#CurrentPerformanceRisk", "traits": { - "smithy.api#documentation": "

The risk of the current Lambda function not meeting the performance needs\n of its workloads. The higher the risk, the more likely the current Lambda\n function configuration is underperforming in its workload.

" + "smithy.api#documentation": "

The risk of the current Lambda function not meeting the performance needs\n of its workloads. The higher the risk, the more likely the current Lambda\n function requires more memory.

" } } }, @@ -3679,6 +3789,29 @@ "target": "com.amazonaws.computeoptimizer#MetricValue" } }, + "com.amazonaws.computeoptimizer#MigrationEffort": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "VeryLow", + "name": "VERY_LOW" + }, + { + "value": "Low", + "name": "LOW" + }, + { + "value": "Medium", + "name": "MEDIUM" + }, + { + "value": "High", + "name": "HIGH" + } + ] + } + }, "com.amazonaws.computeoptimizer#MinSize": { "type": "integer" }, @@ -3858,13 +3991,19 @@ "scope": { "target": "com.amazonaws.computeoptimizer#Scope", "traits": { - "smithy.api#documentation": "

An object that describes the scope of the recommendation preference to create.

\n

You can create recommendation preferences at the organization level (for management\n accounts of an organization only), account level, and resource level. For more\n information, see Activating\n enhanced infrastructure metrics in the Compute Optimizer User\n Guide.

\n \n

You cannot create recommendation preferences for Auto Scaling groups at the\n organization and account levels. You can create recommendation preferences for\n Auto Scaling groups only at the resource level by specifying a scope name\n of ResourceArn and a scope value of the Auto Scaling group Amazon\n Resource Name (ARN). This will configure the preference for all instances that are\n part of the specified the Auto Scaling group.

\n
" + "smithy.api#documentation": "

An object that describes the scope of the recommendation preference to create.

\n

You can create recommendation preferences at the organization level (for management\n accounts of an organization only), account level, and resource level. For more\n information, see Activating\n enhanced infrastructure metrics in the Compute Optimizer User\n Guide.

\n \n

You cannot create recommendation preferences for Auto Scaling groups at the\n organization and account levels. You can create recommendation preferences for\n Auto Scaling groups only at the resource level by specifying a scope name\n of ResourceArn and a scope value of the Auto Scaling group Amazon\n Resource Name (ARN). This will configure the preference for all instances that are\n part of the specified Auto Scaling group. You also cannot create recommendation\n preferences at the resource level for instances that are part of an Auto Scaling group. You can create recommendation preferences at the resource level only for\n standalone instances.

\n
" } }, "enhancedInfrastructureMetrics": { "target": "com.amazonaws.computeoptimizer#EnhancedInfrastructureMetrics", "traits": { - "smithy.api#documentation": "

The status of the enhanced infrastructure metrics recommendation preference to create\n or update.

\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh, and a status of Inactive confirms that it's not yet\n applied.

" + "smithy.api#documentation": "

The status of the enhanced infrastructure metrics recommendation preference to create\n or update.

\n

Specify the Active status to activate the preference, or specify\n Inactive to deactivate the preference.

\n

For more information, see Enhanced\n infrastructure metrics in the Compute Optimizer User\n Guide.

" + } + }, + "inferredWorkloadTypes": { + "target": "com.amazonaws.computeoptimizer#InferredWorkloadTypesPreference", + "traits": { + "smithy.api#documentation": "

The status of the inferred workload types recommendation preference to create or\n update.

\n\n \n

The inferred workload type feature is active by default. To deactivate it, create\n a recommendation preference.

\n
\n\n

Specify the Inactive status to deactivate the feature, or specify\n Active to activate it.

\n\n

For more information, see Inferred workload\n types in the Compute Optimizer User Guide.

" } } } @@ -3971,6 +4110,10 @@ { "value": "EnhancedInfrastructureMetrics", "name": "ENHANCED_INFRASTRUCTURE_METRICS" + }, + { + "value": "InferredWorkloadTypes", + "name": "INFERRED_WORKLOAD_TYPES" } ] } @@ -4013,7 +4156,13 @@ "enhancedInfrastructureMetrics": { "target": "com.amazonaws.computeoptimizer#EnhancedInfrastructureMetrics", "traits": { - "smithy.api#documentation": "

The status of the enhanced infrastructure metrics recommendation preference.

\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh, and a status of Inactive confirms that it's not yet\n applied.

" + "smithy.api#documentation": "

The status of the enhanced infrastructure metrics recommendation preference.

\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh, and a status of Inactive confirms that it's not yet\n applied to recommendations.

\n

For more information, see Enhanced\n infrastructure metrics in the Compute Optimizer User\n Guide.

" + } + }, + "inferredWorkloadTypes": { + "target": "com.amazonaws.computeoptimizer#InferredWorkloadTypesPreference", + "traits": { + "smithy.api#documentation": "

The status of the inferred workload types recommendation preference.

\n\n

A status of Active confirms that the preference is applied in the latest\n recommendation refresh. A status of Inactive confirms that it's not yet\n applied to recommendations.

" } } }, @@ -4193,6 +4342,10 @@ { "value": "LambdaFunction", "name": "LAMBDA_FUNCTION" + }, + { + "value": "NotApplicable", + "name": "NOT_APPLICABLE" } ] } @@ -4249,13 +4402,13 @@ "savingsOpportunityPercentage": { "target": "com.amazonaws.computeoptimizer#SavingsOpportunityPercentage", "traits": { - "smithy.api#documentation": "

The estimated monthly savings possible as a percentage of monthly cost.

" + "smithy.api#documentation": "

The estimated monthly savings possible as a percentage of monthly cost by adopting\n Compute Optimizer recommendations for a given resource.

" } }, "estimatedMonthlySavings": { "target": "com.amazonaws.computeoptimizer#EstimatedMonthlySavings", "traits": { - "smithy.api#documentation": "

An object that describes the estimated monthly savings amount possible based on\n On-Demand instance pricing.

" + "smithy.api#documentation": "

An object that describes the estimated monthly savings amount possible, based on\n On-Demand instance pricing, by adopting Compute Optimizer recommendations for a given\n resource.

" } } }, @@ -4283,7 +4436,7 @@ } }, "traits": { - "smithy.api#documentation": "

Describes the scope of a recommendation preference.

\n

Recommendation preferences can be created at the organization level (for management\n accounts of an organization only), account level, and resource level. For more\n information, see Activating\n enhanced infrastructure metrics in the Compute Optimizer User\n Guide.

\n \n

You cannot create recommendation preferences for Auto Scaling groups at the\n organization and account levels. You can create recommendation preferences for\n Auto Scaling groups only at the resource level by specifying a scope name\n of ResourceArn and a scope value of the Auto Scaling group Amazon\n Resource Name (ARN). This will configure the preference for all instances that are\n part of the specified the Auto Scaling group.

\n
" + "smithy.api#documentation": "

Describes the scope of a recommendation preference.

\n

Recommendation preferences can be created at the organization level (for management\n accounts of an organization only), account level, and resource level. For more\n information, see Activating\n enhanced infrastructure metrics in the Compute Optimizer User\n Guide.

\n \n

You cannot create recommendation preferences for Auto Scaling groups at the\n organization and account levels. You can create recommendation preferences for\n Auto Scaling groups only at the resource level by specifying a scope name\n of ResourceArn and a scope value of the Auto Scaling group Amazon\n Resource Name (ARN). This will configure the preference for all instances that are\n part of the specified Auto Scaling group. You also cannot create recommendation\n preferences at the resource level for instances that are part of an Auto Scaling group. You can create recommendation preferences at the resource level only for\n standalone instances.

\n
" } }, "com.amazonaws.computeoptimizer#ScopeName": { diff --git a/codegen/sdk-codegen/aws-models/costexplorer.2017-10-25.json b/codegen/sdk-codegen/aws-models/costexplorer.2017-10-25.json index 0554e8bffb9..9390d61ddcb 100644 --- a/codegen/sdk-codegen/aws-models/costexplorer.2017-10-25.json +++ b/codegen/sdk-codegen/aws-models/costexplorer.2017-10-25.json @@ -31,6 +31,21 @@ "shapes": { "com.amazonaws.costexplorer#AWSInsightsIndexService": { "type": "service", + "traits": { + "aws.api#service": { + "sdkId": "Cost Explorer", + "arnNamespace": "ce", + "cloudFormationName": "CostExplorer", + "cloudTrailEventSource": "costexplorer.amazonaws.com", + "endpointPrefix": "ce" + }, + "aws.auth#sigv4": { + "name": "ce" + }, + "aws.protocols#awsJson1_1": {}, + "smithy.api#documentation": "

You can use the Cost Explorer API to programmatically query your cost and usage data. You\n can query for aggregated data such as total monthly costs or total daily usage. You can also\n query for granular data. This might include the number of daily write operations for Amazon\n DynamoDB database tables in your production environment.

\n\t\t

Service Endpoint

\n\t\t

The Cost Explorer API provides the following endpoint:

\n\t\t \n\t\t

For information about the costs that are associated with the Cost Explorer API, see\n Amazon Web Services Cost\n Management Pricing.

", + "smithy.api#title": "AWS Cost Explorer Service" + }, "version": "2017-10-25", "operations": [ { @@ -123,22 +138,7 @@ { "target": "com.amazonaws.costexplorer#UpdateCostCategoryDefinition" } - ], - "traits": { - "aws.api#service": { - "sdkId": "Cost Explorer", - "arnNamespace": "ce", - "cloudFormationName": "CostExplorer", - "cloudTrailEventSource": "costexplorer.amazonaws.com", - "endpointPrefix": "ce" - }, - "aws.auth#sigv4": { - "name": "ce" - }, - "aws.protocols#awsJson1_1": {}, - "smithy.api#documentation": "

You can use the Cost Explorer API to programmatically query your cost and usage data. You\n can query for aggregated data such as total monthly costs or total daily usage. You can also\n query for granular data. This might include the number of daily write operations for Amazon\n DynamoDB database tables in your production environment.

\n\t\t

Service Endpoint

\n\t\t

The Cost Explorer API provides the following endpoint:

\n\t\t \n\t\t

For information about the costs that are associated with the Cost Explorer API, see\n Amazon Web Services Cost\n Management Pricing.

", - "smithy.api#title": "AWS Cost Explorer Service" - } + ] }, "com.amazonaws.costexplorer#AccountScope": { "type": "string", @@ -2002,7 +2002,7 @@ } }, "traits": { - "smithy.api#documentation": "

Details about the Amazon ES instances that Amazon Web Services recommends that you\n purchase.

" + "smithy.api#documentation": "

Details about the Amazon OpenSearch Service instances that Amazon Web Services recommends that you\n purchase.

" } }, "com.amazonaws.costexplorer#ElastiCacheInstanceDetails": { @@ -2502,7 +2502,7 @@ "Filter": { "target": "com.amazonaws.costexplorer#Expression", "traits": { - "smithy.api#documentation": "

Filters Amazon Web Services costs by different dimensions. For example, you can specify SERVICE and LINKED_ACCOUNT \n\t\t\tand get the costs that are associated with that account's usage of that service. You can nest Expression objects \n\t\t\tto define any combination of dimension filters. For more information, see \n\t\t\tExpression.

" + "smithy.api#documentation": "

Filters Amazon Web Services costs by different dimensions. For example, you can specify SERVICE and LINKED_ACCOUNT \n\t\t\tand get the costs that are associated with that account's usage of that service. You can nest Expression objects \n\t\t\tto define any combination of dimension filters. For more information, see \n\t\t\tExpression.

\n\t

The default values are EQUALS and CASE_SENSITIVE. Valid values for MatchOptions for Dimensions are EQUALS and CASE_SENSITIVE.

\n\t

Valid values for MatchOptions for CostCategories and Tags are EQUALS, ABSENT, and CASE_SENSITIVE.

" } }, "Metrics": { @@ -2604,7 +2604,7 @@ "Filter": { "target": "com.amazonaws.costexplorer#Expression", "traits": { - "smithy.api#documentation": "

Filters Amazon Web Services costs by different dimensions. For example, you can specify\n SERVICE and LINKED_ACCOUNT and get the costs that are associated\n with that account's usage of that service. You can nest Expression objects to\n define any combination of dimension filters. For more information, see Expression.

\n

The GetCostAndUsageWithResources operation requires that you either group by or filter by a\n ResourceId. It requires the Expression \n \"SERVICE = Amazon Elastic Compute Cloud - Compute\" in the filter.

", + "smithy.api#documentation": "

Filters Amazon Web Services costs by different dimensions. For example, you can specify\n SERVICE and LINKED_ACCOUNT and get the costs that are associated\n with that account's usage of that service. You can nest Expression objects to\n define any combination of dimension filters. For more information, see Expression.

\n

The GetCostAndUsageWithResources operation requires that you either group by or filter by a\n ResourceId. It requires the Expression \n \"SERVICE = Amazon Elastic Compute Cloud - Compute\" in the filter.

\n

The default values are EQUALS and CASE_SENSITIVE. Valid values for MatchOptions for Dimensions are EQUALS and CASE_SENSITIVE.

\n

Valid values for MatchOptions for CostCategories and Tags are EQUALS, ABSENT, and CASE_SENSITIVE.

", "smithy.api#required": {} } }, @@ -2887,7 +2887,7 @@ "Dimension": { "target": "com.amazonaws.costexplorer#Dimension", "traits": { - "smithy.api#documentation": "

The name of the dimension. Each Dimension is available for a different Context. \n\t\t\tFor more information, see Context. \n\t\t\t\n\t\t

", + "smithy.api#documentation": "

The name of the dimension. Each Dimension is available for a different Context. \n\t\t For more information, see Context. \n\t\t\t\n\t\t

", "smithy.api#required": {} } }, @@ -3000,7 +3000,7 @@ "Filter": { "target": "com.amazonaws.costexplorer#Expression", "traits": { - "smithy.api#documentation": "

Filters utilization data by dimensions. You can filter by the following dimensions:

\n\t\t \n\t\t

\n GetReservationCoverage uses the same \n\t\t\tExpression object \n\t\t\tas the other operations, but only AND is supported among each dimension. You can nest only one level deep. \n\t\t\tIf there are multiple values for a dimension, they are OR'd together.

\n\t\t

If you don't provide a SERVICE filter, Cost Explorer defaults to EC2.

\n\t

Cost category is also supported.

" + "smithy.api#documentation": "

Filters utilization data by dimensions. You can filter by the following dimensions:

\n\t\t \n\t\t

\n GetReservationCoverage uses the same \n\t\t\tExpression object \n\t\t\tas the other operations, but only AND is supported among each dimension. You can nest only one level deep.

\n\t\t

If you don't provide a SERVICE filter, Cost Explorer defaults to EC2.

\n\t

Cost category is also supported.

" } }, "Metrics": { @@ -3214,7 +3214,7 @@ "Filter": { "target": "com.amazonaws.costexplorer#Expression", "traits": { - "smithy.api#documentation": "

Filters utilization data by dimensions. You can filter by the following dimensions:

\n\t\t \n\t\t

\n GetReservationUtilization uses the same \n\t\t\tExpression object \n\t\t\tas the other operations, but only AND is supported among each dimension, and nesting is supported up to \n\t\t\tonly one level deep. If there are multiple values for a dimension, they are OR'd together.

" + "smithy.api#documentation": "

Filters utilization data by dimensions. You can filter by the following dimensions:

\n\t\t \n\t\t

\n GetReservationUtilization uses the same \n\t\t\tExpression object \n\t\t\tas the other operations, but only AND is supported among each dimension, and nesting is supported up to \n\t\t\tonly one level deep.

" } }, "SortBy": { @@ -3370,7 +3370,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the Savings Plans covered for your account. This enables you to see how much of your cost is covered by a Savings Plan. An organization’s management account can see the coverage of the associated member accounts. This supports dimensions, Cost Categories, and nested expressions. For any time period, you can filter data for Savings Plans usage with the following dimensions:

\n\t \n\t

To determine valid values for a dimension, use the GetDimensionValues operation.

", + "smithy.api#documentation": "

Retrieves the Savings Plans covered for your account. This enables you to see how much of your cost is covered by a Savings Plan. An organization’s management account can see the coverage of the associated member accounts. This supports dimensions, Cost Categories, and nested expressions. For any time period, you can filter data for Savings Plans usage with the following dimensions:

\n\t \n \n

\n GetSavingsPlansCoverage doesn't support filtering by tags. GetSavingsPlansCoverage also doesn't support the OR operator between filter dimensions. For the full request syntax with supported parameters, see Examples.

\n
\n\t

To determine valid values for a dimension, use the GetDimensionValues operation.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -3403,7 +3403,7 @@ "Filter": { "target": "com.amazonaws.costexplorer#Expression", "traits": { - "smithy.api#documentation": "

Filters Savings Plans coverage data by dimensions. You can filter data for Savings Plans usage with the following dimensions:

\n \n

\n GetSavingsPlansCoverage uses the same \n Expression object \n as the other operations, but only AND is supported among each dimension. If there are multiple values for a dimension, they are OR'd together.

\n

Cost category is also supported.

" + "smithy.api#documentation": "

Filters Savings Plans coverage data by dimensions. You can filter data for Savings Plans usage with the following dimensions:

\n \n

\n GetSavingsPlansCoverage uses the same \n Expression object \n as the other operations, but only AND is supported among each dimension.

\n

Cost category is supported. Tags are not supported.

" } }, "Metrics": { @@ -3568,7 +3568,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the Savings Plans utilization for your account across date ranges with daily or monthly granularity. Management account in an organization have access to member accounts. You can use GetDimensionValues in SAVINGS_PLANS to determine the possible dimension values.

\n\t \n

You cannot group by any dimension values for GetSavingsPlansUtilization.

\n
" + "smithy.api#documentation": "

Retrieves the Savings Plans utilization for your account across date ranges with daily or monthly granularity. Management account in an organization have access to member accounts. You can use GetDimensionValues in SAVINGS_PLANS to determine the possible dimension values.

\n\t \n

You cannot group by any dimension values for GetSavingsPlansUtilization.

\n

\n GetSavingsPlansUtilization doesn't support filtering by tags. GetSavingsPlansUtilization also doesn't support the OR operator between filter dimensions. For the full request syntax with supported parameters, see Examples.

\n
" } }, "com.amazonaws.costexplorer#GetSavingsPlansUtilizationDetails": { @@ -3591,7 +3591,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves attribute data along with aggregate utilization and savings data for a given time period. This doesn't support granular or grouped data (daily/monthly) in response. You can't retrieve data by dates in a single response similar to GetSavingsPlanUtilization, but you have the option to make multiple calls to GetSavingsPlanUtilizationDetails by providing individual dates. You can use GetDimensionValues in SAVINGS_PLANS to determine the possible dimension values.

\n\t \n

\n GetSavingsPlanUtilizationDetails internally groups data by SavingsPlansArn.

\n
", + "smithy.api#documentation": "

Retrieves attribute data along with aggregate utilization and savings data for a given time period. This doesn't support granular or grouped data (daily/monthly) in response. You can't retrieve data by dates in a single response similar to GetSavingsPlanUtilization, but you have the option to make multiple calls to GetSavingsPlanUtilizationDetails by providing individual dates. You can use GetDimensionValues in SAVINGS_PLANS to determine the possible dimension values.

\n\t \n

\n GetSavingsPlanUtilizationDetails internally groups data by SavingsPlansArn.

\n\t

\n GetSavingsPlansUtilizationDetails doesn't support filtering by tags. GetSavingsPlansUtilizationDetails also doesn't support the OR operator between filter dimensions. For the full request syntax with supported parameters, see Examples.

\n
", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -3612,7 +3612,7 @@ "Filter": { "target": "com.amazonaws.costexplorer#Expression", "traits": { - "smithy.api#documentation": "

Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:

\n \n

\n GetSavingsPlansUtilizationDetails uses the same \n Expression object \n as the other operations, but only AND is supported among each dimension.

" + "smithy.api#documentation": "

Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:

\n \n

\n GetSavingsPlansUtilizationDetails uses the same \n Expression object \n as the other operations, but only AND is supported among each dimension.

\n

Filtering by tags isn't supported.

" } }, "DataType": { @@ -3691,7 +3691,7 @@ "Filter": { "target": "com.amazonaws.costexplorer#Expression", "traits": { - "smithy.api#documentation": "

Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:

\n \n

\n GetSavingsPlansUtilization uses the same \n Expression object \n as the other operations, but only AND is supported among each dimension.

" + "smithy.api#documentation": "

Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:

\n \n

\n GetSavingsPlansUtilization uses the same \n Expression object \n as the other operations, but only AND is supported among each dimension.

\n

Filtering by tags isn't supported.

" } }, "SortBy": { @@ -4055,7 +4055,7 @@ "ESInstanceDetails": { "target": "com.amazonaws.costexplorer#ESInstanceDetails", "traits": { - "smithy.api#documentation": "

The Amazon ES instances that Amazon Web Services recommends that you purchase.

" + "smithy.api#documentation": "

The Amazon OpenSearch Service instances that Amazon Web Services recommends that you purchase.

" } } }, diff --git a/codegen/sdk-codegen/aws-models/databrew.2017-07-25.json b/codegen/sdk-codegen/aws-models/databrew.2017-07-25.json index 6f229cd56c7..fd4bc1a6bcd 100644 --- a/codegen/sdk-codegen/aws-models/databrew.2017-07-25.json +++ b/codegen/sdk-codegen/aws-models/databrew.2017-07-25.json @@ -341,6 +341,16 @@ } } }, + "com.amazonaws.databrew#BucketOwner": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 12, + "max": 12 + }, + "smithy.api#pattern": "^[0-9]{12}$" + } + }, "com.amazonaws.databrew#CatalogId": { "type": "string", "traits": { @@ -5082,7 +5092,7 @@ "CheckExpression": { "target": "com.amazonaws.databrew#Expression", "traits": { - "smithy.api#documentation": "

The expression which includes column references, condition names followed by \n variable references, possibly grouped and combined with other conditions. For \n example, (:col1 starts_with :prefix1 or :col1 starts_with :prefix2) and \n (:col1 ends_with :suffix1 or :col1 ends_with :suffix2). Column and value \n references are substitution variables that should start with the ':' symbol.\n Depending on the context, substitution variables' values can be either an actual \n value or a column name. These values are defined in the SubstitutionMap.\n If a CheckExpression starts with a column reference, then ColumnSelectors in the \n rule should be null. If ColumnSelectors has been defined, then there should be no\n columnn reference in the left side of a condition, for example, \n is_between :val1 and :val2.

", + "smithy.api#documentation": "

The expression which includes column references, condition names followed by \n variable references, possibly grouped and combined with other conditions. For \n example, (:col1 starts_with :prefix1 or :col1 starts_with :prefix2) and \n (:col1 ends_with :suffix1 or :col1 ends_with :suffix2). Column and value \n references are substitution variables that should start with the ':' symbol.\n Depending on the context, substitution variables' values can be either an actual \n value or a column name. These values are defined in the SubstitutionMap.\n If a CheckExpression starts with a column reference, then ColumnSelectors in the \n rule should be null. If ColumnSelectors has been defined, then there should be no\n columnn reference in the left side of a condition, for example, \n is_between :val1 and :val2.

\n

For more information, see Available checks\n

", "smithy.api#required": {} } }, @@ -5252,10 +5262,16 @@ "traits": { "smithy.api#documentation": "

The unique name of the object in the bucket.

" } + }, + "BucketOwner": { + "target": "com.amazonaws.databrew#BucketOwner", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the bucket owner.

" + } } }, "traits": { - "smithy.api#documentation": "

Represents an Amazon S3 location (bucket name and object key) where DataBrew can read\n input data, or write output from a job.

" + "smithy.api#documentation": "

Represents an Amazon S3 location (bucket name, bucket owner, and object key) where DataBrew can read\n input data, or write output from a job.

" } }, "com.amazonaws.databrew#S3TableOutputOptions": { diff --git a/codegen/sdk-codegen/aws-models/ec2.2016-11-15.json b/codegen/sdk-codegen/aws-models/ec2.2016-11-15.json index ccb5cebcf41..bcb123aa5ec 100644 --- a/codegen/sdk-codegen/aws-models/ec2.2016-11-15.json +++ b/codegen/sdk-codegen/aws-models/ec2.2016-11-15.json @@ -1600,7 +1600,7 @@ "name": "ec2" }, "aws.protocols#ec2Query": {}, - "smithy.api#documentation": "Amazon Elastic Compute Cloud\n

Amazon Elastic Compute Cloud (Amazon EC2) provides secure and resizable computing capacity in the AWS Cloud. \n Using Amazon EC2 eliminates the need to invest in hardware up front, so you can develop and deploy applications \n faster. Amazon Virtual Private Cloud (Amazon VPC) enables you to provision a logically isolated section of the \n AWS Cloud where you can launch AWS resources in a virtual network that you've defined. Amazon Elastic Block Store \n (Amazon EBS) provides block level storage volumes for use with EC2 instances. EBS volumes are highly available \n and reliable storage volumes that can be attached to any running instance and used like a hard drive.

\n

To learn more, see the following resources:

\n ", + "smithy.api#documentation": "Amazon Elastic Compute Cloud\n

Amazon Elastic Compute Cloud (Amazon EC2) provides secure and resizable computing capacity in the Amazon Web Services Cloud. \n Using Amazon EC2 eliminates the need to invest in hardware up front, so you can develop and deploy applications \n faster. Amazon Virtual Private Cloud (Amazon VPC) enables you to provision a logically isolated section of the \n Amazon Web Services Cloud where you can launch Amazon Web Services resources in a virtual network that you've defined. Amazon Elastic Block Store \n (Amazon EBS) provides block level storage volumes for use with EC2 instances. EBS volumes are highly available \n and reliable storage volumes that can be attached to any running instance and used like a hard drive.

\n

To learn more, see the following resources:

\n ", "smithy.api#title": "Amazon Elastic Compute Cloud", "smithy.api#xmlNamespace": { "uri": "http://ec2.amazonaws.com/doc/2016-11-15" @@ -2238,6 +2238,9 @@ { "target": "com.amazonaws.ec2#DescribeExportTasks" }, + { + "target": "com.amazonaws.ec2#DescribeFastLaunchImages" + }, { "target": "com.amazonaws.ec2#DescribeFastSnapshotRestores" }, @@ -2580,6 +2583,9 @@ { "target": "com.amazonaws.ec2#DisableEbsEncryptionByDefault" }, + { + "target": "com.amazonaws.ec2#DisableFastLaunch" + }, { "target": "com.amazonaws.ec2#DisableFastSnapshotRestores" }, @@ -2640,6 +2646,9 @@ { "target": "com.amazonaws.ec2#EnableEbsEncryptionByDefault" }, + { + "target": "com.amazonaws.ec2#EnableFastLaunch" + }, { "target": "com.amazonaws.ec2#EnableFastSnapshotRestores" }, @@ -6134,7 +6143,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -6461,7 +6470,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -7232,6 +7241,14 @@ "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet to which the Capacity Reservation belongs. \n\t\t\tOnly valid for Capacity Reservations that were created by a Capacity Reservation Fleet.

", "smithy.api#xmlName": "capacityReservationFleetId" } + }, + "PlacementGroupArn": { + "target": "com.amazonaws.ec2#PlacementGroupArn", + "traits": { + "aws.protocols#ec2QueryName": "PlacementGroupArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the cluster placement group in which \n\t\t\tthe Capacity Reservation was created. For more information, see \n\t\t\t\n\t\t\t\tCapacity Reservations for cluster placement groups in the \n\t\t\tAmazon EC2 User Guide.

", + "smithy.api#xmlName": "placementGroupArn" + } } }, "traits": { @@ -7539,6 +7556,30 @@ { "value": "Linux with SQL Server Enterprise", "name": "LINUX_WITH_SQL_SERVER_ENTERPRISE" + }, + { + "value": "RHEL with SQL Server Standard", + "name": "RHEL_WITH_SQL_SERVER_STANDARD" + }, + { + "value": "RHEL with SQL Server Enterprise", + "name": "RHEL_WITH_SQL_SERVER_ENTERPRISE" + }, + { + "value": "RHEL with SQL Server Web", + "name": "RHEL_WITH_SQL_SERVER_WEB" + }, + { + "value": "RHEL with HA", + "name": "RHEL_WITH_HA" + }, + { + "value": "RHEL with HA and SQL Server Standard", + "name": "RHEL_WITH_HA_AND_SQL_SERVER_STANDARD" + }, + { + "value": "RHEL with HA and SQL Server Enterprise", + "name": "RHEL_WITH_HA_AND_SQL_SERVER_ENTERPRISE" } ] } @@ -9509,7 +9550,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -10022,6 +10063,12 @@ "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost on which to create the Capacity Reservation.

" } + }, + "PlacementGroupArn": { + "target": "com.amazonaws.ec2#PlacementGroupArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the cluster placement group in which \n\t\t\tto create the Capacity Reservation. For more information, see \n\t\t\t\n\t\t\t\tCapacity Reservations for cluster placement groups in the \n\t\t\tAmazon EC2 User Guide.

" + } } } }, @@ -10776,7 +10823,7 @@ "Type": { "target": "com.amazonaws.ec2#FleetType", "traits": { - "smithy.api#documentation": "

The fleet type. The default value is maintain.

\n \n

For more information, see EC2 Fleet\n request types in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

The fleet type. The default value is maintain.

\n \n

For more information, see EC2 Fleet\n request types in the Amazon EC2 User Guide.

" } }, "ValidFrom": { @@ -11087,7 +11134,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, @@ -12293,14 +12340,14 @@ } }, "Source": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NetworkInsightsResourceId", "traits": { "smithy.api#documentation": "

The Amazon Web Services resource that is the source of the path.

", "smithy.api#required": {} } }, "Destination": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NetworkInsightsResourceId", "traits": { "smithy.api#documentation": "

The Amazon Web Services resource that is the destination of the path.

", "smithy.api#required": {} @@ -12530,7 +12577,7 @@ "InterfaceType": { "target": "com.amazonaws.ec2#NetworkInterfaceCreationType", "traits": { - "smithy.api#documentation": "

Indicates the type of network interface. To create an Elastic Fabric Adapter (EFA), specify \n\t\t\tefa. For more information, see \n\t\t\t Elastic Fabric Adapter in the Amazon Elastic Compute Cloud User Guide. To create a trunk network interface, specify \n\t\t efa. For more information, see \n\t\t Network interface trunking in the Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#documentation": "

Indicates the type of network interface. To create an Elastic Fabric Adapter (EFA), specify \n\t\t\tefa. For more information, see \n\t\t\t Elastic Fabric Adapter in the Amazon Elastic Compute Cloud User Guide. To create a trunk network interface, specify \n\t\t trunk.

" } }, "SubnetId": { @@ -12874,7 +12921,7 @@ "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } } @@ -13386,7 +13433,7 @@ "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } } @@ -18676,7 +18723,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -18865,7 +18912,7 @@ "target": "com.amazonaws.ec2#DescribeAccountAttributesResult" }, "traits": { - "smithy.api#documentation": "

Describes attributes of your AWS account. The following are the supported account attributes:

\n " + "smithy.api#documentation": "

Describes attributes of your Amazon Web Services account. The following are the supported account attributes:

\n " } }, "com.amazonaws.ec2#DescribeAccountAttributesRequest": { @@ -19205,7 +19252,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -19433,7 +19480,7 @@ "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n\t \t ", + "smithy.api#documentation": "

One or more filters.

\n\t \t ", "smithy.api#xmlName": "Filter" } }, @@ -20778,6 +20825,181 @@ } } }, + "com.amazonaws.ec2#DescribeFastLaunchImages": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesResult" + }, + "traits": { + "smithy.api#documentation": "

Describe details for Windows AMIs that are configured for faster launching.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "FastLaunchImages", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeFastLaunchImagesRequest": { + "type": "structure", + "members": { + "ImageIds": { + "target": "com.amazonaws.ec2#FastLaunchImageIdList", + "traits": { + "smithy.api#documentation": "

Details for one or more Windows AMI image IDs.

", + "smithy.api#xmlName": "ImageId" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

Use the following filters to streamline results.

\n\t\t ", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesRequestMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining results, \n\t\t\tmake another request with the returned NextToken value. If this parameter is not specified, \n\t\t\tthen all results are returned.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + } + }, + "com.amazonaws.ec2#DescribeFastLaunchImagesRequestMaxResults": { + "type": "integer", + "traits": { + "smithy.api#box": {}, + "smithy.api#range": { + "min": 0, + "max": 200 + } + } + }, + "com.amazonaws.ec2#DescribeFastLaunchImagesResult": { + "type": "structure", + "members": { + "FastLaunchImages": { + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessSet", + "traits": { + "aws.protocols#ec2QueryName": "FastLaunchImageSet", + "smithy.api#documentation": "

A collection of details about the fast-launch enabled Windows images that meet \n\t\t\tthe requested criteria.

", + "smithy.api#xmlName": "fastLaunchImageSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use for the next set of results. This value is null when there are \n\t\t\tno more results to return.

", + "smithy.api#xmlName": "nextToken" + } + } + } + }, + "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessItem": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The image ID that identifies the fast-launch enabled Windows image.

", + "smithy.api#xmlName": "imageId" + } + }, + "ResourceType": { + "target": "com.amazonaws.ec2#FastLaunchResourceType", + "traits": { + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The resource type that is used for pre-provisioning the Windows AMI. Supported values \n\t\t\tinclude: snapshot.

", + "smithy.api#xmlName": "resourceType" + } + }, + "SnapshotConfiguration": { + "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotConfiguration", + "smithy.api#documentation": "

A group of parameters that are used for pre-provisioning the associated \n\t\t\tWindows AMI using snapshots.

", + "smithy.api#xmlName": "snapshotConfiguration" + } + }, + "LaunchTemplate": { + "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

The launch template that the fast-launch enabled Windows AMI uses when it launches \n\t\t\tWindows instances from pre-provisioned snapshots.

", + "smithy.api#xmlName": "launchTemplate" + } + }, + "MaxParallelLaunches": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxParallelLaunches", + "smithy.api#documentation": "

The maximum number of parallel instances that are launched for creating resources.

", + "smithy.api#xmlName": "maxParallelLaunches" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The owner ID for the fast-launch enabled Windows AMI.

", + "smithy.api#xmlName": "ownerId" + } + }, + "State": { + "target": "com.amazonaws.ec2#FastLaunchStateCode", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of faster launching for the specified Windows AMI.

", + "smithy.api#xmlName": "state" + } + }, + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason that faster launching for the Windows AMI changed to the current state.

", + "smithy.api#xmlName": "stateTransitionReason" + } + }, + "StateTransitionTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionTime", + "smithy.api#documentation": "

The time that faster launching for the Windows AMI changed to the current state.

", + "smithy.api#xmlName": "stateTransitionTime" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describe details about a fast-launch enabled Windows image that meets the requested \n\t\t\tcriteria. Criteria are defined by the DescribeFastLaunchImages action filters.

" + } + }, + "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessItem": { "type": "structure", "members": { @@ -21967,7 +22189,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -22080,7 +22302,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -23577,7 +23799,7 @@ "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } } @@ -25204,7 +25426,7 @@ "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, @@ -26601,7 +26823,7 @@ "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, @@ -27400,7 +27622,7 @@ "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsResult" }, "traits": { - "smithy.api#documentation": "

[VPC only] Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in a peer VPC, or a security group in a peer VPC for which the VPC peering connection has been deleted.

", + "smithy.api#documentation": "

[VPC only] Describes the stale security group rules for security groups in a specified VPC. \n Rules are stale when they reference a deleted security group in the same VPC or in a peer VPC, \n or if they reference a security group in a peer VPC for which the VPC peering connection has \n been deleted.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -27509,7 +27731,7 @@ "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, "Filters": { @@ -30618,6 +30840,119 @@ } } }, + "com.amazonaws.ec2#DisableFastLaunch": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableFastLaunchRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableFastLaunchResult" + }, + "traits": { + "smithy.api#documentation": "

Discontinue faster launching for a Windows AMI, and clean up existing pre-provisioned snapshots. \n\t\t\tWhen you disable faster launching, the AMI uses the standard launch process for each \n\t\t\tinstance. All pre-provisioned snapshots must be removed before you can enable faster launching again.

" + } + }, + "com.amazonaws.ec2#DisableFastLaunchRequest": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#documentation": "

The ID of the image for which you’re turning off faster launching, and removing pre-provisioned snapshots.

", + "smithy.api#required": {} + } + }, + "Force": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Forces the image settings to turn off faster launching for your Windows AMI. This parameter overrides \n\t\t\tany errors that are encountered while cleaning up resources in your account.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + } + }, + "com.amazonaws.ec2#DisableFastLaunchResult": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the image for which faster-launching has been turned off.

", + "smithy.api#xmlName": "imageId" + } + }, + "ResourceType": { + "target": "com.amazonaws.ec2#FastLaunchResourceType", + "traits": { + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The pre-provisioning resource type that must be cleaned after turning off faster launching \n\t\t\tfor the Windows AMI. Supported values include: snapshot.

", + "smithy.api#xmlName": "resourceType" + } + }, + "SnapshotConfiguration": { + "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotConfiguration", + "smithy.api#documentation": "

Parameters that were used for faster launching for the Windows AMI before \n\t\t\tfaster launching was turned off. This informs the clean-up process.

", + "smithy.api#xmlName": "snapshotConfiguration" + } + }, + "LaunchTemplate": { + "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

The launch template that was used to launch Windows instances from pre-provisioned snapshots.

", + "smithy.api#xmlName": "launchTemplate" + } + }, + "MaxParallelLaunches": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxParallelLaunches", + "smithy.api#documentation": "

The maximum number of parallel instances to launch for creating resources.

", + "smithy.api#xmlName": "maxParallelLaunches" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The owner of the Windows AMI for which faster launching was turned off.

", + "smithy.api#xmlName": "ownerId" + } + }, + "State": { + "target": "com.amazonaws.ec2#FastLaunchStateCode", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of faster launching for the specified Windows AMI.

", + "smithy.api#xmlName": "state" + } + }, + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason that the state changed for faster launching for the Windows AMI.

", + "smithy.api#xmlName": "stateTransitionReason" + } + }, + "StateTransitionTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionTime", + "smithy.api#documentation": "

The time that the state changed for faster launching for the Windows AMI.

", + "smithy.api#xmlName": "stateTransitionTime" + } + } + } + }, "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorItem": { "type": "structure", "members": { @@ -30898,7 +31233,7 @@ "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } } @@ -32767,6 +33102,137 @@ } } }, + "com.amazonaws.ec2#EnableFastLaunch": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#EnableFastLaunchRequest" + }, + "output": { + "target": "com.amazonaws.ec2#EnableFastLaunchResult" + }, + "traits": { + "smithy.api#documentation": "

When you enable faster launching for a Windows AMI, images are pre-provisioned, \n\t\t\tusing snapshots to launch instances up to 65% faster. To create the optimized Windows \n\t\t\timage, Amazon EC2 launches an instance and runs through Sysprep steps, rebooting as required. \n\t\t\tThen it creates a set of reserved snapshots that are used for subsequent launches. The \n\t\t\treserved snapshots are automatically replenished as they are used, depending on your \n\t\t\tsettings for launch frequency.

" + } + }, + "com.amazonaws.ec2#EnableFastLaunchRequest": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#documentation": "

The ID of the image for which you’re enabling faster launching.

", + "smithy.api#required": {} + } + }, + "ResourceType": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The type of resource to use for pre-provisioning the Windows AMI for faster launching. \n\t\t\tSupported values include: snapshot, which is the default value.

" + } + }, + "SnapshotConfiguration": { + "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationRequest", + "traits": { + "smithy.api#documentation": "

Configuration settings for creating and managing the snapshots that are used for \n\t\t\tpre-provisioning the Windows AMI for faster launching. The associated ResourceType \n\t\t\tmust be snapshot.

" + } + }, + "LaunchTemplate": { + "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The launch template to use when launching Windows instances from pre-provisioned \n\t\t\tsnapshots. Launch template parameters can include either the name or ID of the launch \n\t\t\ttemplate, but not both.

" + } + }, + "MaxParallelLaunches": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of parallel instances to launch for creating resources.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + } + }, + "com.amazonaws.ec2#EnableFastLaunchResult": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The image ID that identifies the Windows AMI for which faster launching was enabled.

", + "smithy.api#xmlName": "imageId" + } + }, + "ResourceType": { + "target": "com.amazonaws.ec2#FastLaunchResourceType", + "traits": { + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The type of resource that was defined for pre-provisioning the Windows AMI for faster launching.

", + "smithy.api#xmlName": "resourceType" + } + }, + "SnapshotConfiguration": { + "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotConfiguration", + "smithy.api#documentation": "

The configuration settings that were defined for creating and managing the pre-provisioned snapshots \n\t\t\tfor faster launching of the Windows AMI. This property is returned when the associated \n\t\t\tresourceType is snapshot.

", + "smithy.api#xmlName": "snapshotConfiguration" + } + }, + "LaunchTemplate": { + "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

The launch template that is used when launching Windows instances from pre-provisioned snapshots.

", + "smithy.api#xmlName": "launchTemplate" + } + }, + "MaxParallelLaunches": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxParallelLaunches", + "smithy.api#documentation": "

The maximum number of parallel instances to launch for creating resources.

", + "smithy.api#xmlName": "maxParallelLaunches" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The owner ID for the Windows AMI for which faster launching was enabled.

", + "smithy.api#xmlName": "ownerId" + } + }, + "State": { + "target": "com.amazonaws.ec2#FastLaunchStateCode", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of faster launching for the specified Windows AMI.

", + "smithy.api#xmlName": "state" + } + }, + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason that the state changed for faster launching for the Windows AMI.

", + "smithy.api#xmlName": "stateTransitionReason" + } + }, + "StateTransitionTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionTime", + "smithy.api#documentation": "

The time that the state changed for faster launching for the Windows AMI.

", + "smithy.api#xmlName": "stateTransitionTime" + } + } + } + }, "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorItem": { "type": "structure", "members": { @@ -33054,7 +33520,7 @@ "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } } @@ -34669,6 +35135,146 @@ } } }, + "com.amazonaws.ec2#FastLaunchImageIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#xmlName": "ImageId" + } + } + }, + "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationRequest": { + "type": "structure", + "members": { + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", + "traits": { + "smithy.api#documentation": "

The ID of the launch template to use for faster launching for a Windows AMI.

" + } + }, + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The name of the launch template to use for faster launching for a Windows AMI.

" + } + }, + "Version": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The version of the launch template to use for faster launching for a Windows AMI.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Request to create a launch template for a fast-launch enabled Windows AMI.

\n\t\t \n\t\t\t

Note - You can specify either the LaunchTemplateName or the \n\t\t\t\tLaunchTemplateId, but not both.

\n\t\t
" + } + }, + "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse": { + "type": "structure", + "members": { + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplateId", + "smithy.api#documentation": "

The ID of the launch template for faster launching of the associated Windows AMI.

", + "smithy.api#xmlName": "launchTemplateId" + } + }, + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplateName", + "smithy.api#documentation": "

The name of the launch template for faster launching of the associated Windows AMI.

", + "smithy.api#xmlName": "launchTemplateName" + } + }, + "Version": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Version", + "smithy.api#documentation": "

The version of the launch template for faster launching of the associated Windows AMI.

", + "smithy.api#xmlName": "version" + } + } + }, + "traits": { + "smithy.api#documentation": "

Identifies the launch template to use for faster launching of the Windows AMI.

" + } + }, + "com.amazonaws.ec2#FastLaunchResourceType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "snapshot", + "name": "SNAPSHOT" + } + ] + } + }, + "com.amazonaws.ec2#FastLaunchSnapshotConfigurationRequest": { + "type": "structure", + "members": { + "TargetResourceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of pre-provisioned snapshots to keep on hand for a fast-launch enabled Windows AMI.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration settings for creating and managing pre-provisioned snapshots for a fast-launch enabled Windows AMI.

" + } + }, + "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse": { + "type": "structure", + "members": { + "TargetResourceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "TargetResourceCount", + "smithy.api#documentation": "

The number of pre-provisioned snapshots requested to keep on hand for a fast-launch enabled Windows AMI.

", + "smithy.api#xmlName": "targetResourceCount" + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration settings for creating and managing pre-provisioned snapshots for a fast-launch enabled Windows AMI.

" + } + }, + "com.amazonaws.ec2#FastLaunchStateCode": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "enabling", + "name": "enabling" + }, + { + "value": "enabling-failed", + "name": "enabling_failed" + }, + { + "value": "enabled", + "name": "enabled" + }, + { + "value": "enabled-failed", + "name": "enabled_failed" + }, + { + "value": "disabling", + "name": "disabling" + }, + { + "value": "disabling-failed", + "name": "disabling_failed" + } + ] + } + }, "com.amazonaws.ec2#FastSnapshotRestoreStateCode": { "type": "string", "traits": { @@ -34752,13 +35358,13 @@ "Values": { "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The filter values. Filter values are case-sensitive.

", + "smithy.api#documentation": "

The filter values. Filter values are case-sensitive. If you specify multiple values for a \n filter, the values are joined with an OR, and the request returns all results \n that match any of the specified values.

", "smithy.api#xmlName": "Value" } } }, "traits": { - "smithy.api#documentation": "

A filter name and value pair that is used to return a more specific list of results from a describe operation. \n Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

" + "smithy.api#documentation": "

A filter name and value pair that is used to return a more specific list of results from a describe operation. \n Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

\n

If you specify multiple filters, the filters are joined with an AND, and the request returns only \n results that match all of the specified filters.

" } }, "com.amazonaws.ec2#FilterList": { @@ -35495,7 +36101,7 @@ "target": "com.amazonaws.ec2#Integer", "traits": { "aws.protocols#ec2QueryName": "TerminationDelay", - "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Valid only when replacementStrategy is set to launch-before-terminate.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

", + "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Required when ReplacementStrategy is set to launch-before-terminate.

\n

Not valid when ReplacementStrategy is set to launch.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

", "smithy.api#xmlName": "terminationDelay" } } @@ -35516,12 +36122,12 @@ "TerminationDelay": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Valid only when ReplacementStrategy is set to launch-before-terminate.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

" + "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Required when ReplacementStrategy is set to launch-before-terminate.

\n

Not valid when ReplacementStrategy is set to launch.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

" } } }, "traits": { - "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a rebalance\n notification signal that your Spot Instance is at an elevated risk of being interrupted.\n For more information, see Capacity rebalancing in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a rebalance\n notification signal that your Spot Instance is at an elevated risk of being interrupted.\n For more information, see Capacity rebalancing in the Amazon EC2 User Guide.

" } }, "com.amazonaws.ec2#FleetSpotMaintenanceStrategies": { @@ -40339,7 +40945,7 @@ "Architecture": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The architecture of the virtual machine.

\n

Valid values: i386 | x86_64 | arm64\n

" + "smithy.api#documentation": "

The architecture of the virtual machine.

\n

Valid values: i386 | x86_64\n

" } }, "ClientData": { @@ -42973,7 +43579,7 @@ "HttpTokens": { "target": "com.amazonaws.ec2#HttpTokensState", "traits": { - "smithy.api#documentation": "

The state of token usage for your instance metadata requests. If the parameter is not\n specified in the request, the default state is optional.

\n

If the state is optional, you can choose to retrieve instance metadata\n with or without a signed token header on your request. If you retrieve the IAM role\n credentials without a token, the version 1.0 role credentials are returned. If you\n retrieve the IAM role credentials using a valid signed token, the version 2.0 role\n credentials are returned.

\n

If the state is required, you must send a signed token header with any\n instance metadata retrieval requests. In this state, retrieving the IAM role credentials\n always returns the version 2.0 credentials; the version 1.0 credentials are not\n available.

" + "smithy.api#documentation": "

The state of token usage for your instance metadata requests.

\n

If the state is optional, you can choose to retrieve instance metadata\n with or without a signed token header on your request. If you retrieve the IAM role\n credentials without a token, the version 1.0 role credentials are returned. If you\n retrieve the IAM role credentials using a valid signed token, the version 2.0 role\n credentials are returned.

\n

If the state is required, you must send a signed token header with any\n instance metadata retrieval requests. In this state, retrieving the IAM role credentials\n always returns the version 2.0 credentials; the version 1.0 credentials are not\n available.

\n

Default: optional\n

" } }, "HttpPutResponseHopLimit": { @@ -42985,7 +43591,7 @@ "HttpEndpoint": { "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", "traits": { - "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not \n specified, the default state is enabled.

\n

If you specify a value of disabled, you will not be able to access your\n instance metadata.

" + "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances.

\n

If you specify a value of disabled, you cannot access your\n instance metadata.

\n

Default: enabled\n

" } }, "HttpProtocolIpv6": { @@ -42993,6 +43599,12 @@ "traits": { "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

" } + }, + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#InstanceMetadataTagsState", + "traits": { + "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off \n access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata.

\n

Default: disabled\n

" + } } }, "traits": { @@ -43014,7 +43626,7 @@ "target": "com.amazonaws.ec2#HttpTokensState", "traits": { "aws.protocols#ec2QueryName": "HttpTokens", - "smithy.api#documentation": "

The state of token usage for your instance metadata requests. If the parameter is not\n specified in the request, the default state is optional.

\n

If the state is optional, you can choose to retrieve instance metadata\n with or without a signed token header on your request. If you retrieve the IAM role\n credentials without a token, the version 1.0 role credentials are returned. If you\n retrieve the IAM role credentials using a valid signed token, the version 2.0 role\n credentials are returned.

\n

If the state is required, you must send a signed token header with any\n instance metadata retrieval requests. In this state, retrieving the IAM role credential\n always returns the version 2.0 credentials; the version 1.0 credentials are not\n available.

", + "smithy.api#documentation": "

The state of token usage for your instance metadata requests.

\n

If the state is optional, you can choose to retrieve instance metadata\n with or without a signed token header on your request. If you retrieve the IAM role\n credentials without a token, the version 1.0 role credentials are returned. If you\n retrieve the IAM role credentials using a valid signed token, the version 2.0 role\n credentials are returned.

\n

If the state is required, you must send a signed token header with any\n instance metadata retrieval requests. In this state, retrieving the IAM role credential\n always returns the version 2.0 credentials; the version 1.0 credentials are not\n available.

\n

Default: optional\n

", "smithy.api#xmlName": "httpTokens" } }, @@ -43030,7 +43642,7 @@ "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", "traits": { "aws.protocols#ec2QueryName": "HttpEndpoint", - "smithy.api#documentation": "

Indicates whether the HTTP metadata endpoint on your instances is enabled or disabled.

", + "smithy.api#documentation": "

Indicates whether the HTTP metadata endpoint on your instances is enabled or\n disabled.

\n

If the value is disabled, you cannot access your\n instance metadata.

", "smithy.api#xmlName": "httpEndpoint" } }, @@ -43041,6 +43653,14 @@ "smithy.api#documentation": "

Indicates whether the IPv6 endpoint for the instance metadata service is enabled or disabled.

", "smithy.api#xmlName": "httpProtocolIpv6" } + }, + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#InstanceMetadataTagsState", + "traits": { + "aws.protocols#ec2QueryName": "InstanceMetadataTags", + "smithy.api#documentation": "

Indicates whether access to instance tags from the instance metadata is enabled or\n disabled. For more information, see Work with\n instance tags using the instance metadata.

", + "smithy.api#xmlName": "instanceMetadataTags" + } } }, "traits": { @@ -43077,6 +43697,21 @@ ] } }, + "com.amazonaws.ec2#InstanceMetadataTagsState": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "disabled", + "name": "disabled" + }, + { + "value": "enabled", + "name": "enabled" + } + ] + } + }, "com.amazonaws.ec2#InstanceMonitoring": { "type": "structure", "members": { @@ -44345,512 +44980,624 @@ "traits": { "smithy.api#enum": [ { - "value": "t1.micro", - "name": "t1_micro" + "value": "a1.medium", + "name": "a1_medium" }, { - "value": "t2.nano", - "name": "t2_nano" + "value": "a1.large", + "name": "a1_large" }, { - "value": "t2.micro", - "name": "t2_micro" + "value": "a1.xlarge", + "name": "a1_xlarge" }, { - "value": "t2.small", - "name": "t2_small" + "value": "a1.2xlarge", + "name": "a1_2xlarge" }, { - "value": "t2.medium", - "name": "t2_medium" + "value": "a1.4xlarge", + "name": "a1_4xlarge" }, { - "value": "t2.large", - "name": "t2_large" + "value": "a1.metal", + "name": "a1_metal" }, { - "value": "t2.xlarge", - "name": "t2_xlarge" + "value": "c1.medium", + "name": "c1_medium" }, { - "value": "t2.2xlarge", - "name": "t2_2xlarge" + "value": "c1.xlarge", + "name": "c1_xlarge" }, { - "value": "t3.nano", - "name": "t3_nano" + "value": "c3.large", + "name": "c3_large" }, { - "value": "t3.micro", - "name": "t3_micro" + "value": "c3.xlarge", + "name": "c3_xlarge" }, { - "value": "t3.small", - "name": "t3_small" + "value": "c3.2xlarge", + "name": "c3_2xlarge" }, { - "value": "t3.medium", - "name": "t3_medium" + "value": "c3.4xlarge", + "name": "c3_4xlarge" }, { - "value": "t3.large", - "name": "t3_large" + "value": "c3.8xlarge", + "name": "c3_8xlarge" }, { - "value": "t3.xlarge", - "name": "t3_xlarge" + "value": "c4.large", + "name": "c4_large" }, { - "value": "t3.2xlarge", - "name": "t3_2xlarge" + "value": "c4.xlarge", + "name": "c4_xlarge" }, { - "value": "t3a.nano", - "name": "t3a_nano" + "value": "c4.2xlarge", + "name": "c4_2xlarge" }, { - "value": "t3a.micro", - "name": "t3a_micro" + "value": "c4.4xlarge", + "name": "c4_4xlarge" }, { - "value": "t3a.small", - "name": "t3a_small" + "value": "c4.8xlarge", + "name": "c4_8xlarge" }, { - "value": "t3a.medium", - "name": "t3a_medium" + "value": "c5.large", + "name": "c5_large" }, { - "value": "t3a.large", - "name": "t3a_large" + "value": "c5.xlarge", + "name": "c5_xlarge" }, { - "value": "t3a.xlarge", - "name": "t3a_xlarge" + "value": "c5.2xlarge", + "name": "c5_2xlarge" }, { - "value": "t3a.2xlarge", - "name": "t3a_2xlarge" + "value": "c5.4xlarge", + "name": "c5_4xlarge" }, { - "value": "t4g.nano", - "name": "t4g_nano" + "value": "c5.9xlarge", + "name": "c5_9xlarge" }, { - "value": "t4g.micro", - "name": "t4g_micro" + "value": "c5.12xlarge", + "name": "c5_12xlarge" }, { - "value": "t4g.small", - "name": "t4g_small" + "value": "c5.18xlarge", + "name": "c5_18xlarge" }, { - "value": "t4g.medium", - "name": "t4g_medium" + "value": "c5.24xlarge", + "name": "c5_24xlarge" }, { - "value": "t4g.large", - "name": "t4g_large" + "value": "c5.metal", + "name": "c5_metal" }, { - "value": "t4g.xlarge", - "name": "t4g_xlarge" + "value": "c5a.large", + "name": "c5a_large" }, { - "value": "t4g.2xlarge", - "name": "t4g_2xlarge" + "value": "c5a.xlarge", + "name": "c5a_xlarge" }, { - "value": "m1.small", - "name": "m1_small" + "value": "c5a.2xlarge", + "name": "c5a_2xlarge" }, { - "value": "m1.medium", - "name": "m1_medium" + "value": "c5a.4xlarge", + "name": "c5a_4xlarge" }, { - "value": "m1.large", - "name": "m1_large" + "value": "c5a.8xlarge", + "name": "c5a_8xlarge" }, { - "value": "m1.xlarge", - "name": "m1_xlarge" + "value": "c5a.12xlarge", + "name": "c5a_12xlarge" }, { - "value": "m3.medium", - "name": "m3_medium" + "value": "c5a.16xlarge", + "name": "c5a_16xlarge" }, { - "value": "m3.large", - "name": "m3_large" + "value": "c5a.24xlarge", + "name": "c5a_24xlarge" }, { - "value": "m3.xlarge", - "name": "m3_xlarge" + "value": "c5ad.large", + "name": "c5ad_large" }, { - "value": "m3.2xlarge", - "name": "m3_2xlarge" + "value": "c5ad.xlarge", + "name": "c5ad_xlarge" }, { - "value": "m4.large", - "name": "m4_large" + "value": "c5ad.2xlarge", + "name": "c5ad_2xlarge" }, { - "value": "m4.xlarge", - "name": "m4_xlarge" + "value": "c5ad.4xlarge", + "name": "c5ad_4xlarge" }, { - "value": "m4.2xlarge", - "name": "m4_2xlarge" + "value": "c5ad.8xlarge", + "name": "c5ad_8xlarge" }, { - "value": "m4.4xlarge", - "name": "m4_4xlarge" + "value": "c5ad.12xlarge", + "name": "c5ad_12xlarge" }, { - "value": "m4.10xlarge", - "name": "m4_10xlarge" + "value": "c5ad.16xlarge", + "name": "c5ad_16xlarge" }, { - "value": "m4.16xlarge", - "name": "m4_16xlarge" + "value": "c5ad.24xlarge", + "name": "c5ad_24xlarge" }, { - "value": "m2.xlarge", - "name": "m2_xlarge" + "value": "c5d.large", + "name": "c5d_large" }, { - "value": "m2.2xlarge", - "name": "m2_2xlarge" + "value": "c5d.xlarge", + "name": "c5d_xlarge" }, { - "value": "m2.4xlarge", - "name": "m2_4xlarge" + "value": "c5d.2xlarge", + "name": "c5d_2xlarge" }, { - "value": "cr1.8xlarge", - "name": "cr1_8xlarge" + "value": "c5d.4xlarge", + "name": "c5d_4xlarge" }, { - "value": "r3.large", - "name": "r3_large" + "value": "c5d.9xlarge", + "name": "c5d_9xlarge" }, { - "value": "r3.xlarge", - "name": "r3_xlarge" + "value": "c5d.12xlarge", + "name": "c5d_12xlarge" }, { - "value": "r3.2xlarge", - "name": "r3_2xlarge" + "value": "c5d.18xlarge", + "name": "c5d_18xlarge" }, { - "value": "r3.4xlarge", - "name": "r3_4xlarge" + "value": "c5d.24xlarge", + "name": "c5d_24xlarge" }, { - "value": "r3.8xlarge", - "name": "r3_8xlarge" + "value": "c5d.metal", + "name": "c5d_metal" }, { - "value": "r4.large", - "name": "r4_large" + "value": "c5n.large", + "name": "c5n_large" }, { - "value": "r4.xlarge", - "name": "r4_xlarge" + "value": "c5n.xlarge", + "name": "c5n_xlarge" }, { - "value": "r4.2xlarge", - "name": "r4_2xlarge" + "value": "c5n.2xlarge", + "name": "c5n_2xlarge" }, { - "value": "r4.4xlarge", - "name": "r4_4xlarge" + "value": "c5n.4xlarge", + "name": "c5n_4xlarge" }, { - "value": "r4.8xlarge", - "name": "r4_8xlarge" + "value": "c5n.9xlarge", + "name": "c5n_9xlarge" }, { - "value": "r4.16xlarge", - "name": "r4_16xlarge" + "value": "c5n.18xlarge", + "name": "c5n_18xlarge" }, { - "value": "r5.large", - "name": "r5_large" + "value": "c5n.metal", + "name": "c5n_metal" }, { - "value": "r5.xlarge", - "name": "r5_xlarge" + "value": "c6g.medium", + "name": "c6g_medium" }, { - "value": "r5.2xlarge", - "name": "r5_2xlarge" + "value": "c6g.large", + "name": "c6g_large" }, { - "value": "r5.4xlarge", - "name": "r5_4xlarge" + "value": "c6g.xlarge", + "name": "c6g_xlarge" }, { - "value": "r5.8xlarge", - "name": "r5_8xlarge" + "value": "c6g.2xlarge", + "name": "c6g_2xlarge" }, { - "value": "r5.12xlarge", - "name": "r5_12xlarge" + "value": "c6g.4xlarge", + "name": "c6g_4xlarge" }, { - "value": "r5.16xlarge", - "name": "r5_16xlarge" + "value": "c6g.8xlarge", + "name": "c6g_8xlarge" }, { - "value": "r5.24xlarge", - "name": "r5_24xlarge" + "value": "c6g.12xlarge", + "name": "c6g_12xlarge" }, { - "value": "r5.metal", - "name": "r5_metal" + "value": "c6g.16xlarge", + "name": "c6g_16xlarge" }, { - "value": "r5a.large", - "name": "r5a_large" + "value": "c6g.metal", + "name": "c6g_metal" }, { - "value": "r5a.xlarge", - "name": "r5a_xlarge" + "value": "c6gd.medium", + "name": "c6gd_medium" }, { - "value": "r5a.2xlarge", - "name": "r5a_2xlarge" + "value": "c6gd.large", + "name": "c6gd_large" }, { - "value": "r5a.4xlarge", - "name": "r5a_4xlarge" + "value": "c6gd.xlarge", + "name": "c6gd_xlarge" }, { - "value": "r5a.8xlarge", - "name": "r5a_8xlarge" + "value": "c6gd.2xlarge", + "name": "c6gd_2xlarge" }, { - "value": "r5a.12xlarge", - "name": "r5a_12xlarge" + "value": "c6gd.4xlarge", + "name": "c6gd_4xlarge" }, { - "value": "r5a.16xlarge", - "name": "r5a_16xlarge" + "value": "c6gd.8xlarge", + "name": "c6gd_8xlarge" }, { - "value": "r5a.24xlarge", - "name": "r5a_24xlarge" + "value": "c6gd.12xlarge", + "name": "c6gd_12xlarge" }, { - "value": "r5b.large", - "name": "r5b_large" + "value": "c6gd.16xlarge", + "name": "c6gd_16xlarge" }, { - "value": "r5b.xlarge", - "name": "r5b_xlarge" + "value": "c6gd.metal", + "name": "c6gd_metal" }, { - "value": "r5b.2xlarge", - "name": "r5b_2xlarge" + "value": "c6gn.medium", + "name": "c6gn_medium" }, { - "value": "r5b.4xlarge", - "name": "r5b_4xlarge" + "value": "c6gn.large", + "name": "c6gn_large" }, { - "value": "r5b.8xlarge", - "name": "r5b_8xlarge" + "value": "c6gn.xlarge", + "name": "c6gn_xlarge" }, { - "value": "r5b.12xlarge", - "name": "r5b_12xlarge" + "value": "c6gn.2xlarge", + "name": "c6gn_2xlarge" }, { - "value": "r5b.16xlarge", - "name": "r5b_16xlarge" + "value": "c6gn.4xlarge", + "name": "c6gn_4xlarge" }, { - "value": "r5b.24xlarge", - "name": "r5b_24xlarge" + "value": "c6gn.8xlarge", + "name": "c6gn_8xlarge" }, { - "value": "r5b.metal", - "name": "r5b_metal" + "value": "c6gn.12xlarge", + "name": "c6gn_12xlarge" }, { - "value": "r5d.large", - "name": "r5d_large" + "value": "c6gn.16xlarge", + "name": "c6gn_16xlarge" }, { - "value": "r5d.xlarge", - "name": "r5d_xlarge" + "value": "c6i.large", + "name": "c6i_large" }, { - "value": "r5d.2xlarge", - "name": "r5d_2xlarge" + "value": "c6i.xlarge", + "name": "c6i_xlarge" }, { - "value": "r5d.4xlarge", - "name": "r5d_4xlarge" + "value": "c6i.2xlarge", + "name": "c6i_2xlarge" }, { - "value": "r5d.8xlarge", - "name": "r5d_8xlarge" + "value": "c6i.4xlarge", + "name": "c6i_4xlarge" }, { - "value": "r5d.12xlarge", - "name": "r5d_12xlarge" + "value": "c6i.8xlarge", + "name": "c6i_8xlarge" }, { - "value": "r5d.16xlarge", - "name": "r5d_16xlarge" + "value": "c6i.12xlarge", + "name": "c6i_12xlarge" }, { - "value": "r5d.24xlarge", - "name": "r5d_24xlarge" + "value": "c6i.16xlarge", + "name": "c6i_16xlarge" }, { - "value": "r5d.metal", - "name": "r5d_metal" + "value": "c6i.24xlarge", + "name": "c6i_24xlarge" }, { - "value": "r5ad.large", - "name": "r5ad_large" + "value": "c6i.32xlarge", + "name": "c6i_32xlarge" }, { - "value": "r5ad.xlarge", - "name": "r5ad_xlarge" + "value": "cc1.4xlarge", + "name": "cc1_4xlarge" }, { - "value": "r5ad.2xlarge", - "name": "r5ad_2xlarge" + "value": "cc2.8xlarge", + "name": "cc2_8xlarge" }, { - "value": "r5ad.4xlarge", - "name": "r5ad_4xlarge" + "value": "cg1.4xlarge", + "name": "cg1_4xlarge" }, { - "value": "r5ad.8xlarge", - "name": "r5ad_8xlarge" + "value": "cr1.8xlarge", + "name": "cr1_8xlarge" }, { - "value": "r5ad.12xlarge", - "name": "r5ad_12xlarge" + "value": "d2.xlarge", + "name": "d2_xlarge" }, { - "value": "r5ad.16xlarge", - "name": "r5ad_16xlarge" + "value": "d2.2xlarge", + "name": "d2_2xlarge" }, { - "value": "r5ad.24xlarge", - "name": "r5ad_24xlarge" + "value": "d2.4xlarge", + "name": "d2_4xlarge" }, { - "value": "r6g.metal", - "name": "r6g_metal" + "value": "d2.8xlarge", + "name": "d2_8xlarge" }, { - "value": "r6g.medium", - "name": "r6g_medium" + "value": "d3.xlarge", + "name": "d3_xlarge" }, { - "value": "r6g.large", - "name": "r6g_large" + "value": "d3.2xlarge", + "name": "d3_2xlarge" }, { - "value": "r6g.xlarge", - "name": "r6g_xlarge" + "value": "d3.4xlarge", + "name": "d3_4xlarge" }, { - "value": "r6g.2xlarge", - "name": "r6g_2xlarge" + "value": "d3.8xlarge", + "name": "d3_8xlarge" }, { - "value": "r6g.4xlarge", - "name": "r6g_4xlarge" + "value": "d3en.xlarge", + "name": "d3en_xlarge" }, { - "value": "r6g.8xlarge", - "name": "r6g_8xlarge" + "value": "d3en.2xlarge", + "name": "d3en_2xlarge" }, { - "value": "r6g.12xlarge", - "name": "r6g_12xlarge" + "value": "d3en.4xlarge", + "name": "d3en_4xlarge" }, { - "value": "r6g.16xlarge", - "name": "r6g_16xlarge" + "value": "d3en.6xlarge", + "name": "d3en_6xlarge" }, { - "value": "r6gd.metal", - "name": "r6gd_metal" + "value": "d3en.8xlarge", + "name": "d3en_8xlarge" }, { - "value": "r6gd.medium", - "name": "r6gd_medium" + "value": "d3en.12xlarge", + "name": "d3en_12xlarge" }, { - "value": "r6gd.large", - "name": "r6gd_large" + "value": "dl1.24xlarge", + "name": "dl1_24xlarge" }, { - "value": "r6gd.xlarge", - "name": "r6gd_xlarge" + "value": "f1.2xlarge", + "name": "f1_2xlarge" }, { - "value": "r6gd.2xlarge", - "name": "r6gd_2xlarge" + "value": "f1.4xlarge", + "name": "f1_4xlarge" }, { - "value": "r6gd.4xlarge", - "name": "r6gd_4xlarge" + "value": "f1.16xlarge", + "name": "f1_16xlarge" }, { - "value": "r6gd.8xlarge", - "name": "r6gd_8xlarge" + "value": "g2.2xlarge", + "name": "g2_2xlarge" }, { - "value": "r6gd.12xlarge", - "name": "r6gd_12xlarge" + "value": "g2.8xlarge", + "name": "g2_8xlarge" }, { - "value": "r6gd.16xlarge", - "name": "r6gd_16xlarge" + "value": "g3.4xlarge", + "name": "g3_4xlarge" }, { - "value": "x1.16xlarge", - "name": "x1_16xlarge" + "value": "g3.8xlarge", + "name": "g3_8xlarge" }, { - "value": "x1.32xlarge", - "name": "x1_32xlarge" + "value": "g3.16xlarge", + "name": "g3_16xlarge" }, { - "value": "x1e.xlarge", - "name": "x1e_xlarge" + "value": "g3s.xlarge", + "name": "g3s_xlarge" }, { - "value": "x1e.2xlarge", - "name": "x1e_2xlarge" + "value": "g4ad.xlarge", + "name": "g4ad_xlarge" }, { - "value": "x1e.4xlarge", - "name": "x1e_4xlarge" + "value": "g4ad.2xlarge", + "name": "g4ad_2xlarge" }, { - "value": "x1e.8xlarge", - "name": "x1e_8xlarge" + "value": "g4ad.4xlarge", + "name": "g4ad_4xlarge" }, { - "value": "x1e.16xlarge", - "name": "x1e_16xlarge" + "value": "g4ad.8xlarge", + "name": "g4ad_8xlarge" }, { - "value": "x1e.32xlarge", - "name": "x1e_32xlarge" + "value": "g4ad.16xlarge", + "name": "g4ad_16xlarge" + }, + { + "value": "g4dn.xlarge", + "name": "g4dn_xlarge" + }, + { + "value": "g4dn.2xlarge", + "name": "g4dn_2xlarge" + }, + { + "value": "g4dn.4xlarge", + "name": "g4dn_4xlarge" + }, + { + "value": "g4dn.8xlarge", + "name": "g4dn_8xlarge" + }, + { + "value": "g4dn.12xlarge", + "name": "g4dn_12xlarge" + }, + { + "value": "g4dn.16xlarge", + "name": "g4dn_16xlarge" + }, + { + "value": "g4dn.metal", + "name": "g4dn_metal" + }, + { + "value": "g5.xlarge", + "name": "g5_xlarge" + }, + { + "value": "g5.2xlarge", + "name": "g5_2xlarge" + }, + { + "value": "g5.4xlarge", + "name": "g5_4xlarge" + }, + { + "value": "g5.8xlarge", + "name": "g5_8xlarge" + }, + { + "value": "g5.12xlarge", + "name": "g5_12xlarge" + }, + { + "value": "g5.16xlarge", + "name": "g5_16xlarge" + }, + { + "value": "g5.24xlarge", + "name": "g5_24xlarge" + }, + { + "value": "g5.48xlarge", + "name": "g5_48xlarge" + }, + { + "value": "g5g.xlarge", + "name": "g5g_xlarge" + }, + { + "value": "g5g.2xlarge", + "name": "g5g_2xlarge" + }, + { + "value": "g5g.4xlarge", + "name": "g5g_4xlarge" + }, + { + "value": "g5g.8xlarge", + "name": "g5g_8xlarge" + }, + { + "value": "g5g.16xlarge", + "name": "g5g_16xlarge" + }, + { + "value": "g5g.metal", + "name": "g5g_metal" + }, + { + "value": "hi1.4xlarge", + "name": "hi1_4xlarge" + }, + { + "value": "hpc6a.48xlarge", + "name": "hpc6a_48xlarge" + }, + { + "value": "hs1.8xlarge", + "name": "hs1_8xlarge" + }, + { + "value": "h1.2xlarge", + "name": "h1_2xlarge" + }, + { + "value": "h1.4xlarge", + "name": "h1_4xlarge" + }, + { + "value": "h1.8xlarge", + "name": "h1_8xlarge" + }, + { + "value": "h1.16xlarge", + "name": "h1_16xlarge" }, { "value": "i2.xlarge", @@ -44929,892 +45676,772 @@ "name": "i3en_metal" }, { - "value": "hi1.4xlarge", - "name": "hi1_4xlarge" + "value": "im4gn.large", + "name": "im4gn_large" }, { - "value": "hs1.8xlarge", - "name": "hs1_8xlarge" + "value": "im4gn.xlarge", + "name": "im4gn_xlarge" }, { - "value": "c1.medium", - "name": "c1_medium" + "value": "im4gn.2xlarge", + "name": "im4gn_2xlarge" }, { - "value": "c1.xlarge", - "name": "c1_xlarge" + "value": "im4gn.4xlarge", + "name": "im4gn_4xlarge" }, { - "value": "c3.large", - "name": "c3_large" + "value": "im4gn.8xlarge", + "name": "im4gn_8xlarge" }, { - "value": "c3.xlarge", - "name": "c3_xlarge" + "value": "im4gn.16xlarge", + "name": "im4gn_16xlarge" }, { - "value": "c3.2xlarge", - "name": "c3_2xlarge" + "value": "inf1.xlarge", + "name": "inf1_xlarge" }, { - "value": "c3.4xlarge", - "name": "c3_4xlarge" + "value": "inf1.2xlarge", + "name": "inf1_2xlarge" }, { - "value": "c3.8xlarge", - "name": "c3_8xlarge" + "value": "inf1.6xlarge", + "name": "inf1_6xlarge" }, { - "value": "c4.large", - "name": "c4_large" + "value": "inf1.24xlarge", + "name": "inf1_24xlarge" }, { - "value": "c4.xlarge", - "name": "c4_xlarge" + "value": "is4gen.medium", + "name": "is4gen_medium" }, { - "value": "c4.2xlarge", - "name": "c4_2xlarge" + "value": "is4gen.large", + "name": "is4gen_large" }, { - "value": "c4.4xlarge", - "name": "c4_4xlarge" + "value": "is4gen.xlarge", + "name": "is4gen_xlarge" }, { - "value": "c4.8xlarge", - "name": "c4_8xlarge" + "value": "is4gen.2xlarge", + "name": "is4gen_2xlarge" }, { - "value": "c5.large", - "name": "c5_large" + "value": "is4gen.4xlarge", + "name": "is4gen_4xlarge" }, { - "value": "c5.xlarge", - "name": "c5_xlarge" + "value": "is4gen.8xlarge", + "name": "is4gen_8xlarge" }, { - "value": "c5.2xlarge", - "name": "c5_2xlarge" + "value": "m1.small", + "name": "m1_small" }, { - "value": "c5.4xlarge", - "name": "c5_4xlarge" + "value": "m1.medium", + "name": "m1_medium" }, { - "value": "c5.9xlarge", - "name": "c5_9xlarge" + "value": "m1.large", + "name": "m1_large" }, { - "value": "c5.12xlarge", - "name": "c5_12xlarge" + "value": "m1.xlarge", + "name": "m1_xlarge" }, { - "value": "c5.18xlarge", - "name": "c5_18xlarge" + "value": "m2.xlarge", + "name": "m2_xlarge" }, { - "value": "c5.24xlarge", - "name": "c5_24xlarge" + "value": "m2.2xlarge", + "name": "m2_2xlarge" }, { - "value": "c5.metal", - "name": "c5_metal" + "value": "m2.4xlarge", + "name": "m2_4xlarge" }, { - "value": "c5a.large", - "name": "c5a_large" + "value": "m3.medium", + "name": "m3_medium" }, { - "value": "c5a.xlarge", - "name": "c5a_xlarge" + "value": "m3.large", + "name": "m3_large" }, { - "value": "c5a.2xlarge", - "name": "c5a_2xlarge" + "value": "m3.xlarge", + "name": "m3_xlarge" }, { - "value": "c5a.4xlarge", - "name": "c5a_4xlarge" + "value": "m3.2xlarge", + "name": "m3_2xlarge" }, { - "value": "c5a.8xlarge", - "name": "c5a_8xlarge" + "value": "m4.large", + "name": "m4_large" }, { - "value": "c5a.12xlarge", - "name": "c5a_12xlarge" + "value": "m4.xlarge", + "name": "m4_xlarge" }, { - "value": "c5a.16xlarge", - "name": "c5a_16xlarge" + "value": "m4.2xlarge", + "name": "m4_2xlarge" }, { - "value": "c5a.24xlarge", - "name": "c5a_24xlarge" + "value": "m4.4xlarge", + "name": "m4_4xlarge" }, { - "value": "c5ad.large", - "name": "c5ad_large" + "value": "m4.10xlarge", + "name": "m4_10xlarge" }, { - "value": "c5ad.xlarge", - "name": "c5ad_xlarge" + "value": "m4.16xlarge", + "name": "m4_16xlarge" }, { - "value": "c5ad.2xlarge", - "name": "c5ad_2xlarge" + "value": "m5.large", + "name": "m5_large" }, { - "value": "c5ad.4xlarge", - "name": "c5ad_4xlarge" + "value": "m5.xlarge", + "name": "m5_xlarge" }, { - "value": "c5ad.8xlarge", - "name": "c5ad_8xlarge" + "value": "m5.2xlarge", + "name": "m5_2xlarge" }, { - "value": "c5ad.12xlarge", - "name": "c5ad_12xlarge" + "value": "m5.4xlarge", + "name": "m5_4xlarge" }, { - "value": "c5ad.16xlarge", - "name": "c5ad_16xlarge" + "value": "m5.8xlarge", + "name": "m5_8xlarge" }, { - "value": "c5ad.24xlarge", - "name": "c5ad_24xlarge" + "value": "m5.12xlarge", + "name": "m5_12xlarge" }, { - "value": "c5d.large", - "name": "c5d_large" + "value": "m5.16xlarge", + "name": "m5_16xlarge" }, { - "value": "c5d.xlarge", - "name": "c5d_xlarge" + "value": "m5.24xlarge", + "name": "m5_24xlarge" }, { - "value": "c5d.2xlarge", - "name": "c5d_2xlarge" + "value": "m5.metal", + "name": "m5_metal" }, { - "value": "c5d.4xlarge", - "name": "c5d_4xlarge" + "value": "m5a.large", + "name": "m5a_large" }, { - "value": "c5d.9xlarge", - "name": "c5d_9xlarge" + "value": "m5a.xlarge", + "name": "m5a_xlarge" }, { - "value": "c5d.12xlarge", - "name": "c5d_12xlarge" + "value": "m5a.2xlarge", + "name": "m5a_2xlarge" }, { - "value": "c5d.18xlarge", - "name": "c5d_18xlarge" + "value": "m5a.4xlarge", + "name": "m5a_4xlarge" }, { - "value": "c5d.24xlarge", - "name": "c5d_24xlarge" + "value": "m5a.8xlarge", + "name": "m5a_8xlarge" }, { - "value": "c5d.metal", - "name": "c5d_metal" + "value": "m5a.12xlarge", + "name": "m5a_12xlarge" }, { - "value": "c5n.large", - "name": "c5n_large" + "value": "m5a.16xlarge", + "name": "m5a_16xlarge" }, { - "value": "c5n.xlarge", - "name": "c5n_xlarge" + "value": "m5a.24xlarge", + "name": "m5a_24xlarge" }, { - "value": "c5n.2xlarge", - "name": "c5n_2xlarge" + "value": "m5ad.large", + "name": "m5ad_large" }, { - "value": "c5n.4xlarge", - "name": "c5n_4xlarge" + "value": "m5ad.xlarge", + "name": "m5ad_xlarge" }, { - "value": "c5n.9xlarge", - "name": "c5n_9xlarge" + "value": "m5ad.2xlarge", + "name": "m5ad_2xlarge" }, { - "value": "c5n.18xlarge", - "name": "c5n_18xlarge" + "value": "m5ad.4xlarge", + "name": "m5ad_4xlarge" }, { - "value": "c5n.metal", - "name": "c5n_metal" + "value": "m5ad.8xlarge", + "name": "m5ad_8xlarge" }, { - "value": "c6g.metal", - "name": "c6g_metal" + "value": "m5ad.12xlarge", + "name": "m5ad_12xlarge" }, { - "value": "c6g.medium", - "name": "c6g_medium" + "value": "m5ad.16xlarge", + "name": "m5ad_16xlarge" }, { - "value": "c6g.large", - "name": "c6g_large" + "value": "m5ad.24xlarge", + "name": "m5ad_24xlarge" }, { - "value": "c6g.xlarge", - "name": "c6g_xlarge" + "value": "m5d.large", + "name": "m5d_large" }, { - "value": "c6g.2xlarge", - "name": "c6g_2xlarge" + "value": "m5d.xlarge", + "name": "m5d_xlarge" }, { - "value": "c6g.4xlarge", - "name": "c6g_4xlarge" + "value": "m5d.2xlarge", + "name": "m5d_2xlarge" }, { - "value": "c6g.8xlarge", - "name": "c6g_8xlarge" + "value": "m5d.4xlarge", + "name": "m5d_4xlarge" }, { - "value": "c6g.12xlarge", - "name": "c6g_12xlarge" + "value": "m5d.8xlarge", + "name": "m5d_8xlarge" }, { - "value": "c6g.16xlarge", - "name": "c6g_16xlarge" + "value": "m5d.12xlarge", + "name": "m5d_12xlarge" }, { - "value": "c6gd.metal", - "name": "c6gd_metal" + "value": "m5d.16xlarge", + "name": "m5d_16xlarge" }, { - "value": "c6gd.medium", - "name": "c6gd_medium" + "value": "m5d.24xlarge", + "name": "m5d_24xlarge" }, { - "value": "c6gd.large", - "name": "c6gd_large" + "value": "m5d.metal", + "name": "m5d_metal" }, { - "value": "c6gd.xlarge", - "name": "c6gd_xlarge" + "value": "m5dn.large", + "name": "m5dn_large" }, { - "value": "c6gd.2xlarge", - "name": "c6gd_2xlarge" - }, - { - "value": "c6gd.4xlarge", - "name": "c6gd_4xlarge" - }, - { - "value": "c6gd.8xlarge", - "name": "c6gd_8xlarge" - }, - { - "value": "c6gd.12xlarge", - "name": "c6gd_12xlarge" - }, - { - "value": "c6gd.16xlarge", - "name": "c6gd_16xlarge" - }, - { - "value": "c6gn.medium", - "name": "c6gn_medium" - }, - { - "value": "c6gn.large", - "name": "c6gn_large" - }, - { - "value": "c6gn.xlarge", - "name": "c6gn_xlarge" - }, - { - "value": "c6gn.2xlarge", - "name": "c6gn_2xlarge" - }, - { - "value": "c6gn.4xlarge", - "name": "c6gn_4xlarge" - }, - { - "value": "c6gn.8xlarge", - "name": "c6gn_8xlarge" - }, - { - "value": "c6gn.12xlarge", - "name": "c6gn_12xlarge" - }, - { - "value": "c6gn.16xlarge", - "name": "c6gn_16xlarge" - }, - { - "value": "c6i.large", - "name": "c6i_large" - }, - { - "value": "c6i.xlarge", - "name": "c6i_xlarge" - }, - { - "value": "c6i.2xlarge", - "name": "c6i_2xlarge" - }, - { - "value": "c6i.4xlarge", - "name": "c6i_4xlarge" - }, - { - "value": "c6i.8xlarge", - "name": "c6i_8xlarge" - }, - { - "value": "c6i.12xlarge", - "name": "c6i_12xlarge" - }, - { - "value": "c6i.16xlarge", - "name": "c6i_16xlarge" - }, - { - "value": "c6i.24xlarge", - "name": "c6i_24xlarge" - }, - { - "value": "c6i.32xlarge", - "name": "c6i_32xlarge" - }, - { - "value": "cc1.4xlarge", - "name": "cc1_4xlarge" - }, - { - "value": "cc2.8xlarge", - "name": "cc2_8xlarge" - }, - { - "value": "g2.2xlarge", - "name": "g2_2xlarge" - }, - { - "value": "g2.8xlarge", - "name": "g2_8xlarge" - }, - { - "value": "g3.4xlarge", - "name": "g3_4xlarge" - }, - { - "value": "g3.8xlarge", - "name": "g3_8xlarge" - }, - { - "value": "g3.16xlarge", - "name": "g3_16xlarge" - }, - { - "value": "g3s.xlarge", - "name": "g3s_xlarge" - }, - { - "value": "g4ad.xlarge", - "name": "g4ad_xlarge" + "value": "m5dn.xlarge", + "name": "m5dn_xlarge" }, { - "value": "g4ad.2xlarge", - "name": "g4ad_2xlarge" + "value": "m5dn.2xlarge", + "name": "m5dn_2xlarge" }, { - "value": "g4ad.4xlarge", - "name": "g4ad_4xlarge" + "value": "m5dn.4xlarge", + "name": "m5dn_4xlarge" }, { - "value": "g4ad.8xlarge", - "name": "g4ad_8xlarge" + "value": "m5dn.8xlarge", + "name": "m5dn_8xlarge" }, { - "value": "g4ad.16xlarge", - "name": "g4ad_16xlarge" + "value": "m5dn.12xlarge", + "name": "m5dn_12xlarge" }, { - "value": "g4dn.xlarge", - "name": "g4dn_xlarge" + "value": "m5dn.16xlarge", + "name": "m5dn_16xlarge" }, { - "value": "g4dn.2xlarge", - "name": "g4dn_2xlarge" + "value": "m5dn.24xlarge", + "name": "m5dn_24xlarge" }, { - "value": "g4dn.4xlarge", - "name": "g4dn_4xlarge" + "value": "m5dn.metal", + "name": "m5dn_metal" }, { - "value": "g4dn.8xlarge", - "name": "g4dn_8xlarge" + "value": "m5n.large", + "name": "m5n_large" }, { - "value": "g4dn.12xlarge", - "name": "g4dn_12xlarge" + "value": "m5n.xlarge", + "name": "m5n_xlarge" }, { - "value": "g4dn.16xlarge", - "name": "g4dn_16xlarge" + "value": "m5n.2xlarge", + "name": "m5n_2xlarge" }, { - "value": "g4dn.metal", - "name": "g4dn_metal" + "value": "m5n.4xlarge", + "name": "m5n_4xlarge" }, { - "value": "cg1.4xlarge", - "name": "cg1_4xlarge" + "value": "m5n.8xlarge", + "name": "m5n_8xlarge" }, { - "value": "p2.xlarge", - "name": "p2_xlarge" + "value": "m5n.12xlarge", + "name": "m5n_12xlarge" }, { - "value": "p2.8xlarge", - "name": "p2_8xlarge" + "value": "m5n.16xlarge", + "name": "m5n_16xlarge" }, { - "value": "p2.16xlarge", - "name": "p2_16xlarge" + "value": "m5n.24xlarge", + "name": "m5n_24xlarge" }, { - "value": "p3.2xlarge", - "name": "p3_2xlarge" + "value": "m5n.metal", + "name": "m5n_metal" }, { - "value": "p3.8xlarge", - "name": "p3_8xlarge" + "value": "m5zn.large", + "name": "m5zn_large" }, { - "value": "p3.16xlarge", - "name": "p3_16xlarge" + "value": "m5zn.xlarge", + "name": "m5zn_xlarge" }, { - "value": "p3dn.24xlarge", - "name": "p3dn_24xlarge" + "value": "m5zn.2xlarge", + "name": "m5zn_2xlarge" }, { - "value": "p4d.24xlarge", - "name": "p4d_24xlarge" + "value": "m5zn.3xlarge", + "name": "m5zn_3xlarge" }, { - "value": "d2.xlarge", - "name": "d2_xlarge" + "value": "m5zn.6xlarge", + "name": "m5zn_6xlarge" }, { - "value": "d2.2xlarge", - "name": "d2_2xlarge" + "value": "m5zn.12xlarge", + "name": "m5zn_12xlarge" }, { - "value": "d2.4xlarge", - "name": "d2_4xlarge" + "value": "m5zn.metal", + "name": "m5zn_metal" }, { - "value": "d2.8xlarge", - "name": "d2_8xlarge" + "value": "m6a.large", + "name": "m6a_large" }, { - "value": "d3.xlarge", - "name": "d3_xlarge" + "value": "m6a.xlarge", + "name": "m6a_xlarge" }, { - "value": "d3.2xlarge", - "name": "d3_2xlarge" + "value": "m6a.2xlarge", + "name": "m6a_2xlarge" }, { - "value": "d3.4xlarge", - "name": "d3_4xlarge" + "value": "m6a.4xlarge", + "name": "m6a_4xlarge" }, { - "value": "d3.8xlarge", - "name": "d3_8xlarge" + "value": "m6a.8xlarge", + "name": "m6a_8xlarge" }, { - "value": "d3en.xlarge", - "name": "d3en_xlarge" + "value": "m6a.12xlarge", + "name": "m6a_12xlarge" }, { - "value": "d3en.2xlarge", - "name": "d3en_2xlarge" + "value": "m6a.16xlarge", + "name": "m6a_16xlarge" }, { - "value": "d3en.4xlarge", - "name": "d3en_4xlarge" + "value": "m6a.24xlarge", + "name": "m6a_24xlarge" }, { - "value": "d3en.6xlarge", - "name": "d3en_6xlarge" + "value": "m6a.32xlarge", + "name": "m6a_32xlarge" }, { - "value": "d3en.8xlarge", - "name": "d3en_8xlarge" + "value": "m6a.48xlarge", + "name": "m6a_48xlarge" }, { - "value": "d3en.12xlarge", - "name": "d3en_12xlarge" + "value": "m6g.metal", + "name": "m6g_metal" }, { - "value": "dl1.24xlarge", - "name": "dl1_24xlarge" + "value": "m6g.medium", + "name": "m6g_medium" }, { - "value": "f1.2xlarge", - "name": "f1_2xlarge" + "value": "m6g.large", + "name": "m6g_large" }, { - "value": "f1.4xlarge", - "name": "f1_4xlarge" + "value": "m6g.xlarge", + "name": "m6g_xlarge" }, { - "value": "f1.16xlarge", - "name": "f1_16xlarge" + "value": "m6g.2xlarge", + "name": "m6g_2xlarge" }, { - "value": "m5.large", - "name": "m5_large" + "value": "m6g.4xlarge", + "name": "m6g_4xlarge" }, { - "value": "m5.xlarge", - "name": "m5_xlarge" + "value": "m6g.8xlarge", + "name": "m6g_8xlarge" }, { - "value": "m5.2xlarge", - "name": "m5_2xlarge" + "value": "m6g.12xlarge", + "name": "m6g_12xlarge" }, { - "value": "m5.4xlarge", - "name": "m5_4xlarge" + "value": "m6g.16xlarge", + "name": "m6g_16xlarge" }, { - "value": "m5.8xlarge", - "name": "m5_8xlarge" + "value": "m6gd.metal", + "name": "m6gd_metal" }, { - "value": "m5.12xlarge", - "name": "m5_12xlarge" + "value": "m6gd.medium", + "name": "m6gd_medium" }, { - "value": "m5.16xlarge", - "name": "m5_16xlarge" + "value": "m6gd.large", + "name": "m6gd_large" }, { - "value": "m5.24xlarge", - "name": "m5_24xlarge" + "value": "m6gd.xlarge", + "name": "m6gd_xlarge" }, { - "value": "m5.metal", - "name": "m5_metal" + "value": "m6gd.2xlarge", + "name": "m6gd_2xlarge" }, { - "value": "m5a.large", - "name": "m5a_large" + "value": "m6gd.4xlarge", + "name": "m6gd_4xlarge" }, { - "value": "m5a.xlarge", - "name": "m5a_xlarge" + "value": "m6gd.8xlarge", + "name": "m6gd_8xlarge" }, { - "value": "m5a.2xlarge", - "name": "m5a_2xlarge" + "value": "m6gd.12xlarge", + "name": "m6gd_12xlarge" }, { - "value": "m5a.4xlarge", - "name": "m5a_4xlarge" + "value": "m6gd.16xlarge", + "name": "m6gd_16xlarge" }, { - "value": "m5a.8xlarge", - "name": "m5a_8xlarge" + "value": "m6i.large", + "name": "m6i_large" }, { - "value": "m5a.12xlarge", - "name": "m5a_12xlarge" + "value": "m6i.xlarge", + "name": "m6i_xlarge" }, { - "value": "m5a.16xlarge", - "name": "m5a_16xlarge" + "value": "m6i.2xlarge", + "name": "m6i_2xlarge" }, { - "value": "m5a.24xlarge", - "name": "m5a_24xlarge" + "value": "m6i.4xlarge", + "name": "m6i_4xlarge" }, { - "value": "m5d.large", - "name": "m5d_large" + "value": "m6i.8xlarge", + "name": "m6i_8xlarge" }, { - "value": "m5d.xlarge", - "name": "m5d_xlarge" + "value": "m6i.12xlarge", + "name": "m6i_12xlarge" }, { - "value": "m5d.2xlarge", - "name": "m5d_2xlarge" + "value": "m6i.16xlarge", + "name": "m6i_16xlarge" }, { - "value": "m5d.4xlarge", - "name": "m5d_4xlarge" + "value": "m6i.24xlarge", + "name": "m6i_24xlarge" }, { - "value": "m5d.8xlarge", - "name": "m5d_8xlarge" + "value": "m6i.32xlarge", + "name": "m6i_32xlarge" }, { - "value": "m5d.12xlarge", - "name": "m5d_12xlarge" + "value": "mac1.metal", + "name": "mac1_metal" }, { - "value": "m5d.16xlarge", - "name": "m5d_16xlarge" + "value": "p2.xlarge", + "name": "p2_xlarge" }, { - "value": "m5d.24xlarge", - "name": "m5d_24xlarge" + "value": "p2.8xlarge", + "name": "p2_8xlarge" }, { - "value": "m5d.metal", - "name": "m5d_metal" + "value": "p2.16xlarge", + "name": "p2_16xlarge" }, { - "value": "m5ad.large", - "name": "m5ad_large" + "value": "p3.2xlarge", + "name": "p3_2xlarge" }, { - "value": "m5ad.xlarge", - "name": "m5ad_xlarge" + "value": "p3.8xlarge", + "name": "p3_8xlarge" }, { - "value": "m5ad.2xlarge", - "name": "m5ad_2xlarge" + "value": "p3.16xlarge", + "name": "p3_16xlarge" }, { - "value": "m5ad.4xlarge", - "name": "m5ad_4xlarge" + "value": "p3dn.24xlarge", + "name": "p3dn_24xlarge" }, { - "value": "m5ad.8xlarge", - "name": "m5ad_8xlarge" + "value": "p4d.24xlarge", + "name": "p4d_24xlarge" }, { - "value": "m5ad.12xlarge", - "name": "m5ad_12xlarge" + "value": "r3.large", + "name": "r3_large" }, { - "value": "m5ad.16xlarge", - "name": "m5ad_16xlarge" + "value": "r3.xlarge", + "name": "r3_xlarge" }, { - "value": "m5ad.24xlarge", - "name": "m5ad_24xlarge" + "value": "r3.2xlarge", + "name": "r3_2xlarge" }, { - "value": "m5zn.large", - "name": "m5zn_large" + "value": "r3.4xlarge", + "name": "r3_4xlarge" }, { - "value": "m5zn.xlarge", - "name": "m5zn_xlarge" + "value": "r3.8xlarge", + "name": "r3_8xlarge" }, { - "value": "m5zn.2xlarge", - "name": "m5zn_2xlarge" + "value": "r4.large", + "name": "r4_large" }, { - "value": "m5zn.3xlarge", - "name": "m5zn_3xlarge" + "value": "r4.xlarge", + "name": "r4_xlarge" }, { - "value": "m5zn.6xlarge", - "name": "m5zn_6xlarge" + "value": "r4.2xlarge", + "name": "r4_2xlarge" }, { - "value": "m5zn.12xlarge", - "name": "m5zn_12xlarge" + "value": "r4.4xlarge", + "name": "r4_4xlarge" }, { - "value": "m5zn.metal", - "name": "m5zn_metal" + "value": "r4.8xlarge", + "name": "r4_8xlarge" }, { - "value": "h1.2xlarge", - "name": "h1_2xlarge" + "value": "r4.16xlarge", + "name": "r4_16xlarge" }, { - "value": "h1.4xlarge", - "name": "h1_4xlarge" + "value": "r5.large", + "name": "r5_large" }, { - "value": "h1.8xlarge", - "name": "h1_8xlarge" + "value": "r5.xlarge", + "name": "r5_xlarge" }, { - "value": "h1.16xlarge", - "name": "h1_16xlarge" + "value": "r5.2xlarge", + "name": "r5_2xlarge" }, { - "value": "z1d.large", - "name": "z1d_large" + "value": "r5.4xlarge", + "name": "r5_4xlarge" }, { - "value": "z1d.xlarge", - "name": "z1d_xlarge" + "value": "r5.8xlarge", + "name": "r5_8xlarge" }, { - "value": "z1d.2xlarge", - "name": "z1d_2xlarge" + "value": "r5.12xlarge", + "name": "r5_12xlarge" }, { - "value": "z1d.3xlarge", - "name": "z1d_3xlarge" + "value": "r5.16xlarge", + "name": "r5_16xlarge" }, { - "value": "z1d.6xlarge", - "name": "z1d_6xlarge" + "value": "r5.24xlarge", + "name": "r5_24xlarge" }, { - "value": "z1d.12xlarge", - "name": "z1d_12xlarge" + "value": "r5.metal", + "name": "r5_metal" }, { - "value": "z1d.metal", - "name": "z1d_metal" + "value": "r5a.large", + "name": "r5a_large" }, { - "value": "u-6tb1.56xlarge", - "name": "u_6tb1_56xlarge" + "value": "r5a.xlarge", + "name": "r5a_xlarge" }, { - "value": "u-6tb1.112xlarge", - "name": "u_6tb1_112xlarge" + "value": "r5a.2xlarge", + "name": "r5a_2xlarge" }, { - "value": "u-9tb1.112xlarge", - "name": "u_9tb1_112xlarge" + "value": "r5a.4xlarge", + "name": "r5a_4xlarge" }, { - "value": "u-12tb1.112xlarge", - "name": "u_12tb1_112xlarge" + "value": "r5a.8xlarge", + "name": "r5a_8xlarge" }, { - "value": "u-6tb1.metal", - "name": "u_6tb1_metal" + "value": "r5a.12xlarge", + "name": "r5a_12xlarge" }, { - "value": "u-9tb1.metal", - "name": "u_9tb1_metal" + "value": "r5a.16xlarge", + "name": "r5a_16xlarge" }, { - "value": "u-12tb1.metal", - "name": "u_12tb1_metal" + "value": "r5a.24xlarge", + "name": "r5a_24xlarge" }, { - "value": "u-18tb1.metal", - "name": "u_18tb1_metal" + "value": "r5ad.large", + "name": "r5ad_large" }, { - "value": "u-24tb1.metal", - "name": "u_24tb1_metal" + "value": "r5ad.xlarge", + "name": "r5ad_xlarge" }, { - "value": "a1.medium", - "name": "a1_medium" + "value": "r5ad.2xlarge", + "name": "r5ad_2xlarge" }, { - "value": "a1.large", - "name": "a1_large" + "value": "r5ad.4xlarge", + "name": "r5ad_4xlarge" }, { - "value": "a1.xlarge", - "name": "a1_xlarge" + "value": "r5ad.8xlarge", + "name": "r5ad_8xlarge" }, { - "value": "a1.2xlarge", - "name": "a1_2xlarge" + "value": "r5ad.12xlarge", + "name": "r5ad_12xlarge" }, { - "value": "a1.4xlarge", - "name": "a1_4xlarge" + "value": "r5ad.16xlarge", + "name": "r5ad_16xlarge" }, { - "value": "a1.metal", - "name": "a1_metal" + "value": "r5ad.24xlarge", + "name": "r5ad_24xlarge" }, { - "value": "m5dn.large", - "name": "m5dn_large" + "value": "r5b.large", + "name": "r5b_large" }, { - "value": "m5dn.xlarge", - "name": "m5dn_xlarge" + "value": "r5b.xlarge", + "name": "r5b_xlarge" }, { - "value": "m5dn.2xlarge", - "name": "m5dn_2xlarge" + "value": "r5b.2xlarge", + "name": "r5b_2xlarge" }, { - "value": "m5dn.4xlarge", - "name": "m5dn_4xlarge" + "value": "r5b.4xlarge", + "name": "r5b_4xlarge" }, { - "value": "m5dn.8xlarge", - "name": "m5dn_8xlarge" + "value": "r5b.8xlarge", + "name": "r5b_8xlarge" }, { - "value": "m5dn.12xlarge", - "name": "m5dn_12xlarge" + "value": "r5b.12xlarge", + "name": "r5b_12xlarge" }, { - "value": "m5dn.16xlarge", - "name": "m5dn_16xlarge" + "value": "r5b.16xlarge", + "name": "r5b_16xlarge" }, { - "value": "m5dn.24xlarge", - "name": "m5dn_24xlarge" + "value": "r5b.24xlarge", + "name": "r5b_24xlarge" }, { - "value": "m5dn.metal", - "name": "m5dn_metal" + "value": "r5b.metal", + "name": "r5b_metal" }, { - "value": "m5n.large", - "name": "m5n_large" + "value": "r5d.large", + "name": "r5d_large" }, { - "value": "m5n.xlarge", - "name": "m5n_xlarge" + "value": "r5d.xlarge", + "name": "r5d_xlarge" }, { - "value": "m5n.2xlarge", - "name": "m5n_2xlarge" + "value": "r5d.2xlarge", + "name": "r5d_2xlarge" }, { - "value": "m5n.4xlarge", - "name": "m5n_4xlarge" + "value": "r5d.4xlarge", + "name": "r5d_4xlarge" }, { - "value": "m5n.8xlarge", - "name": "m5n_8xlarge" + "value": "r5d.8xlarge", + "name": "r5d_8xlarge" }, { - "value": "m5n.12xlarge", - "name": "m5n_12xlarge" + "value": "r5d.12xlarge", + "name": "r5d_12xlarge" }, { - "value": "m5n.16xlarge", - "name": "m5n_16xlarge" + "value": "r5d.16xlarge", + "name": "r5d_16xlarge" }, { - "value": "m5n.24xlarge", - "name": "m5n_24xlarge" + "value": "r5d.24xlarge", + "name": "r5d_24xlarge" }, { - "value": "m5n.metal", - "name": "m5n_metal" + "value": "r5d.metal", + "name": "r5d_metal" }, { "value": "r5dn.large", @@ -45889,208 +46516,228 @@ "name": "r5n_metal" }, { - "value": "inf1.xlarge", - "name": "inf1_xlarge" + "value": "r6g.medium", + "name": "r6g_medium" }, { - "value": "inf1.2xlarge", - "name": "inf1_2xlarge" + "value": "r6g.large", + "name": "r6g_large" }, { - "value": "inf1.6xlarge", - "name": "inf1_6xlarge" + "value": "r6g.xlarge", + "name": "r6g_xlarge" }, { - "value": "inf1.24xlarge", - "name": "inf1_24xlarge" + "value": "r6g.2xlarge", + "name": "r6g_2xlarge" }, { - "value": "m6g.metal", - "name": "m6g_metal" + "value": "r6g.4xlarge", + "name": "r6g_4xlarge" }, { - "value": "m6g.medium", - "name": "m6g_medium" + "value": "r6g.8xlarge", + "name": "r6g_8xlarge" }, { - "value": "m6g.large", - "name": "m6g_large" + "value": "r6g.12xlarge", + "name": "r6g_12xlarge" }, { - "value": "m6g.xlarge", - "name": "m6g_xlarge" + "value": "r6g.16xlarge", + "name": "r6g_16xlarge" }, { - "value": "m6g.2xlarge", - "name": "m6g_2xlarge" + "value": "r6g.metal", + "name": "r6g_metal" }, { - "value": "m6g.4xlarge", - "name": "m6g_4xlarge" + "value": "r6gd.medium", + "name": "r6gd_medium" }, { - "value": "m6g.8xlarge", - "name": "m6g_8xlarge" + "value": "r6gd.large", + "name": "r6gd_large" }, { - "value": "m6g.12xlarge", - "name": "m6g_12xlarge" + "value": "r6gd.xlarge", + "name": "r6gd_xlarge" }, { - "value": "m6g.16xlarge", - "name": "m6g_16xlarge" + "value": "r6gd.2xlarge", + "name": "r6gd_2xlarge" }, { - "value": "m6gd.metal", - "name": "m6gd_metal" + "value": "r6gd.4xlarge", + "name": "r6gd_4xlarge" }, { - "value": "m6gd.medium", - "name": "m6gd_medium" + "value": "r6gd.8xlarge", + "name": "r6gd_8xlarge" }, { - "value": "m6gd.large", - "name": "m6gd_large" + "value": "r6gd.12xlarge", + "name": "r6gd_12xlarge" }, { - "value": "m6gd.xlarge", - "name": "m6gd_xlarge" + "value": "r6gd.16xlarge", + "name": "r6gd_16xlarge" }, { - "value": "m6gd.2xlarge", - "name": "m6gd_2xlarge" + "value": "r6gd.metal", + "name": "r6gd_metal" }, { - "value": "m6gd.4xlarge", - "name": "m6gd_4xlarge" + "value": "t1.micro", + "name": "t1_micro" }, { - "value": "m6gd.8xlarge", - "name": "m6gd_8xlarge" + "value": "t2.nano", + "name": "t2_nano" }, { - "value": "m6gd.12xlarge", - "name": "m6gd_12xlarge" + "value": "t2.micro", + "name": "t2_micro" }, { - "value": "m6gd.16xlarge", - "name": "m6gd_16xlarge" + "value": "t2.small", + "name": "t2_small" }, { - "value": "m6a.large", - "name": "m6a_large" + "value": "t2.medium", + "name": "t2_medium" }, { - "value": "m6a.xlarge", - "name": "m6a_xlarge" + "value": "t2.large", + "name": "t2_large" }, { - "value": "m6a.2xlarge", - "name": "m6a_2xlarge" + "value": "t2.xlarge", + "name": "t2_xlarge" }, { - "value": "m6a.4xlarge", - "name": "m6a_4xlarge" + "value": "t2.2xlarge", + "name": "t2_2xlarge" }, { - "value": "m6a.8xlarge", - "name": "m6a_8xlarge" + "value": "t3.nano", + "name": "t3_nano" }, { - "value": "m6a.12xlarge", - "name": "m6a_12xlarge" + "value": "t3.micro", + "name": "t3_micro" }, { - "value": "m6a.16xlarge", - "name": "m6a_16xlarge" + "value": "t3.small", + "name": "t3_small" }, { - "value": "m6a.24xlarge", - "name": "m6a_24xlarge" + "value": "t3.medium", + "name": "t3_medium" }, { - "value": "m6a.32xlarge", - "name": "m6a_32xlarge" + "value": "t3.large", + "name": "t3_large" }, { - "value": "m6a.48xlarge", - "name": "m6a_48xlarge" + "value": "t3.xlarge", + "name": "t3_xlarge" }, { - "value": "m6i.large", - "name": "m6i_large" + "value": "t3.2xlarge", + "name": "t3_2xlarge" }, { - "value": "m6i.xlarge", - "name": "m6i_xlarge" + "value": "t3a.nano", + "name": "t3a_nano" }, { - "value": "m6i.2xlarge", - "name": "m6i_2xlarge" + "value": "t3a.micro", + "name": "t3a_micro" }, { - "value": "m6i.4xlarge", - "name": "m6i_4xlarge" + "value": "t3a.small", + "name": "t3a_small" }, { - "value": "m6i.8xlarge", - "name": "m6i_8xlarge" + "value": "t3a.medium", + "name": "t3a_medium" }, { - "value": "m6i.12xlarge", - "name": "m6i_12xlarge" + "value": "t3a.large", + "name": "t3a_large" }, { - "value": "m6i.16xlarge", - "name": "m6i_16xlarge" + "value": "t3a.xlarge", + "name": "t3a_xlarge" }, { - "value": "m6i.24xlarge", - "name": "m6i_24xlarge" + "value": "t3a.2xlarge", + "name": "t3a_2xlarge" }, { - "value": "m6i.32xlarge", - "name": "m6i_32xlarge" + "value": "t4g.nano", + "name": "t4g_nano" }, { - "value": "mac1.metal", - "name": "mac1_metal" + "value": "t4g.micro", + "name": "t4g_micro" }, { - "value": "x2gd.medium", - "name": "x2gd_medium" + "value": "t4g.small", + "name": "t4g_small" }, { - "value": "x2gd.large", - "name": "x2gd_large" + "value": "t4g.medium", + "name": "t4g_medium" }, { - "value": "x2gd.xlarge", - "name": "x2gd_xlarge" + "value": "t4g.large", + "name": "t4g_large" }, { - "value": "x2gd.2xlarge", - "name": "x2gd_2xlarge" + "value": "t4g.xlarge", + "name": "t4g_xlarge" }, { - "value": "x2gd.4xlarge", - "name": "x2gd_4xlarge" + "value": "t4g.2xlarge", + "name": "t4g_2xlarge" }, { - "value": "x2gd.8xlarge", - "name": "x2gd_8xlarge" + "value": "u-6tb1.56xlarge", + "name": "u_6tb1_56xlarge" }, { - "value": "x2gd.12xlarge", - "name": "x2gd_12xlarge" + "value": "u-6tb1.112xlarge", + "name": "u_6tb1_112xlarge" }, { - "value": "x2gd.16xlarge", - "name": "x2gd_16xlarge" + "value": "u-9tb1.112xlarge", + "name": "u_9tb1_112xlarge" }, { - "value": "x2gd.metal", - "name": "x2gd_metal" + "value": "u-12tb1.112xlarge", + "name": "u_12tb1_112xlarge" + }, + { + "value": "u-6tb1.metal", + "name": "u_6tb1_metal" + }, + { + "value": "u-9tb1.metal", + "name": "u_9tb1_metal" + }, + { + "value": "u-12tb1.metal", + "name": "u_12tb1_metal" + }, + { + "value": "u-18tb1.metal", + "name": "u_18tb1_metal" + }, + { + "value": "u-24tb1.metal", + "name": "u_24tb1_metal" }, { "value": "vt1.3xlarge", @@ -46105,108 +46752,100 @@ "name": "vt1_24xlarge" }, { - "value": "im4gn.16xlarge", - "name": "im4gn_16xlarge" - }, - { - "value": "im4gn.2xlarge", - "name": "im4gn_2xlarge" - }, - { - "value": "im4gn.4xlarge", - "name": "im4gn_4xlarge" + "value": "x1.16xlarge", + "name": "x1_16xlarge" }, { - "value": "im4gn.8xlarge", - "name": "im4gn_8xlarge" + "value": "x1.32xlarge", + "name": "x1_32xlarge" }, { - "value": "im4gn.large", - "name": "im4gn_large" + "value": "x1e.xlarge", + "name": "x1e_xlarge" }, { - "value": "im4gn.xlarge", - "name": "im4gn_xlarge" + "value": "x1e.2xlarge", + "name": "x1e_2xlarge" }, { - "value": "is4gen.2xlarge", - "name": "is4gen_2xlarge" + "value": "x1e.4xlarge", + "name": "x1e_4xlarge" }, { - "value": "is4gen.4xlarge", - "name": "is4gen_4xlarge" + "value": "x1e.8xlarge", + "name": "x1e_8xlarge" }, { - "value": "is4gen.8xlarge", - "name": "is4gen_8xlarge" + "value": "x1e.16xlarge", + "name": "x1e_16xlarge" }, { - "value": "is4gen.large", - "name": "is4gen_large" + "value": "x1e.32xlarge", + "name": "x1e_32xlarge" }, { - "value": "is4gen.medium", - "name": "is4gen_medium" + "value": "x2gd.medium", + "name": "x2gd_medium" }, { - "value": "is4gen.xlarge", - "name": "is4gen_xlarge" + "value": "x2gd.large", + "name": "x2gd_large" }, { - "value": "g5g.xlarge", - "name": "g5g_xlarge" + "value": "x2gd.xlarge", + "name": "x2gd_xlarge" }, { - "value": "g5g.2xlarge", - "name": "g5g_2xlarge" + "value": "x2gd.2xlarge", + "name": "x2gd_2xlarge" }, { - "value": "g5g.4xlarge", - "name": "g5g_4xlarge" + "value": "x2gd.4xlarge", + "name": "x2gd_4xlarge" }, { - "value": "g5g.8xlarge", - "name": "g5g_8xlarge" + "value": "x2gd.8xlarge", + "name": "x2gd_8xlarge" }, { - "value": "g5g.16xlarge", - "name": "g5g_16xlarge" + "value": "x2gd.12xlarge", + "name": "x2gd_12xlarge" }, { - "value": "g5g.metal", - "name": "g5g_metal" + "value": "x2gd.16xlarge", + "name": "x2gd_16xlarge" }, { - "value": "g5.xlarge", - "name": "g5_xlarge" + "value": "x2gd.metal", + "name": "x2gd_metal" }, { - "value": "g5.2xlarge", - "name": "g5_2xlarge" + "value": "z1d.large", + "name": "z1d_large" }, { - "value": "g5.4xlarge", - "name": "g5_4xlarge" + "value": "z1d.xlarge", + "name": "z1d_xlarge" }, { - "value": "g5.8xlarge", - "name": "g5_8xlarge" + "value": "z1d.2xlarge", + "name": "z1d_2xlarge" }, { - "value": "g5.12xlarge", - "name": "g5_12xlarge" + "value": "z1d.3xlarge", + "name": "z1d_3xlarge" }, { - "value": "g5.16xlarge", - "name": "g5_16xlarge" + "value": "z1d.6xlarge", + "name": "z1d_6xlarge" }, { - "value": "g5.24xlarge", - "name": "g5_24xlarge" + "value": "z1d.12xlarge", + "name": "z1d_12xlarge" }, { - "value": "g5.48xlarge", - "name": "g5_48xlarge" + "value": "z1d.metal", + "name": "z1d_metal" } ] } @@ -48670,13 +49309,13 @@ "Add": { "target": "com.amazonaws.ec2#LaunchPermissionList", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID to add to the list of launch permissions for the AMI.

" + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ARN, or OU ARN to add to the list of launch permissions for the AMI.

" } }, "Remove": { "target": "com.amazonaws.ec2#LaunchPermissionList", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID to remove from the list of launch permissions for the AMI.

" + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ARN, or OU ARN to remove from the list of launch permissions for the AMI.

" } } }, @@ -49570,7 +50209,7 @@ "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataEndpointState", "traits": { "aws.protocols#ec2QueryName": "HttpEndpoint", - "smithy.api#documentation": "

This parameter enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled.

\n \n

If you specify a value of disabled, you will not be able to access your instance metadata.\n

\n
", + "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is\n not specified, the default state is enabled.

\n \n

If you specify a value of disabled, you will not be able to access your instance metadata.\n

\n
", "smithy.api#xmlName": "httpEndpoint" } }, @@ -49581,6 +50220,14 @@ "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

\n

Default: disabled\n

", "smithy.api#xmlName": "httpProtocolIpv6" } + }, + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState", + "traits": { + "aws.protocols#ec2QueryName": "InstanceMetadataTags", + "smithy.api#documentation": "

\n \n

", + "smithy.api#xmlName": "instanceMetadataTags" + } } }, "traits": { @@ -49605,7 +50252,7 @@ "HttpEndpoint": { "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataEndpointState", "traits": { - "smithy.api#documentation": "

This parameter enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled.

\n \n

If you specify a value of disabled, you will not be able to access your instance metadata.\n

\n
" + "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not\n specified, the default state is enabled.

\n \n

If you specify a value of disabled, you will not be able to access your instance metadata.\n

\n
" } }, "HttpProtocolIpv6": { @@ -49613,6 +50260,12 @@ "traits": { "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

\n

Default: disabled\n

" } + }, + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState", + "traits": { + "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the instance\n metadata. For more information, see Work with\n instance tags using the instance metadata.

\n

Default: disabled\n

" + } } }, "traits": { @@ -49649,6 +50302,21 @@ ] } }, + "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "disabled", + "name": "disabled" + }, + { + "value": "enabled", + "name": "enabled" + } + ] + } + }, "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecification": { "type": "structure", "members": { @@ -52683,7 +53351,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, @@ -53109,7 +53777,7 @@ "HttpEndpoint": { "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", "traits": { - "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If\n the parameter is not specified, the existing state is maintained.

\n

If you specify a value of disabled, you cannot access your\n instance metadata.

" + "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If\n this parameter is not specified, the existing state is maintained.

\n

If you specify a value of disabled, you cannot access your\n instance metadata.

" } }, "DryRun": { @@ -53123,6 +53791,12 @@ "traits": { "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service. This setting \n applies only if you have enabled the HTTP metadata endpoint.

" } + }, + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#InstanceMetadataTagsState", + "traits": { + "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see Work with\n instance tags using the instance metadata.

\n

Default: disabled\n

" + } } } }, @@ -55570,7 +56244,7 @@ "DPDTimeoutSeconds": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The number of seconds after which a DPD timeout occurs.

\n

Constraints: A value between 0 and 30.

\n

Default: 30\n

" + "smithy.api#documentation": "

The number of seconds after which a DPD timeout occurs.

\n

Constraints: A value greater than or equal to 30.

\n

Default: 30\n

" } }, "DPDTimeoutAction": { @@ -55803,19 +56477,22 @@ "Cidr": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The BYOIP CIDR.

" + "smithy.api#documentation": "

The BYOIP CIDR.

", + "smithy.api#required": {} } }, "IpamPoolId": { "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#documentation": "

The IPAM pool ID.

" + "smithy.api#documentation": "

The IPAM pool ID.

", + "smithy.api#required": {} } }, "IpamPoolOwner": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the IPAM pool.

" + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the IPAM pool.

", + "smithy.api#required": {} } } } @@ -56940,6 +57617,9 @@ } } }, + "com.amazonaws.ec2#NetworkInsightsResourceId": { + "type": "string" + }, "com.amazonaws.ec2#NetworkInterface": { "type": "structure", "members": { @@ -58837,12 +59517,26 @@ "smithy.api#documentation": "

Any tags applied to the placement group.

", "smithy.api#xmlName": "tagSet" } + }, + "GroupArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the placement group.

", + "smithy.api#xmlName": "groupArn" + } } }, "traits": { "smithy.api#documentation": "

Describes a placement group.

" } }, + "com.amazonaws.ec2#PlacementGroupArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:aws([a-z-]+)?:ec2:[a-z\\d-]+:\\d{12}:placement-group/([^\\s].+[^\\s]){1,255}$" + } + }, "com.amazonaws.ec2#PlacementGroupId": { "type": "string" }, @@ -60868,7 +61562,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, @@ -63957,7 +64651,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -68723,13 +69417,13 @@ "target": "com.amazonaws.ec2#Integer", "traits": { "aws.protocols#ec2QueryName": "TerminationDelay", - "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Valid only when ReplacementStrategy is set to launch-before-terminate.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

", + "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Required when ReplacementStrategy is set to launch-before-terminate.

\n

Not valid when ReplacementStrategy is set to launch.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

", "smithy.api#xmlName": "terminationDelay" } } }, "traits": { - "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your\n Spot Instance is at an elevated risk of being interrupted. For more information, see\n Capacity rebalancing in the Amazon EC2 User Guide for Linux Instances.

" + "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your\n Spot Instance is at an elevated risk of being interrupted. For more information, see\n Capacity rebalancing in the Amazon EC2 User Guide for Linux Instances.

" } }, "com.amazonaws.ec2#SpotDatafeedSubscription": { @@ -69588,7 +70282,7 @@ "target": "com.amazonaws.ec2#SpotCapacityRebalance", "traits": { "aws.protocols#ec2QueryName": "CapacityRebalance", - "smithy.api#documentation": "

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an\n elevated risk of being interrupted.

", + "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your\n Spot Instance is at an elevated risk of being interrupted. For more information, see\n Capacity rebalancing in the Amazon EC2 User Guide for Linux Instances.

", "smithy.api#xmlName": "capacityRebalance" } } @@ -78165,7 +78859,7 @@ "DPDTimeoutSeconds": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The number of seconds after which a DPD timeout occurs.

\n

Constraints: A value between 0 and 30.

\n

Default: 30\n

" + "smithy.api#documentation": "

The number of seconds after which a DPD timeout occurs.

\n

Constraints: A value greater than or equal to 30.

\n

Default: 30\n

" } }, "DPDTimeoutAction": { diff --git a/codegen/sdk-codegen/aws-models/elasticache.2015-02-02.json b/codegen/sdk-codegen/aws-models/elasticache.2015-02-02.json index 0fc0988e6d6..720736231e1 100644 --- a/codegen/sdk-codegen/aws-models/elasticache.2015-02-02.json +++ b/codegen/sdk-codegen/aws-models/elasticache.2015-02-02.json @@ -727,7 +727,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The name of the compute and memory capacity node type for the cluster.

\n \n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

The name of the compute and memory capacity node type for the cluster.

\n \n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "Engine": { @@ -1083,7 +1083,7 @@ } }, "traits": { - "smithy.api#documentation": "

Represents an individual cache node within a cluster. Each cache node runs its own\n instance of the cluster's protocol-compliant caching software - either Memcached or\n Redis.

\n\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

Represents an individual cache node within a cluster. Each cache node runs its own\n instance of the cluster's protocol-compliant caching software - either Memcached or\n Redis.

\n\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "com.amazonaws.elasticache#CacheNodeIdsList": { @@ -2081,7 +2081,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The compute and memory capacity of the nodes in the node group (shard).

\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

The compute and memory capacity of the nodes in the node group (shard).

\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "Engine": { @@ -2639,7 +2639,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The compute and memory capacity of the nodes in the node group (shard).

\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

The compute and memory capacity of the nodes in the node group (shard).

\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "Engine": { @@ -4562,7 +4562,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The cache node type filter value. \n Use this parameter to show only those reservations matching the specified cache node type.

\n \n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

The cache node type filter value. \n Use this parameter to show only those reservations matching the specified cache node type.

\n \n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "Duration": { @@ -4641,7 +4641,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The cache node type filter value. \n Use this parameter to show only the available offerings matching the specified cache node type.

\n\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

The cache node type filter value. \n Use this parameter to show only the available offerings matching the specified cache node type.

\n\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "Duration": { @@ -6253,7 +6253,7 @@ "LogType": { "target": "com.amazonaws.elasticache#LogType", "traits": { - "smithy.api#documentation": "

Refers to slow-log.

" + "smithy.api#documentation": "

Refers to slow-log or engine-log.

" } }, "DestinationType": { @@ -6306,7 +6306,7 @@ "LogType": { "target": "com.amazonaws.elasticache#LogType", "traits": { - "smithy.api#documentation": "

Refers to slow-log.

" + "smithy.api#documentation": "

Refers to slow-log or engine-log..

" } }, "DestinationType": { @@ -6396,6 +6396,10 @@ { "value": "slow-log", "name": "SLOW_LOG" + }, + { + "value": "engine-log", + "name": "ENGINE_LOG" } ] } @@ -7905,7 +7909,7 @@ "LogType": { "target": "com.amazonaws.elasticache#LogType", "traits": { - "smithy.api#documentation": "

Refers to slow-log.

" + "smithy.api#documentation": "

Refers to slow-log or engine-log..

" } }, "DestinationType": { @@ -8180,7 +8184,7 @@ } ], "traits": { - "smithy.api#documentation": "

Reboots some, or all, of the cache nodes\n within a provisioned cluster. This operation applies any modified cache parameter\n groups to the cluster. The reboot operation takes place as soon as possible, and\n results in a momentary outage to the cluster. During the reboot, the cluster\n status is set to REBOOTING.

\n

The reboot causes the contents of the cache (for each cache node being rebooted) to be lost.

\n

When the reboot is complete, a cluster event is created.

\n\n

Rebooting a cluster is currently supported on Memcached and Redis (cluster mode disabled) clusters.\n Rebooting is not supported on Redis (cluster mode enabled) clusters.

\n \n

If you make changes to parameters that require a Redis (cluster mode enabled) cluster reboot for the changes to be applied,\n see Rebooting a Cluster for an alternate process.

" + "smithy.api#documentation": "

Reboots some, or all, of the cache nodes\n within a provisioned cluster. This operation applies any modified cache parameter\n groups to the cluster. The reboot operation takes place as soon as possible, and\n results in a momentary outage to the cluster. During the reboot, the cluster\n status is set to REBOOTING.

\n

The reboot causes the contents of the cache (for each cache node being rebooted) to be lost.

\n

When the reboot is complete, a cluster event is created.

\n\n

Rebooting a cluster is currently supported on Memcached and Redis (cluster mode disabled) clusters.\n Rebooting is not supported on Redis (cluster mode enabled) clusters.

\n \n

If you make changes to parameters that require a Redis (cluster mode enabled) cluster reboot for the changes to be applied,\n see Rebooting a Cluster for an alternate process.

" } }, "com.amazonaws.elasticache#RebootCacheClusterMessage": { @@ -8711,7 +8715,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The cache node type for the reserved cache nodes.

\n \n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

The cache node type for the reserved cache nodes.

\n \n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "StartTime": { @@ -8871,7 +8875,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The cache node type for the reserved cache node.

\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

The cache node type for the reserved cache node.

\n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "Duration": { @@ -9441,7 +9445,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The name of the compute and memory capacity node type for the source cluster.

\n \n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " + "smithy.api#documentation": "

The name of the compute and memory capacity node type for the source cluster.

\n \n

The following node types are supported by ElastiCache. \n\t\t\t\tGenerally speaking, the current generation types provide more memory and computational power\n\t\t\tat lower cost when compared to their equivalent previous generation counterparts.

\n\t\t \n\t\t\t\t\n\t\t

\n Additional node type info\n

\n\t\t " } }, "Engine": { diff --git a/codegen/sdk-codegen/aws-models/elasticsearchservice.2015-01-01.json b/codegen/sdk-codegen/aws-models/elasticsearchservice.2015-01-01.json index d5485e057e2..b282df3683a 100644 --- a/codegen/sdk-codegen/aws-models/elasticsearchservice.2015-01-01.json +++ b/codegen/sdk-codegen/aws-models/elasticsearchservice.2015-01-01.json @@ -261,6 +261,18 @@ "traits": { "smithy.api#documentation": "

Describes the SAML application configured for a domain.

" } + }, + "AnonymousAuthDisableDate": { + "target": "com.amazonaws.elasticsearchservice#DisableTimestamp", + "traits": { + "smithy.api#documentation": "

Specifies the Anonymous Auth Disable Date when Anonymous Auth is enabled.

" + } + }, + "AnonymousAuthEnabled": { + "target": "com.amazonaws.elasticsearchservice#Boolean", + "traits": { + "smithy.api#documentation": "

True if Anonymous auth is enabled. Anonymous auth can be enabled only when AdvancedSecurity is enabled on existing domains.

" + } } }, "traits": { @@ -293,6 +305,12 @@ "traits": { "smithy.api#documentation": "

Specifies the SAML application configuration for the domain.

" } + }, + "AnonymousAuthEnabled": { + "target": "com.amazonaws.elasticsearchservice#Boolean", + "traits": { + "smithy.api#documentation": "

True if Anonymous auth is enabled. Anonymous auth can be enabled only when AdvancedSecurity is enabled on existing domains.

" + } } }, "traits": { @@ -323,6 +341,24 @@ }, "com.amazonaws.elasticsearchservice#AmazonElasticsearchService2015": { "type": "service", + "traits": { + "aws.api#service": { + "sdkId": "Elasticsearch Service", + "arnNamespace": "es", + "cloudFormationName": "Elasticsearch", + "cloudTrailEventSource": "elasticsearchservice.amazonaws.com", + "endpointPrefix": "es" + }, + "aws.auth#sigv4": { + "name": "es" + }, + "aws.protocols#restJson1": {}, + "smithy.api#documentation": "Amazon Elasticsearch Configuration Service\n

Use the Amazon Elasticsearch Configuration API to create, configure, and manage Elasticsearch domains.

\n

For sample code that uses the Configuration API, see the Amazon Elasticsearch Service Developer Guide.\n The guide also contains sample code for sending signed HTTP requests to the Elasticsearch APIs.

\n

The endpoint for configuration service requests is region-specific: es.region.amazonaws.com.\n For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints,\n see Regions and Endpoints.

", + "smithy.api#title": "Amazon Elasticsearch Service", + "smithy.api#xmlNamespace": { + "uri": "http://es.amazonaws.com/doc/2015-01-01/" + } + }, "version": "2015-01-01", "operations": [ { @@ -445,25 +481,7 @@ { "target": "com.amazonaws.elasticsearchservice#UpgradeElasticsearchDomain" } - ], - "traits": { - "aws.api#service": { - "sdkId": "Elasticsearch Service", - "arnNamespace": "es", - "cloudFormationName": "Elasticsearch", - "cloudTrailEventSource": "elasticsearchservice.amazonaws.com", - "endpointPrefix": "es" - }, - "aws.auth#sigv4": { - "name": "es" - }, - "aws.protocols#restJson1": {}, - "smithy.api#documentation": "Amazon Elasticsearch Configuration Service\n

Use the Amazon Elasticsearch Configuration API to create, configure, and manage Elasticsearch domains.

\n

For sample code that uses the Configuration API, see the Amazon Elasticsearch Service Developer Guide.\n The guide also contains sample code for sending signed HTTP requests to the Elasticsearch APIs.

\n

The endpoint for configuration service requests is region-specific: es.region.amazonaws.com.\n For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints,\n see Regions and Endpoints.

", - "smithy.api#title": "Amazon Elasticsearch Service", - "smithy.api#xmlNamespace": { - "uri": "http://es.amazonaws.com/doc/2015-01-01/" - } - } + ] }, "com.amazonaws.elasticsearchservice#AssociatePackage": { "type": "operation", @@ -2508,6 +2526,9 @@ "smithy.api#documentation": "

Container for results from DescribeReservedElasticsearchInstances

" } }, + "com.amazonaws.elasticsearchservice#DisableTimestamp": { + "type": "timestamp" + }, "com.amazonaws.elasticsearchservice#DisabledOperationException": { "type": "structure", "members": { diff --git a/codegen/sdk-codegen/aws-models/finspacedata.2020-07-13.json b/codegen/sdk-codegen/aws-models/finspacedata.2020-07-13.json index 1ebe692d233..1011253ed4b 100644 --- a/codegen/sdk-codegen/aws-models/finspacedata.2020-07-13.json +++ b/codegen/sdk-codegen/aws-models/finspacedata.2020-07-13.json @@ -253,7 +253,8 @@ "activeFromTimestamp": { "target": "com.amazonaws.finspacedata#TimestampEpoch", "traits": { - "smithy.api#box": {} + "smithy.api#box": {}, + "smithy.api#documentation": "

Beginning time from which the Changeset is active. The value is determined as Epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

" } }, "updatesChangesetId": { @@ -465,7 +466,7 @@ "clientToken": { "target": "com.amazonaws.finspacedata#ClientToken", "traits": { - "smithy.api#documentation": "

A token used to ensure idempotency.

", + "smithy.api#documentation": "

A token that ensures idempotency. This token expires in 10 minutes.

", "smithy.api#idempotencyToken": {} } }, @@ -487,14 +488,14 @@ "sourceParams": { "target": "com.amazonaws.finspacedata#SourceParams", "traits": { - "smithy.api#documentation": "

Options that define the location of the data being ingested.

", + "smithy.api#documentation": "

Options that define the location of the data being ingested (s3SourcePath) and the source of the changeset (sourceType).

\n

Both s3SourcePath and sourceType are required attributes.

\n

Here is an example of how you could specify the sourceParams:

\n

\n \n \"sourceParams\": \n {\n \"s3SourcePath\": \"s3://finspace-landing-us-east-2-bk7gcfvitndqa6ebnvys4d/scratch/wr5hh8pwkpqqkxa4sxrmcw/ingestion/equity.csv\",\n \"sourceType\": \"S3\"\n }\n \n

\n

The S3 path that you specify must allow the FinSpace role access. To do that, you first need to configure the IAM policy on S3 bucket. For more information, see Loading data from an Amazon S3 Bucket using the FinSpace APIsection.

", "smithy.api#required": {} } }, "formatParams": { "target": "com.amazonaws.finspacedata#FormatParams", "traits": { - "smithy.api#documentation": "

Options that define the structure of the source file(s) including the format type (formatType), header row (withHeader), data separation character (separator) and the type of compression (compression).\n

\n

\n formatType is a required attribute and can have the following values:\n

\n \n \n

\n \n For example, you could specify the following for formatParams:\n \n \n \"formatParams\": \n {\n \"formatType\": \"CSV\",\n \"withHeader\": \"true\",\n \"separator\": \",\",\n \"compression\":\"None\"\n } \n \n

", + "smithy.api#documentation": "

Options that define the structure of the source file(s) including the format type (formatType), header row (withHeader), data separation character (separator) and the type of compression (compression).\n

\n

\n formatType is a required attribute and can have the following values:\n

\n \n \n

Here is an example of how you could specify the formatParams:

\n

\n \n \"formatParams\": \n {\n \"formatType\": \"CSV\",\n \"withHeader\": \"true\",\n \"separator\": \",\",\n \"compression\":\"None\"\n } \n \n

\n

Note that if you only provide formatType as CSV, the rest of the attributes will automatically default to CSV values as following:

\n

\n \n {\n \"withHeader\": \"true\",\n \"separator\": \",\"\n }\n \n

\n

For more information about supported file formats, see Supported Data Types and File Formats in the FinSpace User Guide.

", "smithy.api#required": {} } } @@ -566,7 +567,7 @@ "clientToken": { "target": "com.amazonaws.finspacedata#ClientToken", "traits": { - "smithy.api#documentation": "

A token used to ensure idempotency.

", + "smithy.api#documentation": "

A token that ensures idempotency. This token expires in 10 minutes.

", "smithy.api#idempotencyToken": {} } }, @@ -681,7 +682,7 @@ "clientToken": { "target": "com.amazonaws.finspacedata#ClientToken", "traits": { - "smithy.api#documentation": "

A token used to ensure idempotency.

", + "smithy.api#documentation": "

A token that ensures idempotency. This token expires in 10 minutes.

", "smithy.api#idempotencyToken": {} } }, @@ -793,15 +794,21 @@ "destinationType": { "target": "com.amazonaws.finspacedata#DataViewDestinationType", "traits": { - "smithy.api#documentation": "

Destination type for a Dataview.

\n ", + "smithy.api#documentation": "

Destination type for a Dataview.

\n ", "smithy.api#required": {} } }, "s3DestinationExportFileFormat": { - "target": "com.amazonaws.finspacedata#ExportFileFormat" + "target": "com.amazonaws.finspacedata#ExportFileFormat", + "traits": { + "smithy.api#documentation": "

Data view export file format.

\n " + } }, "s3DestinationExportFileFormatOptions": { - "target": "com.amazonaws.finspacedata#S3DestinationFormatOptions" + "target": "com.amazonaws.finspacedata#S3DestinationFormatOptions", + "traits": { + "smithy.api#documentation": "

Format Options for S3 Destination type.

\n

Here is an example of how you could specify the s3DestinationExportFileFormatOptions \n

\n

\n \n {\n \"header\": \"true\",\n \"delimiter\": \",\",\n \"compression\": \"gzip\"\n }\n

" + } } }, "traits": { @@ -1195,7 +1202,7 @@ "clientToken": { "target": "com.amazonaws.finspacedata#ClientToken", "traits": { - "smithy.api#documentation": "

A token used to ensure idempotency.

", + "smithy.api#documentation": "

A token that ensures idempotency. This token expires in 10 minutes.

", "smithy.api#httpQuery": "clientToken", "smithy.api#idempotencyToken": {} } @@ -1447,7 +1454,8 @@ "activeFromTimestamp": { "target": "com.amazonaws.finspacedata#TimestampEpoch", "traits": { - "smithy.api#box": {} + "smithy.api#box": {}, + "smithy.api#documentation": "

Beginning time from which the Changeset is active. The value is determined as Epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

" } }, "updatesChangesetId": { @@ -2244,7 +2252,7 @@ } }, "traits": { - "smithy.api#documentation": "

Permission group parameters for Dataset permissions.

" + "smithy.api#documentation": "

Permission group parameters for Dataset permissions.

\n

Here is an example of how you could specify the PermissionGroupParams:

\n

\n \n {\n \"permissionGroupId\": \"0r6fCRtSTUk4XPfXQe3M0g\",\n \"datasetPermissions\": [\n {\"permission\": \"ViewDatasetDetails\"},\n {\"permission\": \"AddDatasetData\"},\n {\"permission\": \"EditDatasetMetadata\"},\n {\"permission\": \"DeleteDataset\"}\n ]\n }\n \n

" } }, "com.amazonaws.finspacedata#PhoneNumber": { @@ -2282,7 +2290,7 @@ } }, "traits": { - "smithy.api#documentation": "

Resource permission for a Dataset.

" + "smithy.api#documentation": "

Resource permission for a dataset. When you create a dataset, all the other members of the same user group inherit access to the dataset. You can only create a dataset if your user group has application permission for Create Datasets.

\n

The following is a list of valid dataset permissions that you can apply:\n \n

\n \n

For more information on the ataset permissions, see Supported Dataset Permissions in the FinSpace User Guide.

" } }, "com.amazonaws.finspacedata#ResourcePermissionsList": { @@ -2486,7 +2494,7 @@ "clientToken": { "target": "com.amazonaws.finspacedata#ClientToken", "traits": { - "smithy.api#documentation": "

A token used to ensure idempotency.

", + "smithy.api#documentation": "

A token that ensures idempotency. This token expires in 10 minutes.

", "smithy.api#idempotencyToken": {} } }, @@ -2509,14 +2517,14 @@ "sourceParams": { "target": "com.amazonaws.finspacedata#SourceParams", "traits": { - "smithy.api#documentation": "

Options that define the location of the data being ingested.

", + "smithy.api#documentation": "

Options that define the location of the data being ingested (s3SourcePath) and the source of the changeset (sourceType).

\n

Both s3SourcePath and sourceType are required attributes.

\n

Here is an example of how you could specify the sourceParams:

\n

\n \n \"sourceParams\": \n {\n \"s3SourcePath\": \"s3://finspace-landing-us-east-2-bk7gcfvitndqa6ebnvys4d/scratch/wr5hh8pwkpqqkxa4sxrmcw/ingestion/equity.csv\",\n \"sourceType\": \"S3\"\n }\n \n

\n

The S3 path that you specify must allow the FinSpace role access. To do that, you first need to configure the IAM policy on S3 bucket. For more information, see Loading data from an Amazon S3 Bucket using the FinSpace APIsection.

", "smithy.api#required": {} } }, "formatParams": { "target": "com.amazonaws.finspacedata#FormatParams", "traits": { - "smithy.api#documentation": "

Options that define the structure of the source file(s).

", + "smithy.api#documentation": "

Options that define the structure of the source file(s) including the format type (formatType), header row (withHeader), data separation character (separator) and the type of compression (compression).\n

\n

\n formatType is a required attribute and can have the following values:\n

\n \n \n

Here is an example of how you could specify the formatParams:

\n

\n \n \"formatParams\": \n {\n \"formatType\": \"CSV\",\n \"withHeader\": \"true\",\n \"separator\": \",\",\n \"compression\":\"None\"\n } \n \n

\n

Note that if you only provide formatType as CSV, the rest of the attributes will automatically default to CSV values as following:

\n

\n \n {\n \"withHeader\": \"true\",\n \"separator\": \",\"\n }\n \n

\n

For more information about supported file formats, see Supported Data Types and File Formats in the FinSpace User Guide.

", "smithy.api#required": {} } } @@ -2588,7 +2596,7 @@ "clientToken": { "target": "com.amazonaws.finspacedata#ClientToken", "traits": { - "smithy.api#documentation": "

A token used to ensure idempotency.

", + "smithy.api#documentation": "

A token that ensures idempotency. This token expires in 10 minutes.

", "smithy.api#idempotencyToken": {} } }, diff --git a/codegen/sdk-codegen/aws-models/fms.2018-01-01.json b/codegen/sdk-codegen/aws-models/fms.2018-01-01.json index ac57722b98f..1ae607a8ffe 100644 --- a/codegen/sdk-codegen/aws-models/fms.2018-01-01.json +++ b/codegen/sdk-codegen/aws-models/fms.2018-01-01.json @@ -41,6 +41,21 @@ }, "com.amazonaws.fms#AWSFMS_20180101": { "type": "service", + "traits": { + "aws.api#service": { + "sdkId": "FMS", + "arnNamespace": "fms", + "cloudFormationName": "FMS", + "cloudTrailEventSource": "fms.amazonaws.com", + "endpointPrefix": "fms" + }, + "aws.auth#sigv4": { + "name": "fms" + }, + "aws.protocols#awsJson1_1": {}, + "smithy.api#documentation": "

This is the Firewall Manager API Reference. This guide is for\n developers who need detailed information about the Firewall Manager API actions, data\n types, and errors. For detailed information about Firewall Manager features, see the\n Firewall Manager Developer Guide.

\n

Some API actions require explicit resource permissions. For information, see the developer guide topic \n Firewall Manager required permissions for API actions.\n

", + "smithy.api#title": "Firewall Management Service" + }, "version": "2018-01-01", "operations": [ { @@ -121,22 +136,7 @@ { "target": "com.amazonaws.fms#UntagResource" } - ], - "traits": { - "aws.api#service": { - "sdkId": "FMS", - "arnNamespace": "fms", - "cloudFormationName": "FMS", - "cloudTrailEventSource": "fms.amazonaws.com", - "endpointPrefix": "fms" - }, - "aws.auth#sigv4": { - "name": "fms" - }, - "aws.protocols#awsJson1_1": {}, - "smithy.api#documentation": "

This is the Firewall Manager API Reference. This guide is for\n developers who need detailed information about the Firewall Manager API actions, data\n types, and errors. For detailed information about Firewall Manager features, see the\n Firewall Manager Developer Guide.

\n

Some API actions require explicit resource permissions. For information, see the developer guide topic \n Firewall Manager required permissions for API actions.\n

", - "smithy.api#title": "Firewall Management Service" - } + ] }, "com.amazonaws.fms#AccountRoleStatus": { "type": "string", @@ -2127,7 +2127,7 @@ "traits": { "smithy.api#length": { "min": 1, - "max": 4096 + "max": 8192 }, "smithy.api#pattern": ".*" } @@ -2744,7 +2744,7 @@ "ResourceType": { "target": "com.amazonaws.fms#ResourceType", "traits": { - "smithy.api#documentation": "

The type of resource protected by or in scope of the policy. This is in the format shown\n in the Amazon Web Services Resource Types Reference.\n To apply this policy to multiple resource types, specify a resource type of ResourceTypeList and then specify the resource types in a ResourceTypeList.

\n

For WAF and Shield Advanced, example resource types include\n AWS::ElasticLoadBalancingV2::LoadBalancer and\n AWS::CloudFront::Distribution. For a security group common policy, valid values\n are AWS::EC2::NetworkInterface and AWS::EC2::Instance. For a\n security group content audit policy, valid values are AWS::EC2::SecurityGroup,\n AWS::EC2::NetworkInterface, and AWS::EC2::Instance. For a security\n group usage audit policy, the value is AWS::EC2::SecurityGroup. For an Network Firewall policy or DNS Firewall policy,\n the value is AWS::EC2::VPC.

", + "smithy.api#documentation": "

The type of resource protected by or in scope of the policy. This is in the format shown\n in the Amazon Web Services Resource Types Reference.\n To apply this policy to multiple resource types, specify a resource type of ResourceTypeList and then specify the resource types in a ResourceTypeList.

\n

For WAF and Shield Advanced, resource types include\n AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::ElasticLoadBalancing::LoadBalancer, AWS::EC2::EIP, and\n AWS::CloudFront::Distribution. For a security group common policy, valid values\n are AWS::EC2::NetworkInterface and AWS::EC2::Instance. For a\n security group content audit policy, valid values are AWS::EC2::SecurityGroup,\n AWS::EC2::NetworkInterface, and AWS::EC2::Instance. For a security\n group usage audit policy, the value is AWS::EC2::SecurityGroup. For an Network Firewall policy or DNS Firewall policy,\n the value is AWS::EC2::VPC.

", "smithy.api#required": {} } }, @@ -2777,7 +2777,7 @@ "DeleteUnusedFMManagedResources": { "target": "com.amazonaws.fms#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether Firewall Manager should delete Firewall Manager managed resources, such as web ACLs and security groups, when they are not in use by the Firewall Manager policy. By default, Firewall Manager doesn't delete unused Firewall Manager managed resources. This option is not available for Shield Advanced or WAF Classic policies.

" + "smithy.api#documentation": "

Indicates whether Firewall Manager should automatically remove protections from resources that leave the policy scope and clean up resources \n that Firewall Manager is managing for accounts when those accounts leave policy scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL \n from a protected customer resource when the customer resource leaves policy scope.

\n

By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources.

\n

This option is not available for Shield Advanced or WAF Classic policies.

" } }, "IncludeMap": { @@ -2970,7 +2970,7 @@ "DeleteUnusedFMManagedResources": { "target": "com.amazonaws.fms#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether Firewall Manager should delete Firewall Manager managed resources, such as web ACLs and security groups, when they are not in use by the Firewall Manager policy. By default, Firewall Manager doesn't delete unused Firewall Manager managed resources. This option is not available for Shield Advanced or WAF Classic policies.

" + "smithy.api#documentation": "

Indicates whether Firewall Manager should automatically remove protections from resources that leave the policy scope and clean up resources \n that Firewall Manager is managing for accounts when those accounts leave policy scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL \n from a protected customer resource when the customer resource leaves policy scope.

\n

By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources.

\n

This option is not available for Shield Advanced or WAF Classic policies.

" } } }, @@ -3316,7 +3316,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an Firewall Manager policy.

\n

Firewall Manager provides the following types of policies:

\n \n

Each policy is specific to one of the types. If you want to enforce more than one\n policy type across accounts, create multiple policies. You can create multiple\n policies for each type.

\n

You must be subscribed to Shield Advanced to create a Shield Advanced policy. For more\n information about subscribing to Shield Advanced, see \n CreateSubscription.

" + "smithy.api#documentation": "

Creates an Firewall Manager policy.

\n

Firewall Manager provides the following types of policies:

\n \n

Each policy is specific to one of the types. If you want to enforce more than one\n policy type across accounts, create multiple policies. You can create multiple\n policies for each type.

\n

You must be subscribed to Shield Advanced to create a Shield Advanced policy. For more\n information about subscribing to Shield Advanced, see \n CreateSubscription.

" } }, "com.amazonaws.fms#PutPolicyRequest": { @@ -3893,7 +3893,7 @@ "ManagedServiceData": { "target": "com.amazonaws.fms#ManagedServiceData", "traits": { - "smithy.api#documentation": "

Details about the service that are specific to the service type, in JSON format. For\n service type SHIELD_ADVANCED, this is an empty string.

\n " + "smithy.api#documentation": "

Details about the service that are specific to the service type, in JSON format.

\n " } } }, diff --git a/codegen/sdk-codegen/aws-models/glue.2017-03-31.json b/codegen/sdk-codegen/aws-models/glue.2017-03-31.json index b0089974c26..91257167905 100644 --- a/codegen/sdk-codegen/aws-models/glue.2017-03-31.json +++ b/codegen/sdk-codegen/aws-models/glue.2017-03-31.json @@ -18030,6 +18030,12 @@ "smithy.api#documentation": "

The name of the workflow to start.

", "smithy.api#required": {} } + }, + "RunProperties": { + "target": "com.amazonaws.glue#WorkflowRunProperties", + "traits": { + "smithy.api#documentation": "

The workflow run properties for the new workflow run.

" + } } } }, diff --git a/codegen/sdk-codegen/aws-models/honeycode.2020-03-01.json b/codegen/sdk-codegen/aws-models/honeycode.2020-03-01.json index 6445a23a04f..538dbe1960f 100644 --- a/codegen/sdk-codegen/aws-models/honeycode.2020-03-01.json +++ b/codegen/sdk-codegen/aws-models/honeycode.2020-03-01.json @@ -274,7 +274,7 @@ "com.amazonaws.honeycode#BatchErrorMessage": { "type": "string", "traits": { - "smithy.api#pattern": "^(?!\\s*$).+" + "smithy.api#pattern": "^(?!\\s*$).+$" } }, "com.amazonaws.honeycode#BatchItemId": { @@ -284,7 +284,7 @@ "min": 1, "max": 64 }, - "smithy.api#pattern": "^(?!\\s*$).+" + "smithy.api#pattern": "^(?!\\s*$).+$" } }, "com.amazonaws.honeycode#BatchUpdateTableRows": { @@ -541,7 +541,7 @@ "min": 32, "max": 64 }, - "smithy.api#pattern": "^(?!\\s*$).+" + "smithy.api#pattern": "^(?!\\s*$).+$" } }, "com.amazonaws.honeycode#ColumnMetadata": { @@ -812,7 +812,7 @@ "min": 0, "max": 8192 }, - "smithy.api#pattern": "[\\s\\S]*", + "smithy.api#pattern": "^[\\s\\S]*$", "smithy.api#sensitive": {} } }, @@ -929,7 +929,7 @@ "min": 0, "max": 8192 }, - "smithy.api#pattern": "[\\s\\S]*" + "smithy.api#pattern": "^[\\s\\S]*$" } }, "com.amazonaws.honeycode#Formula": { @@ -939,7 +939,7 @@ "min": 0, "max": 8192 }, - "smithy.api#pattern": "^=.*", + "smithy.api#pattern": "^=", "smithy.api#sensitive": {} } }, @@ -996,7 +996,7 @@ "appId": { "target": "com.amazonaws.honeycode#ResourceId", "traits": { - "smithy.api#documentation": "

The ID of the app that contains the screem.

", + "smithy.api#documentation": "

The ID of the app that contains the screen.

", "smithy.api#required": {} } }, @@ -1634,6 +1634,70 @@ } } }, + "com.amazonaws.honeycode#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.honeycode#ListTagsForResourceRequest" + }, + "output": { + "target": "com.amazonaws.honeycode#ListTagsForResourceResult" + }, + "errors": [ + { + "target": "com.amazonaws.honeycode#AccessDeniedException" + }, + { + "target": "com.amazonaws.honeycode#InternalServerException" + }, + { + "target": "com.amazonaws.honeycode#RequestTimeoutException" + }, + { + "target": "com.amazonaws.honeycode#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.honeycode#ServiceUnavailableException" + }, + { + "target": "com.amazonaws.honeycode#ThrottlingException" + }, + { + "target": "com.amazonaws.honeycode#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

\n The ListTagsForResource API allows you to return a resource's tags.\n

", + "smithy.api#http": { + "method": "GET", + "uri": "/tags/{resourceArn}", + "code": 200 + } + } + }, + "com.amazonaws.honeycode#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.honeycode#ResourceArn", + "traits": { + "smithy.api#documentation": "

The resource's Amazon Resource Name (ARN).

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + } + }, + "com.amazonaws.honeycode#ListTagsForResourceResult": { + "type": "structure", + "members": { + "tags": { + "target": "com.amazonaws.honeycode#TagsMap", + "traits": { + "smithy.api#documentation": "

The resource's tags.

" + } + } + } + }, "com.amazonaws.honeycode#MaxResults": { "type": "integer", "traits": { @@ -1657,7 +1721,7 @@ "min": 1, "max": 1024 }, - "smithy.api#pattern": "^(?!\\s*$).+" + "smithy.api#pattern": "^(?!\\s*$).+$" } }, "com.amazonaws.honeycode#QueryTableRows": { @@ -1784,7 +1848,7 @@ "min": 0, "max": 32767 }, - "smithy.api#pattern": "[\\s\\S]*" + "smithy.api#pattern": "^[\\s\\S]*$" } }, "com.amazonaws.honeycode#RequestTimeoutException": { @@ -1800,6 +1864,16 @@ "smithy.api#httpError": 504 } }, + "com.amazonaws.honeycode#ResourceArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^arn:aws:honeycode:.+:[0-9]{12}:.+:.+$" + } + }, "com.amazonaws.honeycode#ResourceId": { "type": "string", "traits": { @@ -1807,7 +1881,7 @@ "min": 36, "max": 36 }, - "smithy.api#pattern": "[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}" + "smithy.api#pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$" } }, "com.amazonaws.honeycode#ResourceIds": { @@ -1921,7 +1995,7 @@ "min": 77, "max": 77 }, - "smithy.api#pattern": "row:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\\/[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}" + "smithy.api#pattern": "^row:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\\/[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$" } }, "com.amazonaws.honeycode#RowIdList": { @@ -1977,6 +2051,21 @@ }, "com.amazonaws.honeycode#SheetsPublicApiService": { "type": "service", + "traits": { + "aws.api#service": { + "sdkId": "Honeycode", + "arnNamespace": "honeycode", + "cloudFormationName": "Honeycode", + "cloudTrailEventSource": "honeycode.amazonaws.com", + "endpointPrefix": "honeycode" + }, + "aws.auth#sigv4": { + "name": "honeycode" + }, + "aws.protocols#restJson1": {}, + "smithy.api#documentation": "

\n Amazon Honeycode is a fully managed service that allows you to quickly build mobile and web apps for teams—without\n programming. Build Honeycode apps for managing almost anything, like projects, customers, operations, approvals,\n resources, and even your team.\n

", + "smithy.api#title": "Amazon Honeycode" + }, "version": "2020-03-01", "operations": [ { @@ -2009,28 +2098,22 @@ { "target": "com.amazonaws.honeycode#ListTables" }, + { + "target": "com.amazonaws.honeycode#ListTagsForResource" + }, { "target": "com.amazonaws.honeycode#QueryTableRows" }, { "target": "com.amazonaws.honeycode#StartTableDataImportJob" - } - ], - "traits": { - "aws.api#service": { - "sdkId": "Honeycode", - "arnNamespace": "honeycode", - "cloudFormationName": "Honeycode", - "cloudTrailEventSource": "honeycode.amazonaws.com", - "endpointPrefix": "honeycode" }, - "aws.auth#sigv4": { - "name": "honeycode" + { + "target": "com.amazonaws.honeycode#TagResource" }, - "aws.protocols#restJson1": {}, - "smithy.api#documentation": "

\n Amazon Honeycode is a fully managed service that allows you to quickly build mobile and web apps for teams—without\n programming. Build Honeycode apps for managing almost anything, like projects, customers, operations, approvals,\n resources, and even your team.\n

", - "smithy.api#title": "Amazon Honeycode" - } + { + "target": "com.amazonaws.honeycode#UntagResource" + } + ] }, "com.amazonaws.honeycode#SourceDataColumnIndex": { "type": "integer", @@ -2313,6 +2396,119 @@ "target": "com.amazonaws.honeycode#Table" } }, + "com.amazonaws.honeycode#TagKey": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^[^\\n\\r\\x00\\x08\\x0B\\x0C\\x0E\\x1F]*$" + } + }, + "com.amazonaws.honeycode#TagKeysList": { + "type": "list", + "member": { + "target": "com.amazonaws.honeycode#TagKey" + }, + "traits": { + "smithy.api#documentation": "

A list of tag keys

", + "smithy.api#length": { + "min": 0, + "max": 100 + } + } + }, + "com.amazonaws.honeycode#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.honeycode#TagResourceRequest" + }, + "output": { + "target": "com.amazonaws.honeycode#TagResourceResult" + }, + "errors": [ + { + "target": "com.amazonaws.honeycode#AccessDeniedException" + }, + { + "target": "com.amazonaws.honeycode#InternalServerException" + }, + { + "target": "com.amazonaws.honeycode#RequestTimeoutException" + }, + { + "target": "com.amazonaws.honeycode#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.honeycode#ServiceUnavailableException" + }, + { + "target": "com.amazonaws.honeycode#ThrottlingException" + }, + { + "target": "com.amazonaws.honeycode#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

\n The TagResource API allows you to add tags to an ARN-able resource. Resource includes workbook, table,\n screen and screen-automation.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/tags/{resourceArn}", + "code": 200 + } + } + }, + "com.amazonaws.honeycode#TagResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.honeycode#ResourceArn", + "traits": { + "smithy.api#documentation": "

The resource's Amazon Resource Name (ARN).

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "tags": { + "target": "com.amazonaws.honeycode#TagsMap", + "traits": { + "smithy.api#documentation": "

A list of tags to apply to the resource.

", + "smithy.api#required": {} + } + } + } + }, + "com.amazonaws.honeycode#TagResourceResult": { + "type": "structure", + "members": {} + }, + "com.amazonaws.honeycode#TagValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^[^\\n\\r\\x00\\x08\\x0B\\x0C\\x0E\\x1F]*$" + } + }, + "com.amazonaws.honeycode#TagsMap": { + "type": "map", + "key": { + "target": "com.amazonaws.honeycode#TagKey" + }, + "value": { + "target": "com.amazonaws.honeycode#TagValue" + }, + "traits": { + "smithy.api#documentation": "

A string to string map representing tags

", + "smithy.api#length": { + "min": 0, + "max": 100 + } + } + }, "com.amazonaws.honeycode#ThrottlingException": { "type": "structure", "members": { @@ -2329,6 +2525,71 @@ "com.amazonaws.honeycode#TimestampInMillis": { "type": "timestamp" }, + "com.amazonaws.honeycode#UntagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.honeycode#UntagResourceRequest" + }, + "output": { + "target": "com.amazonaws.honeycode#UntagResourceResult" + }, + "errors": [ + { + "target": "com.amazonaws.honeycode#AccessDeniedException" + }, + { + "target": "com.amazonaws.honeycode#InternalServerException" + }, + { + "target": "com.amazonaws.honeycode#RequestTimeoutException" + }, + { + "target": "com.amazonaws.honeycode#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.honeycode#ServiceUnavailableException" + }, + { + "target": "com.amazonaws.honeycode#ThrottlingException" + }, + { + "target": "com.amazonaws.honeycode#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

\n The UntagResource API allows you to removes tags from an ARN-able resource. Resource includes workbook, table,\n screen and screen-automation.\n

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/tags/{resourceArn}", + "code": 200 + } + } + }, + "com.amazonaws.honeycode#UntagResourceRequest": { + "type": "structure", + "members": { + "resourceArn": { + "target": "com.amazonaws.honeycode#ResourceArn", + "traits": { + "smithy.api#documentation": "

The resource's Amazon Resource Name (ARN).

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "tagKeys": { + "target": "com.amazonaws.honeycode#TagKeysList", + "traits": { + "smithy.api#documentation": "

A list of tag keys to remove from the resource.

", + "smithy.api#httpQuery": "tagKeys", + "smithy.api#required": {} + } + } + } + }, + "com.amazonaws.honeycode#UntagResourceResult": { + "type": "structure", + "members": {} + }, "com.amazonaws.honeycode#UpdateRowData": { "type": "structure", "members": { @@ -2463,7 +2724,7 @@ "com.amazonaws.honeycode#VariableName": { "type": "string", "traits": { - "smithy.api#pattern": "^(?!\\s*$).+", + "smithy.api#pattern": "^(?!\\s*$).+$", "smithy.api#sensitive": {} } }, diff --git a/codegen/sdk-codegen/aws-models/ioteventsdata.2018-10-23.json b/codegen/sdk-codegen/aws-models/ioteventsdata.2018-10-23.json index 9183204f51e..c92b999a362 100644 --- a/codegen/sdk-codegen/aws-models/ioteventsdata.2018-10-23.json +++ b/codegen/sdk-codegen/aws-models/ioteventsdata.2018-10-23.json @@ -487,7 +487,7 @@ } ], "traits": { - "smithy.api#documentation": "

Sends a set of messages to the AWS IoT Events system. Each message payload is transformed into\n the input you specify (\"inputName\") and ingested into any detectors that monitor\n that input. If multiple messages are sent, the order in which the messages are processed isn't\n guaranteed. To guarantee ordering, you must send messages one at a time and wait for a\n successful response.

", + "smithy.api#documentation": "

Sends a set of messages to the IoT Events system. Each message payload is transformed into\n the input you specify (\"inputName\") and ingested into any detectors that monitor\n that input. If multiple messages are sent, the order in which the messages are processed isn't\n guaranteed. To guarantee ordering, you must send messages one at a time and wait for a\n successful response.

", "smithy.api#http": { "method": "POST", "uri": "/inputs/messages", @@ -1377,6 +1377,21 @@ }, "com.amazonaws.ioteventsdata#IotColumboDataService": { "type": "service", + "traits": { + "aws.api#service": { + "sdkId": "IoT Events Data", + "arnNamespace": "ioteventsdata", + "cloudFormationName": "IoTEventsData", + "cloudTrailEventSource": "ioteventsdata.amazonaws.com", + "endpointPrefix": "data.iotevents" + }, + "aws.auth#sigv4": { + "name": "ioteventsdata" + }, + "aws.protocols#restJson1": {}, + "smithy.api#documentation": "

IoT Events monitors your equipment or device fleets for failures or changes in operation, and\n triggers actions when such events occur. You can use IoT Events Data API commands to send inputs to\n detectors, list detectors, and view or update a detector's status.

\n

For more information, see What is IoT Events? in the\n IoT Events Developer Guide.

", + "smithy.api#title": "AWS IoT Events Data" + }, "version": "2018-10-23", "operations": [ { @@ -1412,22 +1427,7 @@ { "target": "com.amazonaws.ioteventsdata#ListDetectors" } - ], - "traits": { - "aws.api#service": { - "sdkId": "IoT Events Data", - "arnNamespace": "ioteventsdata", - "cloudFormationName": "IoTEventsData", - "cloudTrailEventSource": "ioteventsdata.amazonaws.com", - "endpointPrefix": "data.iotevents" - }, - "aws.auth#sigv4": { - "name": "ioteventsdata" - }, - "aws.protocols#restJson1": {}, - "smithy.api#documentation": "

AWS IoT Events monitors your equipment or device fleets for failures or changes in operation, and\n triggers actions when such events occur. You can use AWS IoT Events Data API commands to send inputs to\n detectors, list detectors, and view or update a detector's status.

\n

For more information, see What is AWS IoT Events? in the\n AWS IoT Events Developer Guide.

", - "smithy.api#title": "AWS IoT Events Data" - } + ] }, "com.amazonaws.ioteventsdata#KeyValue": { "type": "string", @@ -1993,7 +1993,7 @@ "timestamp": { "target": "com.amazonaws.ioteventsdata#Timestamp", "traits": { - "smithy.api#documentation": "

The number of seconds which have elapsed on the timer.

", + "smithy.api#documentation": "

The expiration time for the timer.

", "smithy.api#required": {} } } diff --git a/codegen/sdk-codegen/aws-models/iotwireless.2020-11-22.json b/codegen/sdk-codegen/aws-models/iotwireless.2020-11-22.json index ec91da5ae10..d88e65bbb83 100644 --- a/codegen/sdk-codegen/aws-models/iotwireless.2020-11-22.json +++ b/codegen/sdk-codegen/aws-models/iotwireless.2020-11-22.json @@ -1793,6 +1793,72 @@ "type": "structure", "members": {} }, + "com.amazonaws.iotwireless#DeleteQueuedMessages": { + "type": "operation", + "input": { + "target": "com.amazonaws.iotwireless#DeleteQueuedMessagesRequest" + }, + "output": { + "target": "com.amazonaws.iotwireless#DeleteQueuedMessagesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iotwireless#AccessDeniedException" + }, + { + "target": "com.amazonaws.iotwireless#InternalServerException" + }, + { + "target": "com.amazonaws.iotwireless#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.iotwireless#ThrottlingException" + }, + { + "target": "com.amazonaws.iotwireless#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

The operation to delete queued messages.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/wireless-devices/{Id}/data", + "code": 204 + } + } + }, + "com.amazonaws.iotwireless#DeleteQueuedMessagesRequest": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.iotwireless#WirelessDeviceId", + "traits": { + "smithy.api#documentation": "

Id of a given wireless device which messages will be deleted

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "MessageId": { + "target": "com.amazonaws.iotwireless#MessageId", + "traits": { + "smithy.api#documentation": "

if messageID==\"*\", the queue for a particular wireless deviceId will be purged, otherwise, the specific message with messageId will be deleted

", + "smithy.api#httpQuery": "messageId", + "smithy.api#required": {} + } + }, + "WirelessDeviceType": { + "target": "com.amazonaws.iotwireless#WirelessDeviceType", + "traits": { + "smithy.api#documentation": "

The wireless device type, it is either Sidewalk or LoRaWAN.

", + "smithy.api#httpQuery": "WirelessDeviceType" + } + } + } + }, + "com.amazonaws.iotwireless#DeleteQueuedMessagesResponse": { + "type": "structure", + "members": {} + }, "com.amazonaws.iotwireless#DeleteServiceProfile": { "type": "operation", "input": { @@ -2712,6 +2778,41 @@ "smithy.api#box": {} } }, + "com.amazonaws.iotwireless#DownlinkQueueMessage": { + "type": "structure", + "members": { + "MessageId": { + "target": "com.amazonaws.iotwireless#MessageId", + "traits": { + "smithy.api#documentation": "

The messageId allocated by IoT Wireless for tracing purpose

" + } + }, + "TransmitMode": { + "target": "com.amazonaws.iotwireless#TransmitMode", + "traits": { + "smithy.api#documentation": "

The transmit mode to use to send data to the wireless device. Can be: 0 for UM (unacknowledge mode) or 1 for AM (acknowledge mode).

" + } + }, + "ReceivedAt": { + "target": "com.amazonaws.iotwireless#ISODateTimeString", + "traits": { + "smithy.api#documentation": "

The timestamp that Iot Wireless received the message.

" + } + }, + "LoRaWAN": { + "target": "com.amazonaws.iotwireless#LoRaWANSendDataToDevice" + } + }, + "traits": { + "smithy.api#documentation": "

The message in downlink queue.

" + } + }, + "com.amazonaws.iotwireless#DownlinkQueueMessagesList": { + "type": "list", + "member": { + "target": "com.amazonaws.iotwireless#DownlinkQueueMessage" + } + }, "com.amazonaws.iotwireless#DrMax": { "type": "integer", "traits": { @@ -5042,6 +5143,96 @@ } } }, + "com.amazonaws.iotwireless#ListQueuedMessages": { + "type": "operation", + "input": { + "target": "com.amazonaws.iotwireless#ListQueuedMessagesRequest" + }, + "output": { + "target": "com.amazonaws.iotwireless#ListQueuedMessagesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iotwireless#AccessDeniedException" + }, + { + "target": "com.amazonaws.iotwireless#InternalServerException" + }, + { + "target": "com.amazonaws.iotwireless#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.iotwireless#ThrottlingException" + }, + { + "target": "com.amazonaws.iotwireless#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

The operation to list queued messages.

", + "smithy.api#http": { + "method": "GET", + "uri": "/wireless-devices/{Id}/data", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.iotwireless#ListQueuedMessagesRequest": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.iotwireless#WirelessDeviceId", + "traits": { + "smithy.api#documentation": "

Id of a given wireless device which the downlink packets are targeted

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.iotwireless#NextToken", + "traits": { + "smithy.api#documentation": "

To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.iotwireless#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in this operation.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "WirelessDeviceType": { + "target": "com.amazonaws.iotwireless#WirelessDeviceType", + "traits": { + "smithy.api#documentation": "

The wireless device type, it is either Sidewalk or LoRaWAN.

", + "smithy.api#httpQuery": "WirelessDeviceType" + } + } + } + }, + "com.amazonaws.iotwireless#ListQueuedMessagesResponse": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.iotwireless#NextToken", + "traits": { + "smithy.api#documentation": "

To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

" + } + }, + "DownlinkQueueMessagesList": { + "target": "com.amazonaws.iotwireless#DownlinkQueueMessagesList", + "traits": { + "smithy.api#documentation": "

The messages in downlink queue.

" + } + } + } + }, "com.amazonaws.iotwireless#ListServiceProfiles": { "type": "operation", "input": { @@ -9268,7 +9459,7 @@ "name": "iotwireless" }, "aws.protocols#restJson1": {}, - "smithy.api#documentation": "

AWS IoT Wireless API documentation

", + "smithy.api#documentation": "

AWS IoT Wireless provides bi-directional communication between internet-connected wireless\n\t devices and the AWS Cloud. To onboard both LoRaWAN and Sidewalk devices to AWS IoT, use the \n\t IoT Wireless API. These wireless devices use the Low Power Wide Area Networking (LPWAN) \n\t communication protocol to communicate with AWS IoT.

\n\t

Using the API, you can perform create, read, update, and delete operations for your wireless\n\t devices, gateways, destinations, and profiles. After onboarding your devices, you \n\t can use the API operations to set log levels and monitor your devices with CloudWatch.

\n\t

You can also use the API operations to create multicast groups and schedule a multicast session for\n\t sending a downlink message to devices in the group. By using Firmware Updates Over-The-Air\n\t (FUOTA) API operations, you can create a FUOTA task and schedule a session to update the firmware\n\t of individual devices or an entire group of devices in a multicast group.

", "smithy.api#title": "AWS IoT Wireless" }, "version": "2020-11-22", @@ -9336,6 +9527,9 @@ { "target": "com.amazonaws.iotwireless#DeleteMulticastGroup" }, + { + "target": "com.amazonaws.iotwireless#DeleteQueuedMessages" + }, { "target": "com.amazonaws.iotwireless#DeleteServiceProfile" }, @@ -9450,6 +9644,9 @@ { "target": "com.amazonaws.iotwireless#ListPartnerAccounts" }, + { + "target": "com.amazonaws.iotwireless#ListQueuedMessages" + }, { "target": "com.amazonaws.iotwireless#ListServiceProfiles" }, diff --git a/codegen/sdk-codegen/aws-models/kendra.2019-02-03.json b/codegen/sdk-codegen/aws-models/kendra.2019-02-03.json index 8e071d9e15f..5a411905299 100644 --- a/codegen/sdk-codegen/aws-models/kendra.2019-02-03.json +++ b/codegen/sdk-codegen/aws-models/kendra.2019-02-03.json @@ -2037,7 +2037,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an new set of frequently asked question (FAQ) questions and answers.

" + "smithy.api#documentation": "

Creates an new set of frequently asked question (FAQ) questions and answers.

\n

Adding FAQs to an index is an asynchronous operation.

" } }, "com.amazonaws.kendra#CreateFaqRequest": { @@ -4618,7 +4618,7 @@ } }, "traits": { - "smithy.api#documentation": "

A custom attribute value assigned to a document.

" + "smithy.api#documentation": "

A custom attribute value assigned to a document.

\n

For more information on how to create custom document attributes, see \n Custom \n Attributes.

" } }, "com.amazonaws.kendra#DocumentAttributeCondition": { @@ -4742,7 +4742,7 @@ "DateValue": { "target": "com.amazonaws.kendra#Timestamp", "traits": { - "smithy.api#documentation": "

A date expressed as an ISO 8601 string.

\n

It is important for the time zone to be included \n in the ISO 8601 date-time format. For example, \n 20120325T123010+01:00 is the ISO 8601 date-time format \n for March 25th 2012 at 12:30PM (plus 10 seconds) in \n Central European Time.

" + "smithy.api#documentation": "

A date expressed as an ISO 8601 string.

\n

It is important for the time zone to be included \n in the ISO 8601 date-time format. For example, \n 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format \n for March 25th 2012 at 12:30PM (plus 10 seconds) in \n Central European Time.

" } } }, @@ -5757,7 +5757,12 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves search metrics data. The data provides a snapshot of how\n your users interact with your search application and how effective\n the application is.

" + "smithy.api#documentation": "

Retrieves search metrics data. The data provides a snapshot of how\n your users interact with your search application and how effective\n the application is.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + } } }, "com.amazonaws.kendra#GetSnapshotsRequest": { @@ -6114,7 +6119,7 @@ } }, "traits": { - "smithy.api#documentation": "

Provides the configuration information for invoking a Lambda function in \n Lambda to alter document metadata and content when ingesting \n documents into Amazon Kendra. You can configure your Lambda function using \n PreExtractionHookConfiguration \n if you want to apply advanced alterations on the original or raw documents. \n If you want to apply advanced alterations on the Amazon Kendra structured documents, \n you must configure your Lambda function using PostExtractionHookConfiguration. \n You can only invoke one Lambda function. However, this function can invoke other \n functions it requires.

\n

For more information, see Customizing document metadata\n during the ingestion process.

" + "smithy.api#documentation": "

Provides the configuration information for invoking a Lambda function in \n Lambda to alter document metadata and content when ingesting \n documents into Amazon Kendra. You can configure your Lambda function using \n PreExtractionHookConfiguration \n if you want to apply advanced alterations on the original or raw documents. \n If you want to apply advanced alterations on the Amazon Kendra structured documents, \n you must configure your Lambda function using PostExtractionHookConfiguration. \n You can only invoke one Lambda function. However, this function can invoke other \n functions it requires.

\n

For more information, see Customizing document metadata\n during the ingestion process.

" } }, "com.amazonaws.kendra#Host": { @@ -8141,8 +8146,7 @@ "QueryText": { "target": "com.amazonaws.kendra#QueryText", "traits": { - "smithy.api#documentation": "

The text to search for.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The text to search for.

" } }, "AttributeFilter": { @@ -8233,6 +8237,12 @@ "traits": { "smithy.api#documentation": "

The total number of items found by the search; however, you can only\n retrieve up to 100 items. For example, if the search found 192 items,\n you can only retrieve the first 100 of the items.

" } + }, + "Warnings": { + "target": "com.amazonaws.kendra#WarningList", + "traits": { + "smithy.api#documentation": "

A list of warning codes and their messages on problems with your query.

\n

Amazon Kendra currently only supports one type of warning, which is a warning \n on invalid syntax used in the query. For examples of invalid query syntax, \n see Searching \n with advanced query syntax.

" + } } } }, @@ -8460,8 +8470,7 @@ "smithy.api#length": { "min": 1, "max": 1000 - }, - "smithy.api#pattern": "^\\P{C}*$" + } } }, "com.amazonaws.kendra#ReadAccessType": { @@ -10979,7 +10988,7 @@ } }, "traits": { - "smithy.api#documentation": "

Provides the configuration information to fetch access levels \n of groups and users from an Amazon Web Services Single Sign On identity \n source. This is useful for setting up user context filtering, where \n Amazon Kendra filters search results for different users based on their \n group's access to documents. You can also map your users to their \n groups for user context filtering using the \n PutPrincipalMapping \n operation.

\n

To set up an Amazon Web Services SSO identity source in the console to use with \n Amazon Kendra, see Getting started \n with an Amazon Web Services SSO identity source. You must also grant the required \n permissions to use Amazon Web Services SSO with Amazon Kendra. For more information, see \n IAM roles for \n Amazon Web Services SSO.

" + "smithy.api#documentation": "

Provides the configuration information to fetch access levels \n of groups and users from an Amazon Web Services Single Sign On identity \n source. This is useful for setting up user context filtering, where \n Amazon Kendra filters search results for different users based on their \n group's access to documents. You can also map your users to their \n groups for user context filtering using the \n PutPrincipalMapping \n operation.

\n

To set up an Amazon Web Services SSO identity source in the console to use with \n Amazon Kendra, see Getting started \n with an Amazon Web Services SSO identity source. You must also grant the required \n permissions to use Amazon Web Services SSO with Amazon Kendra. For more information, see \n IAM roles for \n Amazon Web Services SSO.

\n

Amazon Kendra currently does not support using UserGroupResolutionConfiguration \n with an Amazon Web Services organization member account for your Amazon Web Services SSO \n identify source. You must create your index in the parent account for the organization \n in order to use UserGroupResolutionConfiguration.

" } }, "com.amazonaws.kendra#UserGroupResolutionMode": { @@ -11114,6 +11123,59 @@ "smithy.api#pattern": "^[-0-9a-zA-Z]+$" } }, + "com.amazonaws.kendra#Warning": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.kendra#WarningMessage", + "traits": { + "smithy.api#documentation": "

The message that explains the problem with the query.

" + } + }, + "Code": { + "target": "com.amazonaws.kendra#WarningCode", + "traits": { + "smithy.api#documentation": "

The code used to show the type of warning for the query.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The warning code and message that explains a problem with a query.

" + } + }, + "com.amazonaws.kendra#WarningCode": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "QUERY_LANGUAGE_INVALID_SYNTAX", + "name": "QUERY_LANGUAGE_INVALID_SYNTAX" + } + ] + } + }, + "com.amazonaws.kendra#WarningList": { + "type": "list", + "member": { + "target": "com.amazonaws.kendra#Warning" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.kendra#WarningMessage": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^\\P{C}*$" + } + }, "com.amazonaws.kendra#WebCrawlerConfiguration": { "type": "structure", "members": { diff --git a/codegen/sdk-codegen/aws-models/lexmodelsv2.2020-08-07.json b/codegen/sdk-codegen/aws-models/lexmodelsv2.2020-08-07.json index d6eac96c83a..55b86822d79 100644 --- a/codegen/sdk-codegen/aws-models/lexmodelsv2.2020-08-07.json +++ b/codegen/sdk-codegen/aws-models/lexmodelsv2.2020-08-07.json @@ -29,6 +29,20 @@ ] }, "shapes": { + "com.amazonaws.lexmodelsv2#AdvancedRecognitionSetting": { + "type": "structure", + "members": { + "audioRecognitionStrategy": { + "target": "com.amazonaws.lexmodelsv2#AudioRecognitionStrategy", + "traits": { + "smithy.api#documentation": "

Enables using the slot values as a custom vocabulary for recognizing user utterances.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides settings that enable advanced recognition settings for slot values.

" + } + }, "com.amazonaws.lexmodelsv2#AggregatedUtterancesFilter": { "type": "structure", "members": { @@ -327,6 +341,17 @@ } } }, + "com.amazonaws.lexmodelsv2#AudioRecognitionStrategy": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "UseSlotValuesAsCustomVocabulary", + "name": "UseSlotValuesAsCustomVocabulary" + } + ] + } + }, "com.amazonaws.lexmodelsv2#Boolean": { "type": "boolean" }, @@ -3264,6 +3289,91 @@ } } }, + "com.amazonaws.lexmodelsv2#CustomVocabularyExportSpecification": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

The identifier of the bot that contains the custom vocabulary to export.

", + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

The version of the bot that contains the custom vocabulary to export.

", + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

The locale of the bot that contains the custom vocabulary to export.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides the parameters required for exporting a custom vocabulary.

" + } + }, + "com.amazonaws.lexmodelsv2#CustomVocabularyImportSpecification": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

The identifier of the bot to import the custom vocabulary to.

", + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

The version of the bot to import the custom vocabulary to.

", + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

The identifier of the local to import the custom vocabulary to. The value must\n be en_GB.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides the parameters required for importing a custom vocabulary.

" + } + }, + "com.amazonaws.lexmodelsv2#CustomVocabularyStatus": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "Ready", + "name": "Ready" + }, + { + "value": "Deleting", + "name": "Deleting" + }, + { + "value": "Exporting", + "name": "Exporting" + }, + { + "value": "Importing", + "name": "Importing" + }, + { + "value": "Creating", + "name": "Creating" + } + ] + } + }, "com.amazonaws.lexmodelsv2#DataPrivacy": { "type": "structure", "members": { @@ -3646,6 +3756,101 @@ } } }, + "com.amazonaws.lexmodelsv2#DeleteCustomVocabulary": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#DeleteCustomVocabularyRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#DeleteCustomVocabularyResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#ConflictException" + }, + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#PreconditionFailedException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Removes a custom vocabulary from the specified locale\n in the specified bot.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/customvocabulary", + "code": 202 + } + } + }, + "com.amazonaws.lexmodelsv2#DeleteCustomVocabularyRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

The unique identifier of the bot to remove the custom\n vocabulary from.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

The version of the bot to remove the custom vocabulary\n from.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

The locale identifier for the locale that contains the\n custom vocabulary to remove.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + } + }, + "com.amazonaws.lexmodelsv2#DeleteCustomVocabularyResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

The identifier of the bot that the custom vocabulary\n was removed from.

" + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#DraftBotVersion", + "traits": { + "smithy.api#documentation": "

The version of the bot that the custom vocabulary\n was removed from.

" + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

The locale identifier for the locale that the\n custom vocabulary was removed from.

" + } + }, + "customVocabularyStatus": { + "target": "com.amazonaws.lexmodelsv2#CustomVocabularyStatus", + "traits": { + "smithy.api#documentation": "

The status of removing the custom vocabulary.

" + } + } + } + }, "com.amazonaws.lexmodelsv2#DeleteExport": { "type": "operation", "input": { @@ -5153,6 +5358,110 @@ } } }, + "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadata": { + "type": "operation", + "input": { + "target": "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadataRequest" + }, + "output": { + "target": "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadataResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lexmodelsv2#InternalServerException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ThrottlingException" + }, + { + "target": "com.amazonaws.lexmodelsv2#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Provides metadata information about a custom vocabulary.

", + "smithy.api#http": { + "method": "GET", + "uri": "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/customvocabulary/DEFAULT/metadata", + "code": 200 + } + } + }, + "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadataRequest": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

The unique identifier of the bot that contains the custom vocabulary.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

The bot version of the bot to return metadata for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

The locale to return the custom vocabulary information for.\n The locale must be en_GB.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + } + }, + "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadataResponse": { + "type": "structure", + "members": { + "botId": { + "target": "com.amazonaws.lexmodelsv2#Id", + "traits": { + "smithy.api#documentation": "

The identifier of the bot that contains the custom vocabulary.

" + } + }, + "botVersion": { + "target": "com.amazonaws.lexmodelsv2#BotVersion", + "traits": { + "smithy.api#documentation": "

The version of the bot that contains the custom vocabulary to describe.

" + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

The locale that contains the custom vocabulary to describe.

" + } + }, + "customVocabularyStatus": { + "target": "com.amazonaws.lexmodelsv2#CustomVocabularyStatus", + "traits": { + "smithy.api#documentation": "

The status of the custom vocabulary. If the status is \n Ready the custom vocabulary is ready to use.

" + } + }, + "creationDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the custom vocabulary was created.

" + } + }, + "lastUpdatedDateTime": { + "target": "com.amazonaws.lexmodelsv2#Timestamp", + "traits": { + "smithy.api#documentation": "

The date and time that the custom vocabulary was last updated.

" + } + } + } + }, "com.amazonaws.lexmodelsv2#DescribeExport": { "type": "operation", "input": { @@ -5253,7 +5562,7 @@ "fileFormat": { "target": "com.amazonaws.lexmodelsv2#ImportExportFileFormat", "traits": { - "smithy.api#documentation": "

The file format used in the files that describe the bot or bot\n locale.

" + "smithy.api#documentation": "

The file format used in the files that describe the resource.\n

" } }, "exportStatus": { @@ -5382,7 +5691,7 @@ "resourceSpecification": { "target": "com.amazonaws.lexmodelsv2#ImportResourceSpecification", "traits": { - "smithy.api#documentation": "

The specifications of the imported bot or bot locale.

" + "smithy.api#documentation": "

The specifications of the imported bot, bot locale, or custom\n vocabulary.

" } }, "importedResourceId": { @@ -6075,7 +6384,7 @@ "values": { "target": "com.amazonaws.lexmodelsv2#FilterValues", "traits": { - "smithy.api#documentation": "

The values to use to filter the response.

", + "smithy.api#documentation": "

The values to use to filter the response. The values must be\n Bot, BotLocale, or\n CustomVocabulary.

", "smithy.api#required": {} } }, @@ -6143,6 +6452,12 @@ "traits": { "smithy.api#documentation": "

Parameters for exporting a bot locale.

" } + }, + "customVocabularyExportSpecification": { + "target": "com.amazonaws.lexmodelsv2#CustomVocabularyExportSpecification", + "traits": { + "smithy.api#documentation": "

The parameters required to export a custom vocabulary.

" + } } }, "traits": { @@ -6554,6 +6869,10 @@ { "value": "LexJson", "name": "LexJson" + }, + { + "value": "TSV", + "name": "TSV" } ] } @@ -6581,7 +6900,7 @@ "values": { "target": "com.amazonaws.lexmodelsv2#FilterValues", "traits": { - "smithy.api#documentation": "

The values to use to filter the response.

", + "smithy.api#documentation": "

The values to use to filter the response. The values must be\n Bot, BotLocale, or\n CustomVocabulary.

", "smithy.api#required": {} } }, @@ -6649,12 +6968,34 @@ "traits": { "smithy.api#documentation": "

Parameters for importing a bot locale.

" } + }, + "customVocabularyImportSpecification": { + "target": "com.amazonaws.lexmodelsv2#CustomVocabularyImportSpecification" } }, "traits": { "smithy.api#documentation": "

Provides information about the bot or bot locale that you want to\n import. You can specify the botImportSpecification or the\n botLocaleImportSpecification, but not both.

" } }, + "com.amazonaws.lexmodelsv2#ImportResourceType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "Bot", + "name": "Bot" + }, + { + "value": "BotLocale", + "name": "BotLocale" + }, + { + "value": "CustomVocabulary", + "name": "CustomVocabulary" + } + ] + } + }, "com.amazonaws.lexmodelsv2#ImportSortAttribute": { "type": "string", "traits": { @@ -6755,6 +7096,12 @@ "traits": { "smithy.api#documentation": "

The date and time that the import was last updated.

" } + }, + "importedResourceType": { + "target": "com.amazonaws.lexmodelsv2#ImportResourceType", + "traits": { + "smithy.api#documentation": "

The type of resource that was imported.

" + } } }, "traits": { @@ -7189,6 +7536,9 @@ { "target": "com.amazonaws.lexmodelsv2#DeleteBotVersion" }, + { + "target": "com.amazonaws.lexmodelsv2#DeleteCustomVocabulary" + }, { "target": "com.amazonaws.lexmodelsv2#DeleteExport" }, @@ -7228,6 +7578,9 @@ { "target": "com.amazonaws.lexmodelsv2#DescribeBotVersion" }, + { + "target": "com.amazonaws.lexmodelsv2#DescribeCustomVocabularyMetadata" + }, { "target": "com.amazonaws.lexmodelsv2#DescribeExport" }, @@ -7969,7 +8322,7 @@ "nextToken": { "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

If the response from the ListBots operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

" + "smithy.api#documentation": "

If the response from the ListBots operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

\n

Use the returned token in the nextToken parameter of a\n ListBots request to return the next page of results.\n For a complete set of results, call the ListBots operation\n until the nextToken returned in the response is\n null.

" } } } @@ -8191,7 +8544,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the exports for a bot or bot locale. Exports are kept in the\n list for 7 days.

", + "smithy.api#documentation": "

Lists the exports for a bot, bot locale, or custom vocabulary.\n Exports are kept in the list for 7 days.

", "smithy.api#http": { "method": "POST", "uri": "/exports", @@ -8240,7 +8593,13 @@ "nextToken": { "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

If the response from the ListExports operation contains\n more results that specified in the maxResults parameter, a\n token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

" + "smithy.api#documentation": "

If the response from the ListExports operation contains\n more results that specified in the maxResults parameter, a\n token is returned in the response.

\n

Use the returned token in the nextToken parameter of a\n ListExports request to return the next page of results.\n For a complete set of results, call the ListExports\n operation until the nextToken returned in the response is\n null.

" + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

Specifies the resources that should be exported. If you\n don't specify a resource type in the filters parameter,\n both bot locales and custom vocabularies are exported.

" } } } @@ -8271,6 +8630,12 @@ "traits": { "smithy.api#documentation": "

A token that indicates whether there are more results to return in a\n response to the ListExports operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListExports\n operation request to get the next page of results.

" } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

The locale specified in the request.

" + } } } }, @@ -8294,7 +8659,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the imports for a bot or bot locale. Imports are kept in the\n list for 7 days.

", + "smithy.api#documentation": "

Lists the imports for a bot, bot locale, or custom vocabulary.\n Imports are kept in the list for 7 days.

", "smithy.api#http": { "method": "POST", "uri": "/imports", @@ -8343,7 +8708,13 @@ "nextToken": { "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

If the response from the ListImports operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

" + "smithy.api#documentation": "

If the response from the ListImports operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

\n

Use the returned token in the nextToken parameter of a\n ListImports request to return the next page of results.\n For a complete set of results, call the ListImports\n operation until the nextToken returned in the response is\n null.

" + } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

Specifies the locale that should be present in the list. If you\n don't specify a resource type in the filters parameter,\n the list contains both bot locales and custom vocabularies.

" } } } @@ -8374,6 +8745,12 @@ "traits": { "smithy.api#documentation": "

A token that indicates whether there are more results to return in a\n response to the ListImports operation. If the\n nextToken field is present, you send the contents as\n the nextToken parameter of a ListImports\n operation request to get the next page of results.

" } + }, + "localeId": { + "target": "com.amazonaws.lexmodelsv2#LocaleId", + "traits": { + "smithy.api#documentation": "

The locale specified in the request.

" + } } } }, @@ -8461,7 +8838,7 @@ "nextToken": { "target": "com.amazonaws.lexmodelsv2#NextToken", "traits": { - "smithy.api#documentation": "

If the response from the ListIntents operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response. Use that token in the\n nextToken parameter to return the next page of\n results.

" + "smithy.api#documentation": "

If the response from the ListIntents operation contains\n more results than specified in the maxResults parameter, a\n token is returned in the response.

\n

Use the returned token in the nextToken parameter of a\n ListIntents request to return the next page of results.\n For a complete set of results, call the ListIntents\n operation until the nextToken returned in the response is\n null.

" } } } @@ -10486,6 +10863,12 @@ "traits": { "smithy.api#documentation": "

A regular expression used to validate the value of a slot.

" } + }, + "advancedRecognitionSetting": { + "target": "com.amazonaws.lexmodelsv2#AdvancedRecognitionSetting", + "traits": { + "smithy.api#documentation": "

Provides settings that enable advanced recognition settings for slot\n values.

" + } } }, "traits": { @@ -10671,7 +11054,7 @@ } ], "traits": { - "smithy.api#documentation": "

Starts importing a bot or bot locale from a zip archive that you\n uploaded to an S3 bucket.

", + "smithy.api#documentation": "

Starts importing a bot, bot locale, or custom vocabulary from a zip\n archive that you uploaded to an S3 bucket.

", "smithy.api#http": { "method": "PUT", "uri": "/imports", @@ -10692,7 +11075,7 @@ "resourceSpecification": { "target": "com.amazonaws.lexmodelsv2#ImportResourceSpecification", "traits": { - "smithy.api#documentation": "

Parameters for creating the bot or bot locale.

", + "smithy.api#documentation": "

Parameters for creating the bot, bot locale or custom\n vocabulary.

", "smithy.api#required": {} } }, @@ -10706,7 +11089,7 @@ "filePassword": { "target": "com.amazonaws.lexmodelsv2#ImportExportFilePassword", "traits": { - "smithy.api#documentation": "

The password used to encrypt the zip archive that contains the bot\n or bot locale definition. You should always encrypt the zip archive to\n protect it during transit between your site and Amazon Lex.

" + "smithy.api#documentation": "

The password used to encrypt the zip archive that contains the\n resource definition. You should always encrypt the zip archive to\n protect it during transit between your site and Amazon Lex.

" } } } @@ -10723,7 +11106,7 @@ "resourceSpecification": { "target": "com.amazonaws.lexmodelsv2#ImportResourceSpecification", "traits": { - "smithy.api#documentation": "

The parameters used when importing the bot or bot locale.

" + "smithy.api#documentation": "

The parameters used when importing the resource.

" } }, "mergeStrategy": { @@ -10735,7 +11118,7 @@ "importStatus": { "target": "com.amazonaws.lexmodelsv2#ImportStatus", "traits": { - "smithy.api#documentation": "

The current status of the import. When the status is\n Complete the bot or bot alias is ready to use.

" + "smithy.api#documentation": "

The current status of the import. When the status is\n Complete the bot, bot alias, or custom vocabulary is\n ready to use.

" } }, "creationDateTime": { @@ -11798,7 +12181,7 @@ "fileFormat": { "target": "com.amazonaws.lexmodelsv2#ImportExportFileFormat", "traits": { - "smithy.api#documentation": "

The file format used for the files that define the resource.

" + "smithy.api#documentation": "

The file format used for the files that define the resource. The\n TSV format is required to export a custom vocabulary\n only; otherwise use LexJson format.

" } }, "exportStatus": { diff --git a/codegen/sdk-codegen/aws-models/lexruntimev2.2020-08-07.json b/codegen/sdk-codegen/aws-models/lexruntimev2.2020-08-07.json index d06e5f045ae..66daa20ada7 100644 --- a/codegen/sdk-codegen/aws-models/lexruntimev2.2020-08-07.json +++ b/codegen/sdk-codegen/aws-models/lexruntimev2.2020-08-07.json @@ -1117,6 +1117,16 @@ } } }, + "com.amazonaws.lexruntimev2#Name": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^([0-9a-zA-Z][_-]?)+$" + } + }, "com.amazonaws.lexruntimev2#NonEmptyString": { "type": "string", "traits": { @@ -1690,6 +1700,71 @@ "smithy.api#httpError": 404 } }, + "com.amazonaws.lexruntimev2#RuntimeHintDetails": { + "type": "structure", + "members": { + "runtimeHintValues": { + "target": "com.amazonaws.lexruntimev2#RuntimeHintValuesList", + "traits": { + "smithy.api#documentation": "

One or more strings that Amazon Lex V2 should look for in the input to the\n bot. Each phrase is given preference when deciding on slot\n values.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides an array of phrases that should be given preference when\n resolving values for a slot.

" + } + }, + "com.amazonaws.lexruntimev2#RuntimeHintPhrase": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 140 + } + } + }, + "com.amazonaws.lexruntimev2#RuntimeHintValue": { + "type": "structure", + "members": { + "phrase": { + "target": "com.amazonaws.lexruntimev2#RuntimeHintPhrase", + "traits": { + "smithy.api#documentation": "

The phrase that Amazon Lex V2 should look for in the user's input to the\n bot.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides the phrase that Amazon Lex V2 should look for in the user's input\n to the bot.

" + } + }, + "com.amazonaws.lexruntimev2#RuntimeHintValuesList": { + "type": "list", + "member": { + "target": "com.amazonaws.lexruntimev2#RuntimeHintValue" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.lexruntimev2#RuntimeHints": { + "type": "structure", + "members": { + "slotHints": { + "target": "com.amazonaws.lexruntimev2#SlotHintsIntentMap", + "traits": { + "smithy.api#documentation": "

A list of the slots in the intent that should have runtime hints\n added, and the phrases that should be added for each slot.

\n

The first level of the slotHints map is the name of the\n intent. The second level is the name of the slot within the intent. For\n more information, see Using hints to improve\n accuracy.

\n

The intent name and slot name must exist.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

You can provide Amazon Lex V2 with hints to the phrases that a customer is\n likely to use for a slot. When a slot with hints is resolved, the\n phrases in the runtime hints are preferred in the resolution. You can\n provide hints for a maximum of 100 intents. You can provide a maximum\n of 100 slots.

\n

Before you can use runtime hints with an existing bot, you must\n first rebuild the bot.

\n

For more information, see Using hints to improve\n accuracy.

" + } + }, "com.amazonaws.lexruntimev2#SensitiveNonEmptyString": { "type": "string", "traits": { @@ -1808,7 +1883,13 @@ "originatingRequestId": { "target": "com.amazonaws.lexruntimev2#NonEmptyString", "traits": { - "smithy.api#documentation": "

" + "smithy.api#documentation": "

A unique identifier for a specific request.

" + } + }, + "runtimeHints": { + "target": "com.amazonaws.lexruntimev2#RuntimeHints", + "traits": { + "smithy.api#documentation": "

Hints for phrases that a customer is likely to use \n for a slot. Amazon Lex V2 uses the hints to help determine the correct\n value of a slot.

" } } }, @@ -1857,6 +1938,24 @@ "smithy.api#documentation": "

A value that Amazon Lex V2 uses to fulfill an intent.

" } }, + "com.amazonaws.lexruntimev2#SlotHintsIntentMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexruntimev2#Name" + }, + "value": { + "target": "com.amazonaws.lexruntimev2#SlotHintsSlotMap" + } + }, + "com.amazonaws.lexruntimev2#SlotHintsSlotMap": { + "type": "map", + "key": { + "target": "com.amazonaws.lexruntimev2#Name" + }, + "value": { + "target": "com.amazonaws.lexruntimev2#RuntimeHintDetails" + } + }, "com.amazonaws.lexruntimev2#Slots": { "type": "map", "key": { diff --git a/codegen/sdk-codegen/aws-models/lookoutmetrics.2017-07-25.json b/codegen/sdk-codegen/aws-models/lookoutmetrics.2017-07-25.json index 44b7951dc15..24e38ef4626 100644 --- a/codegen/sdk-codegen/aws-models/lookoutmetrics.2017-07-25.json +++ b/codegen/sdk-codegen/aws-models/lookoutmetrics.2017-07-25.json @@ -394,6 +394,25 @@ "smithy.api#pattern": "\\S" } }, + "com.amazonaws.lookoutmetrics#AnomalyDetectorFailureType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "ACTIVATION_FAILURE", + "name": "ACTIVATION_FAILURE" + }, + { + "value": "BACK_TEST_ACTIVATION_FAILURE", + "name": "BACK_TEST_ACTIVATION_FAILURE" + }, + { + "value": "DELETION_FAILURE", + "name": "DELETION_FAILURE" + } + ] + } + }, "com.amazonaws.lookoutmetrics#AnomalyDetectorName": { "type": "string", "traits": { @@ -673,15 +692,13 @@ "RoleArn": { "target": "com.amazonaws.lookoutmetrics#Arn", "traits": { - "smithy.api#documentation": "

An IAM role that gives Amazon Lookout for Metrics permission to access the flow.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An IAM role that gives Amazon Lookout for Metrics permission to access the flow.

" } }, "FlowName": { "target": "com.amazonaws.lookoutmetrics#FlowName", "traits": { - "smithy.api#documentation": "

name of the flow.

", - "smithy.api#required": {} + "smithy.api#documentation": "

name of the flow.

" } } }, @@ -786,8 +803,7 @@ "RoleArn": { "target": "com.amazonaws.lookoutmetrics#Arn", "traits": { - "smithy.api#documentation": "

An IAM role that gives Amazon Lookout for Metrics permission to access data in Amazon CloudWatch.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An IAM role that gives Amazon Lookout for Metrics permission to access data in Amazon CloudWatch.

" } } }, @@ -1582,7 +1598,7 @@ "FailureReason": { "target": "com.amazonaws.lookoutmetrics#ErrorMessage", "traits": { - "smithy.api#documentation": "

The reason that the detector failed, if any.

" + "smithy.api#documentation": "

The reason that the detector failed.

" } }, "KmsKeyArn": { @@ -1590,6 +1606,12 @@ "traits": { "smithy.api#documentation": "

The ARN of the KMS key to use to encrypt your data.

" } + }, + "FailureType": { + "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorFailureType", + "traits": { + "smithy.api#documentation": "

The process that caused the detector to fail.

" + } } } }, @@ -3364,58 +3386,50 @@ "DBInstanceIdentifier": { "target": "com.amazonaws.lookoutmetrics#RDSDatabaseIdentifier", "traits": { - "smithy.api#documentation": "

A string identifying the database instance.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A string identifying the database instance.

" } }, "DatabaseHost": { "target": "com.amazonaws.lookoutmetrics#DatabaseHost", "traits": { - "smithy.api#documentation": "

The host name of the database.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The host name of the database.

" } }, "DatabasePort": { "target": "com.amazonaws.lookoutmetrics#DatabasePort", "traits": { "smithy.api#box": {}, - "smithy.api#documentation": "

The port number where the database can be accessed.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The port number where the database can be accessed.

" } }, "SecretManagerArn": { "target": "com.amazonaws.lookoutmetrics#PoirotSecretManagerArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the AWS Secrets Manager role.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the AWS Secrets Manager role.

" } }, "DatabaseName": { "target": "com.amazonaws.lookoutmetrics#RDSDatabaseName", "traits": { - "smithy.api#documentation": "

The name of the RDS database.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the RDS database.

" } }, "TableName": { "target": "com.amazonaws.lookoutmetrics#TableName", "traits": { - "smithy.api#documentation": "

The name of the table in the database.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the table in the database.

" } }, "RoleArn": { "target": "com.amazonaws.lookoutmetrics#Arn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role.

" } }, "VpcConfiguration": { "target": "com.amazonaws.lookoutmetrics#VpcConfiguration", "traits": { - "smithy.api#documentation": "

An object containing information about the Amazon Virtual Private Cloud (VPC) configuration.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An object containing information about the Amazon Virtual Private Cloud (VPC) configuration.

" } } }, @@ -3449,58 +3463,50 @@ "ClusterIdentifier": { "target": "com.amazonaws.lookoutmetrics#RedshiftClusterIdentifier", "traits": { - "smithy.api#documentation": "

A string identifying the Redshift cluster.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A string identifying the Redshift cluster.

" } }, "DatabaseHost": { "target": "com.amazonaws.lookoutmetrics#DatabaseHost", "traits": { - "smithy.api#documentation": "

The name of the database host.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the database host.

" } }, "DatabasePort": { "target": "com.amazonaws.lookoutmetrics#DatabasePort", "traits": { "smithy.api#box": {}, - "smithy.api#documentation": "

The port number where the database can be accessed.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The port number where the database can be accessed.

" } }, "SecretManagerArn": { "target": "com.amazonaws.lookoutmetrics#PoirotSecretManagerArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the AWS Secrets Manager role.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the AWS Secrets Manager role.

" } }, "DatabaseName": { "target": "com.amazonaws.lookoutmetrics#RedshiftDatabaseName", "traits": { - "smithy.api#documentation": "

The Redshift database name.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Redshift database name.

" } }, "TableName": { "target": "com.amazonaws.lookoutmetrics#TableName", "traits": { - "smithy.api#documentation": "

The table name of the Redshift database.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The table name of the Redshift database.

" } }, "RoleArn": { "target": "com.amazonaws.lookoutmetrics#Arn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role providing access to the database.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role providing access to the database.

" } }, "VpcConfiguration": { "target": "com.amazonaws.lookoutmetrics#VpcConfiguration", "traits": { - "smithy.api#documentation": "

Contains information about the Amazon Virtual Private Cloud (VPC) configuration.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Contains information about the Amazon Virtual Private Cloud (VPC) configuration.

" } } }, @@ -3563,8 +3569,7 @@ "RoleArn": { "target": "com.amazonaws.lookoutmetrics#Arn", "traits": { - "smithy.api#documentation": "

The ARN of an IAM role that has read and write access permissions to the source S3 bucket.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ARN of an IAM role that has read and write access permissions to the source S3 bucket.

" } }, "TemplatedPathList": { @@ -4176,6 +4181,9 @@ { "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException" }, + { + "target": "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException" }, diff --git a/codegen/sdk-codegen/aws-models/medialive.2017-10-14.json b/codegen/sdk-codegen/aws-models/medialive.2017-10-14.json index e2445bfe279..4271a5fb289 100644 --- a/codegen/sdk-codegen/aws-models/medialive.2017-10-14.json +++ b/codegen/sdk-codegen/aws-models/medialive.2017-10-14.json @@ -9862,10 +9862,17 @@ "ProgramDateTime": { "target": "com.amazonaws.medialive#HlsProgramDateTime", "traits": { - "smithy.api#documentation": "Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. The value is calculated as follows: either the program date and time are initialized using the input timecode source, or the time is initialized using the input timecode source and the date is initialized using the timestampOffset.", + "smithy.api#documentation": "Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. The value is calculated using the program date time clock.", "smithy.api#jsonName": "programDateTime" } }, + "ProgramDateTimeClock": { + "target": "com.amazonaws.medialive#HlsProgramDateTimeClock", + "traits": { + "smithy.api#documentation": "Specifies the algorithm used to drive the HLS EXT-X-PROGRAM-DATE-TIME clock. Options include:\n\nINITIALIZE_FROM_OUTPUT_TIMECODE: The PDT clock is initialized as a function of the first output timecode, then incremented by the EXTINF duration of each encoded segment.\n\nSYSTEM_CLOCK: The PDT clock is initialized as a function of the UTC wall clock, then incremented by the EXTINF duration of each encoded segment. If the PDT clock diverges from the wall clock by more than 500ms, it is resynchronized to the wall clock.", + "smithy.api#jsonName": "programDateTimeClock" + } + }, "ProgramDateTimePeriod": { "target": "com.amazonaws.medialive#__integerMin0Max3600", "traits": { @@ -10256,6 +10263,22 @@ ] } }, + "com.amazonaws.medialive#HlsProgramDateTimeClock": { + "type": "string", + "traits": { + "smithy.api#documentation": "Hls Program Date Time Clock", + "smithy.api#enum": [ + { + "value": "INITIALIZE_FROM_OUTPUT_TIMECODE", + "name": "INITIALIZE_FROM_OUTPUT_TIMECODE" + }, + { + "value": "SYSTEM_CLOCK", + "name": "SYSTEM_CLOCK" + } + ] + } + }, "com.amazonaws.medialive#HlsRedundantManifest": { "type": "string", "traits": { diff --git a/codegen/sdk-codegen/aws-models/mediatailor.2018-04-23.json b/codegen/sdk-codegen/aws-models/mediatailor.2018-04-23.json index 6a92b0bef20..b182713bd0d 100644 --- a/codegen/sdk-codegen/aws-models/mediatailor.2018-04-23.json +++ b/codegen/sdk-codegen/aws-models/mediatailor.2018-04-23.json @@ -281,7 +281,7 @@ "FillerSlate": { "target": "com.amazonaws.mediatailor#SlateSource", "traits": { - "smithy.api#documentation": "

Contains information about the slate used to fill gaps between programs in the schedule. You must configure FillerSlate if your channel uses an LINEAR PlaybackMode.

" + "smithy.api#documentation": "

The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the LINEAR PlaybackMode. MediaTailor doesn't support filler slate for channels using the LOOP PlaybackMode.

" } }, "LastModifiedTime": { @@ -454,7 +454,7 @@ "FillerSlate": { "target": "com.amazonaws.mediatailor#SlateSource", "traits": { - "smithy.api#documentation": "

The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses a LINEAR PlaybackMode.

" + "smithy.api#documentation": "

The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the LINEAR PlaybackMode. MediaTailor doesn't support filler slate for channels using the LOOP PlaybackMode.

" } }, "Outputs": { @@ -2586,6 +2586,21 @@ }, "com.amazonaws.mediatailor#MediaTailor": { "type": "service", + "traits": { + "aws.api#service": { + "sdkId": "MediaTailor", + "arnNamespace": "mediatailor", + "cloudFormationName": "MediaTailor", + "cloudTrailEventSource": "mediatailor.amazonaws.com", + "endpointPrefix": "api.mediatailor" + }, + "aws.auth#sigv4": { + "name": "mediatailor" + }, + "aws.protocols#restJson1": {}, + "smithy.api#documentation": "

Use the AWS Elemental MediaTailor SDKs and CLI to configure scalable ad insertion and linear channels. With MediaTailor, you can assemble existing content into a linear stream and serve targeted ads to viewers while maintaining broadcast quality in over-the-top (OTT) video applications. For information about using the service, including detailed information about the settings covered in this guide, see the AWS Elemental MediaTailor User Guide.

Through the SDKs and the CLI you manage AWS Elemental MediaTailor configurations and channels the same as you do through the console. For example, you specify ad insertion behavior and mapping information for the origin server and the ad decision server (ADS).

", + "smithy.api#title": "AWS MediaTailor" + }, "version": "2018-04-23", "operations": [ { @@ -2699,22 +2714,7 @@ { "target": "com.amazonaws.mediatailor#UpdateVodSource" } - ], - "traits": { - "aws.api#service": { - "sdkId": "MediaTailor", - "arnNamespace": "mediatailor", - "cloudFormationName": "MediaTailor", - "cloudTrailEventSource": "mediatailor.amazonaws.com", - "endpointPrefix": "api.mediatailor" - }, - "aws.auth#sigv4": { - "name": "mediatailor" - }, - "aws.protocols#restJson1": {}, - "smithy.api#documentation": "

Use the AWS Elemental MediaTailor SDKs and CLI to configure scalable ad insertion and linear channels. With MediaTailor, you can assemble existing content into a linear stream and serve targeted ads to viewers while maintaining broadcast quality in over-the-top (OTT) video applications. For information about using the service, including detailed information about the settings covered in this guide, see the AWS Elemental MediaTailor User Guide.

Through the SDKs and the CLI you manage AWS Elemental MediaTailor configurations and channels the same as you do through the console. For example, you specify ad insertion behavior and mapping information for the origin server and the ad decision server (ADS).

", - "smithy.api#title": "AWS MediaTailor" - } + ] }, "com.amazonaws.mediatailor#MessageType": { "type": "string", @@ -3874,6 +3874,12 @@ "smithy.api#required": {} } }, + "FillerSlate": { + "target": "com.amazonaws.mediatailor#SlateSource", + "traits": { + "smithy.api#documentation": "

The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the LINEAR PlaybackMode. MediaTailor doesn't support filler slate for channels using the LOOP PlaybackMode.

" + } + }, "Outputs": { "target": "com.amazonaws.mediatailor#RequestOutputs", "traits": { diff --git a/codegen/sdk-codegen/aws-models/mwaa.2020-07-01.json b/codegen/sdk-codegen/aws-models/mwaa.2020-07-01.json index f3e312eddc7..899f27a2f54 100644 --- a/codegen/sdk-codegen/aws-models/mwaa.2020-07-01.json +++ b/codegen/sdk-codegen/aws-models/mwaa.2020-07-01.json @@ -9,7 +9,7 @@ } }, "traits": { - "smithy.api#documentation": "

Access to the Airflow Web UI or CLI has been Denied. Please follow the MWAA user guide to setup permissions to access the Web UI and CLI functionality.

", + "smithy.api#documentation": "

Access to the Apache Airflow Web UI or CLI has been denied due to insufficient permissions. To learn more, see Accessing an Amazon MWAA environment.

", "smithy.api#error": "client", "smithy.api#httpError": 403 } @@ -35,6 +35,21 @@ }, "com.amazonaws.mwaa#AmazonMWAA": { "type": "service", + "traits": { + "aws.api#service": { + "sdkId": "MWAA", + "arnNamespace": "airflow", + "cloudFormationName": "AmazonMWAA", + "cloudTrailEventSource": "airflow.amazonaws.com", + "endpointPrefix": "airflow" + }, + "aws.auth#sigv4": { + "name": "airflow" + }, + "aws.protocols#restJson1": {}, + "smithy.api#documentation": "Amazon Managed Workflows for Apache Airflow\n

This section contains the Amazon Managed Workflows for Apache Airflow (MWAA) API reference documentation. For more information, see What Is Amazon MWAA?.

\n\n

\n Endpoints\n

\n \n\n

\n Regions\n

\n

For a list of regions that Amazon MWAA supports, see Region availability in the Amazon MWAA User Guide.

", + "smithy.api#title": "AmazonMWAA" + }, "version": "2020-07-01", "operations": [ { @@ -70,22 +85,7 @@ { "target": "com.amazonaws.mwaa#UpdateEnvironment" } - ], - "traits": { - "aws.api#service": { - "sdkId": "MWAA", - "arnNamespace": "airflow", - "cloudFormationName": "AmazonMWAA", - "cloudTrailEventSource": "airflow.amazonaws.com", - "endpointPrefix": "airflow" - }, - "aws.auth#sigv4": { - "name": "airflow" - }, - "aws.protocols#restJson1": {}, - "smithy.api#documentation": "Amazon Managed Workflows for Apache Airflow\n

This section contains the Amazon Managed Workflows for Apache Airflow (MWAA) API reference documentation. For more information, see What Is Amazon MWAA?.

", - "smithy.api#title": "AmazonMWAA" - } + ] }, "com.amazonaws.mwaa#CloudWatchLogGroupArn": { "type": "string", @@ -104,7 +104,7 @@ "min": 1, "max": 64 }, - "smithy.api#pattern": "^[a-z]+([a-z._]*[a-z]+)?$" + "smithy.api#pattern": "^[a-z]+([a-z0-9._]*[a-z0-9_]+)?$" } }, "com.amazonaws.mwaa#ConfigValue": { @@ -112,9 +112,9 @@ "traits": { "smithy.api#length": { "min": 1, - "max": 256 + "max": 65536 }, - "smithy.api#pattern": ".*" + "smithy.api#pattern": "^[ -~]+$" } }, "com.amazonaws.mwaa#CreateCliToken": { @@ -131,7 +131,7 @@ } ], "traits": { - "smithy.api#documentation": "

Create a CLI token to use Airflow CLI.

", + "smithy.api#documentation": "

Creates a CLI token for the Airflow CLI. To learn more, see Creating an Apache Airflow CLI token.

", "smithy.api#endpoint": { "hostPrefix": "env." }, @@ -148,7 +148,7 @@ "Name": { "target": "com.amazonaws.mwaa#EnvironmentName", "traits": { - "smithy.api#documentation": "

Create a CLI token request for a MWAA environment.

", + "smithy.api#documentation": "

The name of the Amazon MWAA environment. For example, MyMWAAEnvironment.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -161,14 +161,14 @@ "CliToken": { "target": "com.amazonaws.mwaa#Token", "traits": { - "smithy.api#documentation": "

Create an Airflow CLI login token response for the provided JWT token.

", + "smithy.api#documentation": "

An Airflow CLI login token.

", "smithy.api#sensitive": {} } }, "WebServerHostname": { "target": "com.amazonaws.mwaa#Hostname", "traits": { - "smithy.api#documentation": "

Create an Airflow CLI login token response for the provided webserver hostname.

" + "smithy.api#documentation": "

The Airflow web server hostname for the environment.

" } } } @@ -216,7 +216,7 @@ "ExecutionRoleArn": { "target": "com.amazonaws.mwaa#IamRoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the execution role for your environment. An execution role is an AWS Identity and Access Management (IAM) role that grants MWAA permission to access AWS services and resources used by your environment. For example, arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA Execution role.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the execution role for your environment. An execution role is an Amazon Web Services Identity and Access Management (IAM) role that grants MWAA permission to access Amazon Web Services services and resources used by your environment. For example, arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA Execution role.

", "smithy.api#required": {} } }, @@ -237,7 +237,7 @@ "NetworkConfiguration": { "target": "com.amazonaws.mwaa#NetworkConfiguration", "traits": { - "smithy.api#documentation": "

The VPC networking components used to secure and enable network traffic between the AWS resources for your environment. To learn more, see About networking on Amazon MWAA.

", + "smithy.api#documentation": "

The VPC networking components used to secure and enable network traffic between the Amazon Web Services resources for your environment. To learn more, see About networking on Amazon MWAA.

", "smithy.api#required": {} } }, @@ -287,31 +287,31 @@ "KmsKey": { "target": "com.amazonaws.mwaa#KmsKey", "traits": { - "smithy.api#documentation": "

The AWS Key Management Service (KMS) key to encrypt the data in your environment. You can use an AWS owned CMK, or a Customer managed CMK (advanced). To learn more, see Get started with Amazon Managed Workflows for Apache Airflow.

" + "smithy.api#documentation": "

The Amazon Web Services Key Management Service (KMS) key to encrypt the data in your environment. You can use an Amazon Web Services owned CMK, or a Customer managed CMK (advanced). To learn more, see Create an Amazon MWAA environment.

" } }, "AirflowVersion": { "target": "com.amazonaws.mwaa#AirflowVersion", "traits": { - "smithy.api#documentation": "

The Apache Airflow version for your environment. For example, v1.10.12. If no value is specified, defaults to the latest version. Valid values: v1.10.12.

" + "smithy.api#documentation": "

The Apache Airflow version for your environment. If no value is specified, defaults to the latest version. Valid values: 1.10.12, 2.0.2. To learn more, see Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (MWAA).

" } }, "LoggingConfiguration": { "target": "com.amazonaws.mwaa#LoggingConfigurationInput", "traits": { - "smithy.api#documentation": "

Defines the Apache Airflow logs to send to CloudWatch Logs: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs.

" + "smithy.api#documentation": "

Defines the Apache Airflow logs to send to CloudWatch Logs.

" } }, "WeeklyMaintenanceWindowStart": { "target": "com.amazonaws.mwaa#WeeklyMaintenanceWindowStart", "traits": { - "smithy.api#documentation": "

The day and time of the week to start weekly maintenance updates of your environment in the following format: DAY:HH:MM. For example: TUE:03:30. You can specify a start time in 30 minute increments only. Supported input includes the following:

\n " + "smithy.api#documentation": "

The day and time of the week in Coordinated Universal Time (UTC) 24-hour standard time to start weekly maintenance updates of your environment in the following format: DAY:HH:MM. For example: TUE:03:30. You can specify a start time in 30 minute increments only.

" } }, "Tags": { "target": "com.amazonaws.mwaa#TagMap", "traits": { - "smithy.api#documentation": "

The key-value tag pairs you want to associate to your environment. For example, \"Environment\": \"Staging\". To learn more, see Tagging AWS resources.

" + "smithy.api#documentation": "

The key-value tag pairs you want to associate to your environment. For example, \"Environment\": \"Staging\". To learn more, see Tagging Amazon Web Services resources.

" } }, "WebserverAccessMode": { @@ -329,7 +329,7 @@ "Schedulers": { "target": "com.amazonaws.mwaa#Schedulers", "traits": { - "smithy.api#documentation": "

The number of Apache Airflow schedulers to run in your environment.

" + "smithy.api#documentation": "

The number of Apache Airflow schedulers to run in your environment. Valid values:

\n " } } }, @@ -371,7 +371,7 @@ } ], "traits": { - "smithy.api#documentation": "

Create a JWT token to be used to login to Airflow Web UI with claims based Authentication.

", + "smithy.api#documentation": "

Creates a web login token for the Airflow Web UI. To learn more, see Creating an Apache Airflow web login token.

", "smithy.api#endpoint": { "hostPrefix": "env." }, @@ -389,7 +389,7 @@ "Name": { "target": "com.amazonaws.mwaa#EnvironmentName", "traits": { - "smithy.api#documentation": "

Create an Airflow Web UI login token request for a MWAA environment.

", + "smithy.api#documentation": "

The name of the Amazon MWAA environment. For example, MyMWAAEnvironment.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -402,14 +402,14 @@ "WebToken": { "target": "com.amazonaws.mwaa#Token", "traits": { - "smithy.api#documentation": "

Create an Airflow Web UI login token response for the provided JWT token.

", + "smithy.api#documentation": "

An Airflow web server login token.

", "smithy.api#sensitive": {} } }, "WebServerHostname": { "target": "com.amazonaws.mwaa#Hostname", "traits": { - "smithy.api#documentation": "

Create an Airflow Web UI login token response for the provided webserver hostname.

" + "smithy.api#documentation": "

The Airflow web server hostname for the environment.

" } } } @@ -472,20 +472,20 @@ "Name": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Internal only API.

", + "smithy.api#documentation": "

\n Internal only. The name of the dimension.

", "smithy.api#required": {} } }, "Value": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Internal only API.

", + "smithy.api#documentation": "

\n Internal only. The value of the dimension.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. Represents the dimensions of a metric. To learn more about the metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon CloudWatch.

" } }, "com.amazonaws.mwaa#Dimensions": { @@ -530,7 +530,7 @@ "ExecutionRoleArn": { "target": "com.amazonaws.mwaa#IamRoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to access AWS resources in your environment. For example, arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA Execution role.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to access Amazon Web Services resources in your environment. For example, arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA Execution role.

" } }, "ServiceRoleArn": { @@ -542,13 +542,13 @@ "KmsKey": { "target": "com.amazonaws.mwaa#KmsKey", "traits": { - "smithy.api#documentation": "

The Key Management Service (KMS) encryption key used to encrypt the data in your environment.

" + "smithy.api#documentation": "

The Amazon Web Services Key Management Service (KMS) encryption key used to encrypt the data in your environment.

" } }, "AirflowVersion": { "target": "com.amazonaws.mwaa#AirflowVersion", "traits": { - "smithy.api#documentation": "

The Apache Airflow version on your environment. For example, v1.10.12.

" + "smithy.api#documentation": "

The Apache Airflow version on your environment. Valid values: 1.10.12, 2.0.2.

" } }, "SourceBucketArn": { @@ -606,27 +606,33 @@ } }, "NetworkConfiguration": { - "target": "com.amazonaws.mwaa#NetworkConfiguration" + "target": "com.amazonaws.mwaa#NetworkConfiguration", + "traits": { + "smithy.api#documentation": "

Describes the VPC networking components used to secure and enable network traffic between the Amazon Web Services resources for your environment. To learn more, see About networking on Amazon MWAA.

" + } }, "LoggingConfiguration": { "target": "com.amazonaws.mwaa#LoggingConfiguration", "traits": { - "smithy.api#documentation": "

The Apache Airflow logs being sent to CloudWatch Logs: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs.

" + "smithy.api#documentation": "

The Apache Airflow logs published to CloudWatch Logs.

" } }, "LastUpdate": { - "target": "com.amazonaws.mwaa#LastUpdate" + "target": "com.amazonaws.mwaa#LastUpdate", + "traits": { + "smithy.api#documentation": "

The status of the last update on the environment.

" + } }, "WeeklyMaintenanceWindowStart": { "target": "com.amazonaws.mwaa#WeeklyMaintenanceWindowStart", "traits": { - "smithy.api#documentation": "

The day and time of the week that weekly maintenance updates are scheduled. For example: TUE:03:30.

" + "smithy.api#documentation": "

The day and time of the week in Coordinated Universal Time (UTC) 24-hour standard time that weekly maintenance updates are scheduled. For example: TUE:03:30.

" } }, "Tags": { "target": "com.amazonaws.mwaa#TagMap", "traits": { - "smithy.api#documentation": "

The key-value tag pairs associated to your environment. For example, \"Environment\": \"Staging\". To learn more, see Tagging AWS resources.

" + "smithy.api#documentation": "

The key-value tag pairs associated to your environment. For example, \"Environment\": \"Staging\". To learn more, see Tagging Amazon Web Services resources.

" } }, "WebserverAccessMode": { @@ -649,7 +655,7 @@ } }, "traits": { - "smithy.api#documentation": "

The Amazon Managed Workflows for Apache Airflow (MWAA) environment.

" + "smithy.api#documentation": "

Describes an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

" } }, "com.amazonaws.mwaa#EnvironmentArn": { @@ -759,7 +765,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the details of an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

", + "smithy.api#documentation": "

Describes an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

", "smithy.api#endpoint": { "hostPrefix": "api." }, @@ -844,7 +850,7 @@ "Status": { "target": "com.amazonaws.mwaa#UpdateStatus", "traits": { - "smithy.api#documentation": "

The status of the last update on the environment. Valid values: SUCCESS, PENDING, FAILED.

" + "smithy.api#documentation": "

The status of the last update on the environment.

" } }, "CreatedAt": { @@ -858,10 +864,16 @@ "traits": { "smithy.api#documentation": "

The error that was encountered during the last update of the environment.

" } + }, + "Source": { + "target": "com.amazonaws.mwaa#UpdateSource", + "traits": { + "smithy.api#documentation": "

The source of the last update to the environment. Includes internal processes by Amazon MWAA, such as an environment maintenance update.

" + } } }, "traits": { - "smithy.api#documentation": "

The status of the last update on the environment, and any errors that were encountered.

" + "smithy.api#documentation": "

Describes the status of the last update on the environment, and any errors that were encountered.

" } }, "com.amazonaws.mwaa#ListEnvironments": { @@ -928,7 +940,7 @@ "Environments": { "target": "com.amazonaws.mwaa#EnvironmentList", "traits": { - "smithy.api#documentation": "

Returns the list of Amazon MWAA environments.

", + "smithy.api#documentation": "

Returns a list of Amazon MWAA environments.

", "smithy.api#required": {} } }, @@ -991,7 +1003,7 @@ "Tags": { "target": "com.amazonaws.mwaa#TagMap", "traits": { - "smithy.api#documentation": "

The key-value tag pairs associated to your environment. To learn more, see Tagging AWS resources.

" + "smithy.api#documentation": "

The key-value tag pairs associated to your environment. To learn more, see Tagging Amazon Web Services resources.

" } } } @@ -1000,46 +1012,76 @@ "type": "structure", "members": { "DagProcessingLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration" + "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration", + "traits": { + "smithy.api#documentation": "

The Airflow DAG processing logs published to CloudWatch Logs and the log level.

" + } }, "SchedulerLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration" + "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration", + "traits": { + "smithy.api#documentation": "

The Airflow scheduler logs published to CloudWatch Logs and the log level.

" + } }, "WebserverLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration" + "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration", + "traits": { + "smithy.api#documentation": "

The Airflow web server logs published to CloudWatch Logs and the log level.

" + } }, "WorkerLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration" + "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration", + "traits": { + "smithy.api#documentation": "

The Airflow worker logs published to CloudWatch Logs and the log level.

" + } }, "TaskLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration" + "target": "com.amazonaws.mwaa#ModuleLoggingConfiguration", + "traits": { + "smithy.api#documentation": "

The Airflow task logs published to CloudWatch Logs and the log level.

" + } } }, "traits": { - "smithy.api#documentation": "

Defines the Apache Airflow logs to send to CloudWatch Logs: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs.

" + "smithy.api#documentation": "

Describes the Apache Airflow log types that are published to CloudWatch Logs.

" } }, "com.amazonaws.mwaa#LoggingConfigurationInput": { "type": "structure", "members": { "DagProcessingLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput" + "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput", + "traits": { + "smithy.api#documentation": "

Publishes Airflow DAG processing logs to CloudWatch Logs.

" + } }, "SchedulerLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput" + "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput", + "traits": { + "smithy.api#documentation": "

Publishes Airflow scheduler logs to CloudWatch Logs.

" + } }, "WebserverLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput" + "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput", + "traits": { + "smithy.api#documentation": "

Publishes Airflow web server logs to CloudWatch Logs.

" + } }, "WorkerLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput" + "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput", + "traits": { + "smithy.api#documentation": "

Publishes Airflow worker logs to CloudWatch Logs.

" + } }, "TaskLogs": { - "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput" + "target": "com.amazonaws.mwaa#ModuleLoggingConfigurationInput", + "traits": { + "smithy.api#documentation": "

Publishes Airflow task logs to CloudWatch Logs.

" + } } }, "traits": { - "smithy.api#documentation": "

Defines the Apache Airflow logs to send to CloudWatch Logs: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs.

" + "smithy.api#documentation": "

Defines the Apache Airflow log types to send to CloudWatch Logs.

" } }, "com.amazonaws.mwaa#LoggingEnabled": { @@ -1096,41 +1138,44 @@ "MetricName": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Internal only API.

", + "smithy.api#documentation": "

\n Internal only. The name of the metric.

", "smithy.api#required": {} } }, "Timestamp": { "target": "smithy.api#Timestamp", "traits": { - "smithy.api#documentation": "

Internal only API.

", + "smithy.api#documentation": "

\n Internal only. The time the metric data was received.

", "smithy.api#required": {} } }, "Dimensions": { "target": "com.amazonaws.mwaa#Dimensions", "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. The dimensions associated with the metric.

" } }, "Value": { "target": "smithy.api#Double", "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. The value for the metric.

" } }, "Unit": { - "target": "com.amazonaws.mwaa#Unit" + "target": "com.amazonaws.mwaa#Unit", + "traits": { + "smithy.api#documentation": "

\n Internal only. The unit used to store the metric.

" + } }, "StatisticValues": { "target": "com.amazonaws.mwaa#StatisticSet", "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. The statistical values for the metric.

" } } }, "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. Collects Apache Airflow metrics. To learn more about the metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon CloudWatch.

" } }, "com.amazonaws.mwaa#MinWorkers": { @@ -1148,13 +1193,13 @@ "Enabled": { "target": "com.amazonaws.mwaa#LoggingEnabled", "traits": { - "smithy.api#documentation": "

Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs) in CloudWatch Logs.

" + "smithy.api#documentation": "

Indicates whether the Apache Airflow log type (e.g. DagProcessingLogs) is enabled.

" } }, "LogLevel": { "target": "com.amazonaws.mwaa#LoggingLevel", "traits": { - "smithy.api#documentation": "

Defines the Apache Airflow logs to send for the log type (e.g. DagProcessingLogs) to CloudWatch Logs. Valid values: CRITICAL, ERROR, WARNING, INFO.

" + "smithy.api#documentation": "

The Apache Airflow log level for the log type (e.g. DagProcessingLogs).

" } }, "CloudWatchLogGroupArn": { @@ -1165,7 +1210,7 @@ } }, "traits": { - "smithy.api#documentation": "

Defines the type of logs to send for the Apache Airflow log type (e.g. DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel.

" + "smithy.api#documentation": "

Describes the Apache Airflow log details for the log type (e.g. DagProcessingLogs).

" } }, "com.amazonaws.mwaa#ModuleLoggingConfigurationInput": { @@ -1174,20 +1219,20 @@ "Enabled": { "target": "com.amazonaws.mwaa#LoggingEnabled", "traits": { - "smithy.api#documentation": "

Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs) in CloudWatch Logs.

", + "smithy.api#documentation": "

Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs).

", "smithy.api#required": {} } }, "LogLevel": { "target": "com.amazonaws.mwaa#LoggingLevel", "traits": { - "smithy.api#documentation": "

Defines the Apache Airflow logs to send for the log type (e.g. DagProcessingLogs) to CloudWatch Logs. Valid values: CRITICAL, ERROR, WARNING, INFO.

", + "smithy.api#documentation": "

Defines the Apache Airflow log level (e.g. INFO) to send to CloudWatch Logs.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Defines the type of logs to send for the Apache Airflow log type (e.g. DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel.

" + "smithy.api#documentation": "

Enables the Apache Airflow log type (e.g. DagProcessingLogs) and defines the log level to send to CloudWatch Logs (e.g. INFO).

" } }, "com.amazonaws.mwaa#NetworkConfiguration": { @@ -1196,18 +1241,18 @@ "SubnetIds": { "target": "com.amazonaws.mwaa#SubnetList", "traits": { - "smithy.api#documentation": "

A list of 2 subnet IDs. Required to create an environment. Must be private subnets in two different availability zones. A subnet must be attached to the same VPC as the security group.

" + "smithy.api#documentation": "

A list of subnet IDs. To learn more, see About networking on Amazon MWAA.

" } }, "SecurityGroupIds": { "target": "com.amazonaws.mwaa#SecurityGroupList", "traits": { - "smithy.api#documentation": "

A list of 1 or more security group IDs. Accepts up to 5 security group IDs. A security group must be attached to the same VPC as the subnets. To learn more, see Security in your VPC on Amazon MWAA.

" + "smithy.api#documentation": "

A list of security group IDs. To learn more, see Security in your VPC on Amazon MWAA.

" } } }, "traits": { - "smithy.api#documentation": "

The VPC networking components used to secure and enable network traffic between the AWS resources for your environment. To learn more, see About networking on Amazon MWAA.

" + "smithy.api#documentation": "

Describes the VPC networking components used to secure and enable network traffic between the Amazon Web Services resources for your environment. To learn more, see About networking on Amazon MWAA.

" } }, "com.amazonaws.mwaa#NextToken": { @@ -1235,7 +1280,7 @@ } ], "traits": { - "smithy.api#documentation": "An operation for publishing metrics from the customers to the Ops plane.", + "smithy.api#documentation": "

\n Internal only. Publishes environment health metrics to Amazon CloudWatch.

", "smithy.api#endpoint": { "hostPrefix": "ops." }, @@ -1252,7 +1297,7 @@ "EnvironmentName": { "target": "com.amazonaws.mwaa#EnvironmentName", "traits": { - "smithy.api#documentation": "

Publishes environment metric data to Amazon CloudWatch.

", + "smithy.api#documentation": "

\n Internal only. The name of the environment.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -1260,7 +1305,7 @@ "MetricData": { "target": "com.amazonaws.mwaa#MetricData", "traits": { - "smithy.api#documentation": "

Publishes metric data points to Amazon CloudWatch. CloudWatch associates the data points with the specified metrica.

", + "smithy.api#documentation": "

\n Internal only. Publishes metrics to Amazon CloudWatch. To learn more about the metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon CloudWatch.

", "smithy.api#required": {} } } @@ -1349,30 +1394,30 @@ "SampleCount": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. The number of samples used for the statistic set.

" } }, "Sum": { "target": "smithy.api#Double", "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. The sum of values for the sample set.

" } }, "Minimum": { "target": "smithy.api#Double", "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. The minimum value of the sample set.

" } }, "Maximum": { "target": "smithy.api#Double", "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. The maximum value of the sample set.

" } } }, "traits": { - "smithy.api#documentation": "

Internal only API.

" + "smithy.api#documentation": "

\n Internal only. Represents a set of statistics that describe a specific metric. To learn more about the metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon CloudWatch.

" } }, "com.amazonaws.mwaa#SubnetId": { @@ -1478,7 +1523,7 @@ "Tags": { "target": "com.amazonaws.mwaa#TagMap", "traits": { - "smithy.api#documentation": "

The key-value tag pairs you want to associate to your environment. For example, \"Environment\": \"Staging\". To learn more, see Tagging AWS resources.

", + "smithy.api#documentation": "

The key-value tag pairs you want to associate to your environment. For example, \"Environment\": \"Staging\". To learn more, see Tagging Amazon Web Services resources.

", "smithy.api#required": {} } } @@ -1504,7 +1549,6 @@ "com.amazonaws.mwaa#Unit": { "type": "string", "traits": { - "smithy.api#documentation": "Unit", "smithy.api#enum": [ { "value": "Seconds", @@ -1722,13 +1766,13 @@ "ExecutionRoleArn": { "target": "com.amazonaws.mwaa#IamRoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to access AWS resources in your environment. For example, arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA Execution role.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to access Amazon Web Services resources in your environment. For example, arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA Execution role.

" } }, "AirflowVersion": { "target": "com.amazonaws.mwaa#AirflowVersion", "traits": { - "smithy.api#documentation": "

The Apache Airflow version for your environment. For example, v1.10.12. If no value is specified, defaults to the latest version. Valid values: v1.10.12.

" + "smithy.api#documentation": "

The Apache Airflow version for your environment. If no value is specified, defaults to the latest version. Valid values: 1.10.12, 2.0.2.

" } }, "SourceBucketArn": { @@ -1789,19 +1833,19 @@ "NetworkConfiguration": { "target": "com.amazonaws.mwaa#UpdateNetworkConfigurationInput", "traits": { - "smithy.api#documentation": "

The VPC networking components used to secure and enable network traffic between the AWS resources for your environment. To learn more, see About networking on Amazon MWAA.

" + "smithy.api#documentation": "

The VPC networking components used to secure and enable network traffic between the Amazon Web Services resources for your environment. To learn more, see About networking on Amazon MWAA.

" } }, "LoggingConfiguration": { "target": "com.amazonaws.mwaa#LoggingConfigurationInput", "traits": { - "smithy.api#documentation": "

Defines the Apache Airflow logs to send to CloudWatch Logs: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs.

" + "smithy.api#documentation": "

The Apache Airflow log types to send to CloudWatch Logs.

" } }, "WeeklyMaintenanceWindowStart": { "target": "com.amazonaws.mwaa#WeeklyMaintenanceWindowStart", "traits": { - "smithy.api#documentation": "

The day and time of the week to start weekly maintenance updates of your environment in the following format: DAY:HH:MM. For example: TUE:03:30. You can specify a start time in 30 minute increments only. Supported input includes the following:

\n " + "smithy.api#documentation": "

The day and time of the week in Coordinated Universal Time (UTC) 24-hour standard time to start weekly maintenance updates of your environment in the following format: DAY:HH:MM. For example: TUE:03:30. You can specify a start time in 30 minute increments only.

" } }, "WebserverAccessMode": { @@ -1852,7 +1896,7 @@ } }, "traits": { - "smithy.api#documentation": "

An object containing the error encountered with the last update: ErrorCode, ErrorMessage.

" + "smithy.api#documentation": "

Describes the error(s) encountered with the last update of the environment.

" } }, "com.amazonaws.mwaa#UpdateNetworkConfigurationInput": { @@ -1861,13 +1905,23 @@ "SecurityGroupIds": { "target": "com.amazonaws.mwaa#SecurityGroupList", "traits": { - "smithy.api#documentation": "

A list of 1 or more security group IDs. Accepts up to 5 security group IDs. A security group must be attached to the same VPC as the subnets. To learn more, see Security in your VPC on Amazon MWAA.

", + "smithy.api#documentation": "

A list of security group IDs. A security group must be attached to the same VPC as the subnets. To learn more, see Security in your VPC on Amazon MWAA.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The VPC networking components used to secure and enable network traffic between the AWS resources for your environment. To learn more, see About networking on Amazon MWAA.

" + "smithy.api#documentation": "

Defines the VPC networking components used to secure and enable network traffic between the Amazon Web Services resources for your environment. To learn more, see About networking on Amazon MWAA.

" + } + }, + "com.amazonaws.mwaa#UpdateSource": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^.+$" } }, "com.amazonaws.mwaa#UpdateStatus": { diff --git a/codegen/sdk-codegen/aws-models/nimble.2020-08-01.json b/codegen/sdk-codegen/aws-models/nimble.2020-08-01.json index 73755e93bc0..366c5e40fc9 100644 --- a/codegen/sdk-codegen/aws-models/nimble.2020-08-01.json +++ b/codegen/sdk-codegen/aws-models/nimble.2020-08-01.json @@ -615,7 +615,7 @@ "ownedBy": { "target": "com.amazonaws.nimble#String", "traits": { - "smithy.api#documentation": "

The user ID of the user that owns the streaming session.

" + "smithy.api#documentation": "

The user ID of the user that owns the streaming session. The user that owns the\n session will be logging into the session and interacting with the virtual\n workstation.

" } }, "streamingImageId": { @@ -2473,7 +2473,7 @@ "aws.iam#conditionKeys": [ "nimble:requesterPrincipalId" ], - "smithy.api#documentation": "

Gets StreamingSession resource.

\n

anvoke this operation to poll for a streaming session state while creating or deleting\n a session.

", + "smithy.api#documentation": "

Gets StreamingSession resource.

\n

Invoke this operation to poll for a streaming session state while creating or deleting\n a session.

", "smithy.api#http": { "method": "GET", "uri": "/2020-08-01/studios/{studioId}/streaming-sessions/{sessionId}", @@ -3205,6 +3205,16 @@ "aws.cloudformation#cfnExcludeProperty": {}, "smithy.api#documentation": "

The user ID of the user that most recently updated the resource.

" } + }, + "validationResults": { + "target": "com.amazonaws.nimble#ValidationResults", + "traits": { + "aws.cloudformation#cfnExcludeProperty": {}, + "smithy.api#documentation": "

The list of the latest validation results.

", + "smithy.api#tags": [ + "launch_profile_validation" + ] + } } }, "traits": { @@ -3600,6 +3610,12 @@ ] } }, + "com.amazonaws.nimble#LaunchProfileStateList": { + "type": "list", + "member": { + "target": "com.amazonaws.nimble#LaunchProfileState" + } + }, "com.amazonaws.nimble#LaunchProfileStatusCode": { "type": "string", "traits": { @@ -3671,6 +3687,102 @@ } } }, + "com.amazonaws.nimble#LaunchProfileValidationState": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "VALIDATION_NOT_STARTED", + "name": "VALIDATION_NOT_STARTED" + }, + { + "value": "VALIDATION_IN_PROGRESS", + "name": "VALIDATION_IN_PROGRESS" + }, + { + "value": "VALIDATION_SUCCESS", + "name": "VALIDATION_SUCCESS" + }, + { + "value": "VALIDATION_FAILED", + "name": "VALIDATION_FAILED" + }, + { + "value": "VALIDATION_FAILED_INTERNAL_SERVER_ERROR", + "name": "VALIDATION_FAILED_INTERNAL_SERVER_ERROR" + } + ] + } + }, + "com.amazonaws.nimble#LaunchProfileValidationStatusCode": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "VALIDATION_NOT_STARTED", + "name": "VALIDATION_NOT_STARTED" + }, + { + "value": "VALIDATION_IN_PROGRESS", + "name": "VALIDATION_IN_PROGRESS" + }, + { + "value": "VALIDATION_SUCCESS", + "name": "VALIDATION_SUCCESS" + }, + { + "value": "VALIDATION_FAILED_INVALID_SUBNET_ROUTE_TABLE_ASSOCIATION", + "name": "VALIDATION_FAILED_INVALID_SUBNET_ROUTE_TABLE_ASSOCIATION" + }, + { + "value": "VALIDATION_FAILED_SUBNET_NOT_FOUND", + "name": "VALIDATION_FAILED_SUBNET_NOT_FOUND" + }, + { + "value": "VALIDATION_FAILED_INVALID_SECURITY_GROUP_ASSOCIATION", + "name": "VALIDATION_FAILED_INVALID_SECURITY_GROUP_ASSOCIATION" + }, + { + "value": "VALIDATION_FAILED_INVALID_ACTIVE_DIRECTORY", + "name": "VALIDATION_FAILED_INVALID_ACTIVE_DIRECTORY" + }, + { + "value": "VALIDATION_FAILED_UNAUTHORIZED", + "name": "VALIDATION_FAILED_UNAUTHORIZED" + }, + { + "value": "VALIDATION_FAILED_INTERNAL_SERVER_ERROR", + "name": "VALIDATION_FAILED_INTERNAL_SERVER_ERROR" + } + ] + } + }, + "com.amazonaws.nimble#LaunchProfileValidationStatusMessage": { + "type": "string" + }, + "com.amazonaws.nimble#LaunchProfileValidationType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "VALIDATE_ACTIVE_DIRECTORY_STUDIO_COMPONENT", + "name": "VALIDATE_ACTIVE_DIRECTORY_STUDIO_COMPONENT" + }, + { + "value": "VALIDATE_SUBNET_ASSOCIATION", + "name": "VALIDATE_SUBNET_ASSOCIATION" + }, + { + "value": "VALIDATE_NETWORK_ACL_ASSOCIATION", + "name": "VALIDATE_NETWORK_ACL_ASSOCIATION" + }, + { + "value": "VALIDATE_SECURITY_GROUP_ASSOCIATION", + "name": "VALIDATE_SECURITY_GROUP_ASSOCIATION" + } + ] + } + }, "com.amazonaws.nimble#LaunchPurpose": { "type": "string", "traits": { @@ -4059,7 +4171,7 @@ } }, "states": { - "target": "com.amazonaws.nimble#StringList", + "target": "com.amazonaws.nimble#LaunchProfileStateList", "traits": { "smithy.api#documentation": "

Filter this request to launch profiles in any of the given states.

", "smithy.api#httpQuery": "states" @@ -4359,7 +4471,7 @@ } }, "states": { - "target": "com.amazonaws.nimble#StringList", + "target": "com.amazonaws.nimble#StudioComponentStateList", "traits": { "smithy.api#documentation": "

Filters the request to studio components that are in one of the given states.

", "smithy.api#httpQuery": "states" @@ -4374,7 +4486,7 @@ } }, "types": { - "target": "com.amazonaws.nimble#StringList", + "target": "com.amazonaws.nimble#StudioComponentTypeList", "traits": { "smithy.api#documentation": "

Filters the request to studio components that are of one of the given types.

", "smithy.api#httpQuery": "types" @@ -5358,7 +5470,7 @@ "maxStoppedSessionLengthInMinutes": { "target": "com.amazonaws.nimble#StreamConfigurationMaxStoppedSessionLengthInMinutes", "traits": { - "smithy.api#documentation": "

Integer that determines if you can start and stop your sessions and how long a session\n can stay in the STOPPED state. The default value is 0. The maximum value is 5760.

\n

If the value is missing or set to 0, your sessions can’t be stopped. If you then call\n StopStreamingSession, the session fails. If the time that a session stays in the READY\n state exceeds the maxSessionLengthInMinutes value, the session will automatically be\n terminated by AWS (instead of stopped).

\n

If the value is set to a positive number, the session can be stopped. You can call\n StopStreamingSession to stop sessions in the READY state. If the time that a session\n stays in the READY state exceeds the maxSessionLengthInMinutes value, the session will\n automatically be stopped by AWS (instead of terminated).

", + "smithy.api#documentation": "

Integer that determines if you can start and stop your sessions and how long a session\n can stay in the STOPPED state. The default value is 0. The maximum value is 5760.

\n

If the value is missing or set to 0, your sessions can’t be stopped. If you then call\n StopStreamingSession, the session fails. If the time that a session\n stays in the READY state exceeds the maxSessionLengthInMinutes value, the\n session will automatically be terminated by AWS (instead of stopped).

\n

If the value is set to a positive number, the session can be stopped. You can call\n StopStreamingSession to stop sessions in the READY state. If the time\n that a session stays in the READY state exceeds the\n maxSessionLengthInMinutes value, the session will automatically be\n stopped by AWS (instead of terminated).

", "smithy.api#tags": [ "stop_start_streaming_session" ] @@ -5411,7 +5523,7 @@ "maxStoppedSessionLengthInMinutes": { "target": "com.amazonaws.nimble#StreamConfigurationMaxStoppedSessionLengthInMinutes", "traits": { - "smithy.api#documentation": "

Integer that determines if you can start and stop your sessions and how long a session\n can stay in the STOPPED state. The default value is 0. The maximum value is 5760.

\n

If the value is missing or set to 0, your sessions can’t be stopped. If you then call\n StopStreamingSession, the session fails. If the time that a session stays in the READY\n state exceeds the maxSessionLengthInMinutes value, the session will automatically be\n terminated by AWS (instead of stopped).

\n

If the value is set to a positive number, the session can be stopped. You can call\n StopStreamingSession to stop sessions in the READY state. If the time that a session\n stays in the READY state exceeds the maxSessionLengthInMinutes value, the session will\n automatically be stopped by AWS (instead of terminated).

", + "smithy.api#documentation": "

Integer that determines if you can start and stop your sessions and how long a session\n can stay in the STOPPED state. The default value is 0. The maximum value is 5760.

\n

If the value is missing or set to 0, your sessions can’t be stopped. If you then call\n StopStreamingSession, the session fails. If the time that a session\n stays in the READY state exceeds the maxSessionLengthInMinutes value, the\n session will automatically be terminated by AWS (instead of stopped).

\n

If the value is set to a positive number, the session can be stopped. You can call\n StopStreamingSession to stop sessions in the READY state. If the time\n that a session stays in the READY state exceeds the\n maxSessionLengthInMinutes value, the session will automatically be\n stopped by AWS (instead of terminated).

", "smithy.api#tags": [ "stop_start_streaming_session" ] @@ -5891,7 +6003,7 @@ "ownedBy": { "target": "com.amazonaws.nimble#String", "traits": { - "smithy.api#documentation": "

The user ID of the user that owns the streaming session.

" + "smithy.api#documentation": "

The user ID of the user that owns the streaming session. The user that owns the\n session will be logging into the session and interacting with the virtual\n workstation.

" } }, "sessionId": { @@ -6172,6 +6284,10 @@ { "value": "STREAMING_SESSION_START_IN_PROGRESS", "name": "STREAMING_SESSION_START_IN_PROGRESS" + }, + { + "value": "AMI_VALIDATION_ERROR", + "name": "AMI_VALIDATION_ERROR" } ] } @@ -6204,13 +6320,13 @@ "linux": { "target": "com.amazonaws.nimble#StreamingSessionStorageRootPathLinux", "traits": { - "smithy.api#documentation": "

The folder path in Linux workstations where files are uploaded. The default path is\n $HOME/Downloads.

" + "smithy.api#documentation": "

The folder path in Linux workstations where files are uploaded.

" } }, "windows": { "target": "com.amazonaws.nimble#StreamingSessionStorageRootPathWindows", "traits": { - "smithy.api#documentation": "

The folder path in Windows workstations where files are uploaded. The default path is\n %HOMEPATH%\\Downloads.

" + "smithy.api#documentation": "

The folder path in Windows workstations where files are uploaded.

" } } }, @@ -6264,7 +6380,7 @@ "ownedBy": { "target": "com.amazonaws.nimble#String", "traits": { - "smithy.api#documentation": "

The user ID of the user that owns the streaming session.

" + "smithy.api#documentation": "

The user ID of the user that owns the streaming session. The user that owns the\n session will be logging into the session and interacting with the virtual\n workstation.

" } }, "state": { @@ -6877,6 +6993,12 @@ ] } }, + "com.amazonaws.nimble#StudioComponentStateList": { + "type": "list", + "member": { + "target": "com.amazonaws.nimble#StudioComponentState" + } + }, "com.amazonaws.nimble#StudioComponentStatusCode": { "type": "string", "traits": { @@ -7043,6 +7165,12 @@ ] } }, + "com.amazonaws.nimble#StudioComponentTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.nimble#StudioComponentType" + } + }, "com.amazonaws.nimble#StudioDisplayName": { "type": "string", "traits": { @@ -8166,6 +8294,48 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.nimble#ValidationResult": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.nimble#LaunchProfileValidationType", + "traits": { + "smithy.api#documentation": "

The type of the validation result.

", + "smithy.api#required": {} + } + }, + "state": { + "target": "com.amazonaws.nimble#LaunchProfileValidationState", + "traits": { + "smithy.api#documentation": "

The current state.

", + "smithy.api#required": {} + } + }, + "statusCode": { + "target": "com.amazonaws.nimble#LaunchProfileValidationStatusCode", + "traits": { + "smithy.api#documentation": "

The status code. This will contain the failure reason if the state is\n VALIDATION_FAILED.

", + "smithy.api#required": {} + } + }, + "statusMessage": { + "target": "com.amazonaws.nimble#LaunchProfileValidationStatusMessage", + "traits": { + "smithy.api#documentation": "

The status message for the validation result.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The launch profile validation result.

" + } + }, + "com.amazonaws.nimble#ValidationResults": { + "type": "list", + "member": { + "target": "com.amazonaws.nimble#ValidationResult" + } + }, "com.amazonaws.nimble#WindowsMountDrive": { "type": "string", "traits": { diff --git a/codegen/sdk-codegen/aws-models/opensearch.2021-01-01.json b/codegen/sdk-codegen/aws-models/opensearch.2021-01-01.json index dceaa996590..c3a990d311c 100644 --- a/codegen/sdk-codegen/aws-models/opensearch.2021-01-01.json +++ b/codegen/sdk-codegen/aws-models/opensearch.2021-01-01.json @@ -283,6 +283,18 @@ "traits": { "smithy.api#documentation": "

Describes the SAML application configured for a domain.

" } + }, + "AnonymousAuthDisableDate": { + "target": "com.amazonaws.opensearch#DisableTimestamp", + "traits": { + "smithy.api#documentation": "

Specifies the Anonymous Auth Disable Date when Anonymous Auth is enabled.

" + } + }, + "AnonymousAuthEnabled": { + "target": "com.amazonaws.opensearch#Boolean", + "traits": { + "smithy.api#documentation": "

True if Anonymous auth is enabled. Anonymous auth can be enabled only when AdvancedSecurity is enabled on existing domains.

" + } } }, "traits": { @@ -315,6 +327,12 @@ "traits": { "smithy.api#documentation": "

The SAML application configuration for the domain.

" } + }, + "AnonymousAuthEnabled": { + "target": "com.amazonaws.opensearch#Boolean", + "traits": { + "smithy.api#documentation": "

True if Anonymous auth is enabled. Anonymous auth can be enabled only when AdvancedSecurity is enabled on existing domains.

" + } } }, "traits": { @@ -345,6 +363,24 @@ }, "com.amazonaws.opensearch#AmazonOpenSearchService": { "type": "service", + "traits": { + "aws.api#service": { + "sdkId": "OpenSearch", + "arnNamespace": "es", + "cloudFormationName": "OpenSearch", + "cloudTrailEventSource": "opensearch.amazonaws.com", + "endpointPrefix": "es" + }, + "aws.auth#sigv4": { + "name": "es" + }, + "aws.protocols#restJson1": {}, + "smithy.api#documentation": "Amazon OpenSearch Configuration Service\n

Use the Amazon OpenSearch configuration API to create, configure, and manage Amazon OpenSearch Service domains.

\n

For sample code that uses the configuration API, see the \n Amazon OpenSearch Service Developer Guide.\n The guide also contains \n sample\n code for sending signed HTTP requests to the OpenSearch APIs.\n

\n

The endpoint for configuration service requests is region-specific: es.region.amazonaws.com.\n For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints,\n see Regions and Endpoints.\n

", + "smithy.api#title": "Amazon OpenSearch Service", + "smithy.api#xmlNamespace": { + "uri": "http://es.amazonaws.com/doc/2021-01-01/" + } + }, "version": "2021-01-01", "operations": [ { @@ -464,25 +500,7 @@ { "target": "com.amazonaws.opensearch#UpgradeDomain" } - ], - "traits": { - "aws.api#service": { - "sdkId": "OpenSearch", - "arnNamespace": "es", - "cloudFormationName": "OpenSearch", - "cloudTrailEventSource": "opensearch.amazonaws.com", - "endpointPrefix": "es" - }, - "aws.auth#sigv4": { - "name": "es" - }, - "aws.protocols#restJson1": {}, - "smithy.api#documentation": "Amazon OpenSearch Configuration Service\n

Use the Amazon OpenSearch configuration API to create, configure, and manage Amazon OpenSearch Service domains.

\n

For sample code that uses the configuration API, see the \n Amazon OpenSearch Service Developer Guide.\n The guide also contains \n sample\n code for sending signed HTTP requests to the OpenSearch APIs.\n

\n

The endpoint for configuration service requests is region-specific: es.region.amazonaws.com.\n For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints,\n see Regions and Endpoints.\n

", - "smithy.api#title": "Amazon OpenSearch Service", - "smithy.api#xmlNamespace": { - "uri": "http://es.amazonaws.com/doc/2021-01-01/" - } - } + ] }, "com.amazonaws.opensearch#AssociatePackage": { "type": "operation", @@ -2614,6 +2632,9 @@ "smithy.api#documentation": "

Container for results from\n DescribeReservedInstances\n

" } }, + "com.amazonaws.opensearch#DisableTimestamp": { + "type": "timestamp" + }, "com.amazonaws.opensearch#DisabledOperationException": { "type": "structure", "members": { diff --git a/codegen/sdk-codegen/aws-models/pi.2018-02-27.json b/codegen/sdk-codegen/aws-models/pi.2018-02-27.json index 4b0bb9e807d..b54a70e7d47 100644 --- a/codegen/sdk-codegen/aws-models/pi.2018-02-27.json +++ b/codegen/sdk-codegen/aws-models/pi.2018-02-27.json @@ -29,6 +29,27 @@ ] }, "shapes": { + "com.amazonaws.pi#AdditionalMetricsList": { + "type": "list", + "member": { + "target": "com.amazonaws.pi#RequestString" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 30 + } + } + }, + "com.amazonaws.pi#AdditionalMetricsMap": { + "type": "map", + "key": { + "target": "com.amazonaws.pi#RequestString" + }, + "value": { + "target": "com.amazonaws.pi#Double" + } + }, "com.amazonaws.pi#DataPoint": { "type": "structure", "members": { @@ -77,7 +98,12 @@ } ], "traits": { - "smithy.api#documentation": "

For a specific time period, retrieve the top N dimension keys for a\n metric.

\n \n

Each response element returns a maximum of 500 bytes. For larger elements, such as SQL statements, \n only the first 500 bytes are returned.

\n
" + "smithy.api#documentation": "

For a specific time period, retrieve the top N dimension keys for a metric.\n

\n \n

Each response element returns a maximum of 500 bytes. For larger elements, such as SQL statements, \n only the first 500 bytes are returned.

\n
", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + } } }, "com.amazonaws.pi#DescribeDimensionKeysRequest": { @@ -86,21 +112,21 @@ "ServiceType": { "target": "com.amazonaws.pi#ServiceType", "traits": { - "smithy.api#documentation": "

The AWS service for which Performance Insights will return metrics. The only valid value for ServiceType is\n RDS.

", + "smithy.api#documentation": "

The Amazon Web Services service for which Performance Insights will return metrics. The only valid value for \n ServiceType is RDS.\n

", "smithy.api#required": {} } }, "Identifier": { "target": "com.amazonaws.pi#RequestString", "traits": { - "smithy.api#documentation": "

An immutable, AWS Region-unique identifier for a data source. Performance Insights gathers metrics from\n this data source.

\n

To use an Amazon RDS instance as a data source, you specify its DbiResourceId value. For example,\n specify db-FAIHNTYBKTGAUSUZQYPDS2GW4A\n

", + "smithy.api#documentation": "

An immutable, Amazon Web Services Region-unique identifier for a data source. Performance Insights gathers metrics from\n this data source.

\n

To use an Amazon RDS instance as a data source, you specify its DbiResourceId value. \n For example, specify db-FAIHNTYBKTGAUSUZQYPDS2GW4A.\n

", "smithy.api#required": {} } }, "StartTime": { "target": "com.amazonaws.pi#ISOTimestamp", "traits": { - "smithy.api#documentation": "

The date and time specifying the beginning of the requested time series data. You must specify a\n StartTime within the past 7 days. The value specified is inclusive, which means\n that data points equal to or greater than StartTime are returned.

\n

The value for StartTime must be earlier than the value for\n EndTime.

", + "smithy.api#documentation": "

The date and time specifying the beginning of the requested time series data. You must specify a\n StartTime within the past 7 days. The value specified is inclusive, \n which means that data points equal to or greater than StartTime are returned.\n

\n

The value for StartTime must be earlier than the value for EndTime.\n

", "smithy.api#required": {} } }, @@ -114,45 +140,51 @@ "Metric": { "target": "com.amazonaws.pi#RequestString", "traits": { - "smithy.api#documentation": "

The name of a Performance Insights metric to be measured.

\n

Valid values for Metric are:

\n \n \n

If the number of active sessions is less than an internal Performance Insights threshold, db.load.avg and db.sampledload.avg \n are the same value. If the number of active sessions is greater than the internal threshold, Performance Insights samples the active sessions, with db.load.avg \n showing the scaled values, db.sampledload.avg showing the raw values, and db.sampledload.avg less than db.load.avg. \n For most use cases, you can query db.load.avg only.

", + "smithy.api#documentation": "

The name of a Performance Insights metric to be measured.

\n

Valid values for Metric are:

\n \n \n

If the number of active sessions is less than an internal Performance Insights threshold, db.load.avg \n and db.sampledload.avg are the same value. If the number of active sessions is greater than \n the internal threshold, Performance Insights samples the active sessions, with db.load.avg \n showing the scaled values, db.sampledload.avg showing the raw values, and \n db.sampledload.avg less than db.load.avg. For most use cases, you can \n query db.load.avg only.\n

", "smithy.api#required": {} } }, "PeriodInSeconds": { "target": "com.amazonaws.pi#Integer", "traits": { - "smithy.api#documentation": "

The granularity, in seconds, of the data points returned from Performance Insights. A period can be as short as\n one second, or as long as one day (86400 seconds). Valid values are:

\n \n \n \n

If you don't specify PeriodInSeconds, then Performance Insights chooses a value for you, with a goal of returning\n roughly 100-200 data points in the response.

" + "smithy.api#documentation": "

The granularity, in seconds, of the data points returned from Performance Insights. A period can be as short as \n one second, or as long as one day (86400 seconds). Valid values are:\n

\n \n \n

If you don't specify PeriodInSeconds, then Performance Insights chooses a value for you, with a \n goal of returning roughly 100-200 data points in the response.\n

" } }, "GroupBy": { "target": "com.amazonaws.pi#DimensionGroup", "traits": { - "smithy.api#documentation": "

A specification for how to aggregate the data points from a query result. You must specify a valid dimension group.\n Performance Insights returns all dimensions within this group, unless you provide the names of specific dimensions within this group.\n You can also request that Performance Insights return a limited number of values for a dimension.

", + "smithy.api#documentation": "

A specification for how to aggregate the data points from a query result. You must specify \n a valid dimension group. Performance Insights returns all dimensions within this group, unless you provide \n the names of specific dimensions within this group. You can also request that Performance Insights return \n a limited number of values for a dimension.\n

", "smithy.api#required": {} } }, + "AdditionalMetrics": { + "target": "com.amazonaws.pi#AdditionalMetricsList", + "traits": { + "smithy.api#documentation": "

Additional metrics for the top N dimension keys. \n If the specified dimension group in the GroupBy parameter is db.sql_tokenized, you can \n specify per-SQL metrics to get the values for the top N SQL digests. The response syntax is\n \"AdditionalMetrics\" : { \"string\" : \"string\" }.\n

\n

" + } + }, "PartitionBy": { "target": "com.amazonaws.pi#DimensionGroup", "traits": { - "smithy.api#documentation": "

For each dimension specified in \n GroupBy, specify a secondary dimension to further subdivide the partition keys in the response.

" + "smithy.api#documentation": "

For each dimension specified in GroupBy, specify a secondary dimension \n to further subdivide the partition keys in the response.\n

" } }, "Filter": { "target": "com.amazonaws.pi#MetricQueryFilterMap", "traits": { - "smithy.api#documentation": "

One or more filters to apply in the request. Restrictions:

\n " + "smithy.api#documentation": "

One or more filters to apply in the request. Restrictions:

\n " } }, "MaxResults": { "target": "com.amazonaws.pi#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of items to return in the response. \n If more items exist than the specified MaxRecords value, a pagination \n token is included in the response so that the remaining \n results can be retrieved.\n

" + "smithy.api#documentation": "

The maximum number of items to return in the response. If more items exist than the \n specified MaxRecords value, a pagination token is included in the response \n so that the remaining results can be retrieved.\n

" } }, "NextToken": { "target": "com.amazonaws.pi#NextToken", "traits": { - "smithy.api#documentation": "

An optional pagination token provided by a previous request. If\n this parameter is specified, the response includes only records beyond the token, up to the\n value specified by MaxRecords.

" + "smithy.api#documentation": "

An optional pagination token provided by a previous request. If this parameter is specified, \n the response includes only records beyond the token, up to the value specified by MaxRecords.\n

" } } } @@ -163,19 +195,19 @@ "AlignedStartTime": { "target": "com.amazonaws.pi#ISOTimestamp", "traits": { - "smithy.api#documentation": "

The start time for the returned dimension keys, after alignment to a granular boundary (as\n specified by PeriodInSeconds). AlignedStartTime will be less than or\n equal to the value of the user-specified StartTime.

" + "smithy.api#documentation": "

The start time for the returned dimension keys, after alignment to a granular boundary (as \n specified by PeriodInSeconds). AlignedStartTime will be less than or \n equal to the value of the user-specified StartTime.\n

" } }, "AlignedEndTime": { "target": "com.amazonaws.pi#ISOTimestamp", "traits": { - "smithy.api#documentation": "

The end time for the returned dimension keys, after alignment to a granular boundary (as\n specified by PeriodInSeconds). AlignedEndTime will be greater than\n or equal to the value of the user-specified Endtime.

" + "smithy.api#documentation": "

The end time for the returned dimension keys, after alignment to a granular boundary (as \n specified by PeriodInSeconds). AlignedEndTime will be greater than \n or equal to the value of the user-specified Endtime.\n

" } }, "PartitionKeys": { "target": "com.amazonaws.pi#ResponsePartitionKeyList", "traits": { - "smithy.api#documentation": "

If PartitionBy was present in the request, PartitionKeys contains the breakdown of dimension keys by the specified partitions.

" + "smithy.api#documentation": "

If PartitionBy was present in the request, PartitionKeys contains \n the breakdown of dimension keys by the specified partitions.\n

" } }, "Keys": { @@ -187,11 +219,20 @@ "NextToken": { "target": "com.amazonaws.pi#NextToken", "traits": { - "smithy.api#documentation": "

An optional pagination token provided by a previous request. If\n this parameter is specified, the response includes only records beyond the token, up to the\n value specified by MaxRecords.

" + "smithy.api#documentation": "

A pagination token that indicates the response didn’t return all available records\n because MaxRecords was specified in the previous request. To get the \n remaining records, specify NextToken in a separate request with this value.\n

" } } } }, + "com.amazonaws.pi#Description": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + } + } + }, "com.amazonaws.pi#DetailStatus": { "type": "string", "traits": { @@ -211,20 +252,40 @@ ] } }, + "com.amazonaws.pi#DimensionDetail": { + "type": "structure", + "members": { + "Identifier": { + "target": "com.amazonaws.pi#String", + "traits": { + "smithy.api#documentation": "

The identifier of a dimension.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The information about a dimension.

" + } + }, + "com.amazonaws.pi#DimensionDetailList": { + "type": "list", + "member": { + "target": "com.amazonaws.pi#DimensionDetail" + } + }, "com.amazonaws.pi#DimensionGroup": { "type": "structure", "members": { "Group": { "target": "com.amazonaws.pi#RequestString", "traits": { - "smithy.api#documentation": "

The name of the dimension group. Valid values are:

\n \n ", + "smithy.api#documentation": "

The name of the dimension group. Valid values are:

\n \n ", "smithy.api#required": {} } }, "Dimensions": { "target": "com.amazonaws.pi#RequestStringList", "traits": { - "smithy.api#documentation": "

A list of specific dimensions from a dimension group. If this parameter is not present,\n then it signifies that all of the dimensions in the group were requested, or are present in\n the response.

\n

Valid values for elements in the Dimensions array are:

\n \n " + "smithy.api#documentation": "

A list of specific dimensions from a dimension group. If this parameter is not present,\n then it signifies that all of the dimensions in the group were requested, or are present in\n the response.

\n

Valid values for elements in the Dimensions array are:

\n \n " } }, "Limit": { @@ -238,6 +299,32 @@ "smithy.api#documentation": "

A logical grouping of Performance Insights metrics for a related subject area. For example, the\n db.sql dimension group consists of the following dimensions:\n db.sql.id, db.sql.db_id, db.sql.statement, and\n db.sql.tokenized_id.

\n \n

Each response element returns a maximum of 500 bytes. For larger elements, such as SQL statements, \n only the first 500 bytes are returned.

\n
" } }, + "com.amazonaws.pi#DimensionGroupDetail": { + "type": "structure", + "members": { + "Group": { + "target": "com.amazonaws.pi#String", + "traits": { + "smithy.api#documentation": "

The name of the dimension group.

" + } + }, + "Dimensions": { + "target": "com.amazonaws.pi#DimensionDetailList", + "traits": { + "smithy.api#documentation": "

The dimensions within a dimension group.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about dimensions within a dimension group.

" + } + }, + "com.amazonaws.pi#DimensionGroupDetailList": { + "type": "list", + "member": { + "target": "com.amazonaws.pi#DimensionGroupDetail" + } + }, "com.amazonaws.pi#DimensionKeyDescription": { "type": "structure", "members": { @@ -250,7 +337,13 @@ "Total": { "target": "com.amazonaws.pi#Double", "traits": { - "smithy.api#documentation": "

The aggregated metric value for the dimension(s), over the requested time range.

" + "smithy.api#documentation": "

The aggregated metric value for the dimensions, over the requested time range.

" + } + }, + "AdditionalMetrics": { + "target": "com.amazonaws.pi#AdditionalMetricsMap", + "traits": { + "smithy.api#documentation": "

A map that contains the value for each additional metric.

" } }, "Partitions": { @@ -261,7 +354,7 @@ } }, "traits": { - "smithy.api#documentation": "

An array of descriptions and aggregated values for\n each dimension within a dimension group.

" + "smithy.api#documentation": "

An object that includes the requested dimension key values and aggregated metric values \n within a dimension group.

" } }, "com.amazonaws.pi#DimensionKeyDescriptionList": { @@ -311,6 +404,18 @@ "target": "com.amazonaws.pi#RequestString" } }, + "com.amazonaws.pi#DimensionsMetricList": { + "type": "list", + "member": { + "target": "com.amazonaws.pi#RequestString" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + } + } + }, "com.amazonaws.pi#Double": { "type": "double", "traits": { @@ -320,6 +425,60 @@ "com.amazonaws.pi#ErrorString": { "type": "string" }, + "com.amazonaws.pi#FeatureMetadata": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.pi#FeatureStatus", + "traits": { + "smithy.api#documentation": "

The status of the feature on the DB instance. Possible values include the following:\n

\n " + } + } + }, + "traits": { + "smithy.api#documentation": "

The metadata for a feature. For example, the metadata might indicate that a feature is\n turned on or off on a specific DB instance.

" + } + }, + "com.amazonaws.pi#FeatureMetadataMap": { + "type": "map", + "key": { + "target": "com.amazonaws.pi#String" + }, + "value": { + "target": "com.amazonaws.pi#FeatureMetadata" + } + }, + "com.amazonaws.pi#FeatureStatus": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "ENABLED", + "name": "ENABLED" + }, + { + "value": "DISABLED", + "name": "DISABLED" + }, + { + "value": "UNSUPPORTED", + "name": "UNSUPPORTED" + }, + { + "value": "ENABLED_PENDING_REBOOT", + "name": "ENABLED_PENDING_REBOOT" + }, + { + "value": "DISABLED_PENDING_REBOOT", + "name": "DISABLED_PENDING_REBOOT" + }, + { + "value": "UNKNOWN", + "name": "UNKNOWN" + } + ] + } + }, "com.amazonaws.pi#GetDimensionKeyDetails": { "type": "operation", "input": { @@ -340,7 +499,7 @@ } ], "traits": { - "smithy.api#documentation": "

Get the attributes of the specified dimension group for a DB instance or data source. For example, if you specify a\n SQL ID, GetDimensionKeyDetails retrieves the full text of the dimension db.sql.statement\n associated with this ID. This operation is useful because GetResourceMetrics and\n DescribeDimensionKeys don't support retrieval of large SQL statement text.

" + "smithy.api#documentation": "

Get the attributes of the specified dimension group for a DB instance or data source. \n For example, if you specify a SQL ID, GetDimensionKeyDetails retrieves \n the full text of the dimension db.sql.statementcassociated with this ID. \n This operation is useful because GetResourceMetrics and DescribeDimensionKeys \n don't support retrieval of large SQL statement text.

" } }, "com.amazonaws.pi#GetDimensionKeyDetailsRequest": { @@ -349,14 +508,14 @@ "ServiceType": { "target": "com.amazonaws.pi#ServiceType", "traits": { - "smithy.api#documentation": "

The AWS service for which Performance Insights returns data. The only valid value is RDS.

", + "smithy.api#documentation": "

The Amazon Web Services service for which Performance Insights returns data. The only valid value is RDS.

", "smithy.api#required": {} } }, "Identifier": { "target": "com.amazonaws.pi#IdentifierString", "traits": { - "smithy.api#documentation": "

The ID for a data source from which to gather dimension data. This ID must be immutable and unique within an AWS\n Region. When a DB instance is the data source, specify its DbiResourceId value. For example, specify\n db-ABCDEFGHIJKLMNOPQRSTU1VW2X.

", + "smithy.api#documentation": "

The ID for a data source from which to gather dimension data. This ID must be immutable and \n unique within an Amazon Web Services Region. When a DB instance is the data source, specify its \n DbiResourceId value. For example, specify db-ABCDEFGHIJKLMNOPQRSTU1VW2X.\n

", "smithy.api#required": {} } }, @@ -377,7 +536,7 @@ "RequestedDimensions": { "target": "com.amazonaws.pi#RequestedDimensionList", "traits": { - "smithy.api#documentation": "

A list of dimensions to retrieve the detail data for within the given dimension group. For the dimension group\n db.sql, specify either the full dimension name db.sql.statement or the short\n dimension name statement. If you don't specify this parameter, Performance Insights returns all\n dimension data within the specified dimension group.

" + "smithy.api#documentation": "

A list of dimensions to retrieve the detail data for within the given dimension group. \n For the dimension group db.sql, specify either the full dimension name \n db.sql.statement or the short dimension name statement. \n If you don't specify this parameter, Performance Insights returns all \n dimension data within the specified dimension group.\n

" } } } @@ -393,6 +552,65 @@ } } }, + "com.amazonaws.pi#GetResourceMetadata": { + "type": "operation", + "input": { + "target": "com.amazonaws.pi#GetResourceMetadataRequest" + }, + "output": { + "target": "com.amazonaws.pi#GetResourceMetadataResponse" + }, + "errors": [ + { + "target": "com.amazonaws.pi#InternalServiceError" + }, + { + "target": "com.amazonaws.pi#InvalidArgumentException" + }, + { + "target": "com.amazonaws.pi#NotAuthorizedException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieve the metadata for different features. For example, the metadata might indicate \n that a feature is turned on or off on a specific DB instance.\n

" + } + }, + "com.amazonaws.pi#GetResourceMetadataRequest": { + "type": "structure", + "members": { + "ServiceType": { + "target": "com.amazonaws.pi#ServiceType", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services service for which Performance Insights returns metrics.

", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.pi#RequestString", + "traits": { + "smithy.api#documentation": "

An immutable identifier for a data source that is unique for an Amazon Web Services Region. \n Performance Insights gathers metrics from this data source. To use a DB instance as a data source, \n specify its DbiResourceId value. For example, specify db-ABCDEFGHIJKLMNOPQRSTU1VW2X.\n

", + "smithy.api#required": {} + } + } + } + }, + "com.amazonaws.pi#GetResourceMetadataResponse": { + "type": "structure", + "members": { + "Identifier": { + "target": "com.amazonaws.pi#String", + "traits": { + "smithy.api#documentation": "

An immutable identifier for a data source that is unique for an Amazon Web Services Region. \n \n Performance Insights gathers metrics from this data source. To use a DB instance as a data source, \n specify its DbiResourceId value. For example, specify db-ABCDEFGHIJKLMNOPQRSTU1VW2X.\n

" + } + }, + "Features": { + "target": "com.amazonaws.pi#FeatureMetadataMap", + "traits": { + "smithy.api#documentation": "

The metadata for different features. For example, the metadata might indicate that a feature is\n turned on or off on a specific DB instance.

" + } + } + } + }, "com.amazonaws.pi#GetResourceMetrics": { "type": "operation", "input": { @@ -413,7 +631,12 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieve Performance Insights metrics for a set of data sources, over a time period. You can provide\n specific dimension groups and dimensions, and provide aggregation and filtering criteria for\n each group.

\n \n

Each response element returns a maximum of 500 bytes. For larger elements, such as SQL statements, \n only the first 500 bytes are returned.

\n
" + "smithy.api#documentation": "

Retrieve Performance Insights metrics for a set of data sources, over a time period. You can provide\n specific dimension groups and dimensions, and provide aggregation and filtering criteria for\n each group.

\n \n

Each response element returns a maximum of 500 bytes. For larger elements, such as SQL statements, \n only the first 500 bytes are returned.

\n
", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + } } }, "com.amazonaws.pi#GetResourceMetricsRequest": { @@ -422,14 +645,14 @@ "ServiceType": { "target": "com.amazonaws.pi#ServiceType", "traits": { - "smithy.api#documentation": "

The AWS service for which Performance Insights returns metrics. The only valid value for ServiceType is\n RDS.

", + "smithy.api#documentation": "

The Amazon Web Services service for which Performance Insights returns metrics. The only valid value for ServiceType is\n RDS.

", "smithy.api#required": {} } }, "Identifier": { "target": "com.amazonaws.pi#RequestString", "traits": { - "smithy.api#documentation": "

An immutable, AWS Region-unique identifier for a data source. Performance Insights gathers metrics from\n this data source.

\n

To use a DB instance as a data source, specify its DbiResourceId value. For example, specify\n db-FAIHNTYBKTGAUSUZQYPDS2GW4A.

", + "smithy.api#documentation": "

An immutable, Amazon Web Services Region-unique identifier for a data source. Performance Insights gathers metrics from\n this data source.

\n

To use a DB instance as a data source, specify its DbiResourceId value. For example, specify\n db-FAIHNTYBKTGAUSUZQYPDS2GW4A.

", "smithy.api#required": {} } }, @@ -492,7 +715,7 @@ "Identifier": { "target": "com.amazonaws.pi#String", "traits": { - "smithy.api#documentation": "

An immutable, AWS Region-unique identifier for a data source. Performance Insights gathers metrics from\n this data source.

\n

To use a DB instance as a data source, you specify its \n DbiResourceId value - for example: \n db-FAIHNTYBKTGAUSUZQYPDS2GW4A\n

" + "smithy.api#documentation": "

An immutable, Amazon Web Services Region-unique identifier for a data source. Performance Insights gathers metrics from \n this data source.\n

\n

To use a DB instance as a data source, you specify its DbiResourceId value - \n for example: db-FAIHNTYBKTGAUSUZQYPDS2GW4A\n

" } }, "MetricList": { @@ -504,7 +727,7 @@ "NextToken": { "target": "com.amazonaws.pi#NextToken", "traits": { - "smithy.api#documentation": "

An optional pagination token provided by a previous request. If\n this parameter is specified, the response includes only records beyond the token, up to the\n value specified by MaxRecords.

" + "smithy.api#documentation": "

An optional pagination token provided by a previous request. If this parameter is specified, \n the response includes only records beyond the token, up to the value specified by MaxRecords.\n

" } } } @@ -562,6 +785,172 @@ } } }, + "com.amazonaws.pi#ListAvailableResourceDimensions": { + "type": "operation", + "input": { + "target": "com.amazonaws.pi#ListAvailableResourceDimensionsRequest" + }, + "output": { + "target": "com.amazonaws.pi#ListAvailableResourceDimensionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.pi#InternalServiceError" + }, + { + "target": "com.amazonaws.pi#InvalidArgumentException" + }, + { + "target": "com.amazonaws.pi#NotAuthorizedException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieve the dimensions that can be queried for each specified metric type on a specified DB instance.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.pi#ListAvailableResourceDimensionsRequest": { + "type": "structure", + "members": { + "ServiceType": { + "target": "com.amazonaws.pi#ServiceType", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services service for which Performance Insights returns metrics.

", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.pi#RequestString", + "traits": { + "smithy.api#documentation": "

An immutable identifier for a data source that is unique within an Amazon Web Services Region. Performance Insights gathers\n metrics from this data source. To use an Amazon RDS DB instance as a data source, specify its\n DbiResourceId value. For example, specify db-ABCDEFGHIJKLMNOPQRSTU1VWZ.

", + "smithy.api#required": {} + } + }, + "Metrics": { + "target": "com.amazonaws.pi#DimensionsMetricList", + "traits": { + "smithy.api#documentation": "

The types of metrics for which to retrieve dimensions. Valid values include db.load.

", + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "com.amazonaws.pi#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return in the response. If more items exist than the specified \n MaxRecords value, a pagination token is included in the response so that the remaining \n results can be retrieved.

" + } + }, + "NextToken": { + "target": "com.amazonaws.pi#NextToken", + "traits": { + "smithy.api#documentation": "

An optional pagination token provided by a previous request. If this parameter is specified, \n the response includes only records beyond the token, up to the value specified by MaxRecords.\n

" + } + } + } + }, + "com.amazonaws.pi#ListAvailableResourceDimensionsResponse": { + "type": "structure", + "members": { + "MetricDimensions": { + "target": "com.amazonaws.pi#MetricDimensionsList", + "traits": { + "smithy.api#documentation": "

The dimension information returned for requested metric types.

" + } + }, + "NextToken": { + "target": "com.amazonaws.pi#NextToken", + "traits": { + "smithy.api#documentation": "

An optional pagination token provided by a previous request. If this parameter is specified, \n the response includes only records beyond the token, up to the value specified by MaxRecords.

" + } + } + } + }, + "com.amazonaws.pi#ListAvailableResourceMetrics": { + "type": "operation", + "input": { + "target": "com.amazonaws.pi#ListAvailableResourceMetricsRequest" + }, + "output": { + "target": "com.amazonaws.pi#ListAvailableResourceMetricsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.pi#InternalServiceError" + }, + { + "target": "com.amazonaws.pi#InvalidArgumentException" + }, + { + "target": "com.amazonaws.pi#NotAuthorizedException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieve metrics of the specified types that can be queried for a specified DB instance.\n

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.pi#ListAvailableResourceMetricsRequest": { + "type": "structure", + "members": { + "ServiceType": { + "target": "com.amazonaws.pi#ServiceType", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services service for which Performance Insights returns metrics.

", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.pi#RequestString", + "traits": { + "smithy.api#documentation": "

An immutable identifier for a data source that is unique within an Amazon Web Services Region. Performance Insights gathers\n metrics from this data source. To use an Amazon RDS DB instance as a data source, specify its\n DbiResourceId value. For example, specify db-ABCDEFGHIJKLMNOPQRSTU1VWZ.

", + "smithy.api#required": {} + } + }, + "MetricTypes": { + "target": "com.amazonaws.pi#MetricTypeList", + "traits": { + "smithy.api#documentation": "

The types of metrics to return in the response. Valid values in the array include the following:

\n ", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.pi#NextToken", + "traits": { + "smithy.api#documentation": "

An optional pagination token provided by a previous request. If this parameter is specified, \n the response includes only records beyond the token, up to the value specified by MaxRecords.\n

" + } + }, + "MaxResults": { + "target": "com.amazonaws.pi#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return. If the MaxRecords value is less than the number of \n existing items, the response includes a pagination token.\n

" + } + } + } + }, + "com.amazonaws.pi#ListAvailableResourceMetricsResponse": { + "type": "structure", + "members": { + "Metrics": { + "target": "com.amazonaws.pi#ResponseResourceMetricList", + "traits": { + "smithy.api#documentation": "

An array of metrics available to query. Each array element contains the full name, \n description, and unit of the metric.\n

" + } + }, + "NextToken": { + "target": "com.amazonaws.pi#NextToken", + "traits": { + "smithy.api#documentation": "

A pagination token that indicates the response didn’t return all available records\n because MaxRecords was specified in the previous request. To get the remaining \n records, specify NextToken in a separate request with this value.\n

" + } + } + } + }, "com.amazonaws.pi#MaxResults": { "type": "integer", "traits": { @@ -572,13 +961,39 @@ } } }, + "com.amazonaws.pi#MetricDimensionGroups": { + "type": "structure", + "members": { + "Metric": { + "target": "com.amazonaws.pi#String", + "traits": { + "smithy.api#documentation": "

The metric type to which the dimension information belongs.

" + } + }, + "Groups": { + "target": "com.amazonaws.pi#DimensionGroupDetailList", + "traits": { + "smithy.api#documentation": "

The available dimension groups for a metric type.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The available dimension information for a metric type.

" + } + }, + "com.amazonaws.pi#MetricDimensionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.pi#MetricDimensionGroups" + } + }, "com.amazonaws.pi#MetricKeyDataPoints": { "type": "structure", "members": { "Key": { "target": "com.amazonaws.pi#ResponseResourceMetricKey", "traits": { - "smithy.api#documentation": "

The dimension(s) to which the data points apply.

" + "smithy.api#documentation": "

The dimensions to which the data points apply.

" } }, "DataPoints": { @@ -622,7 +1037,7 @@ } }, "traits": { - "smithy.api#documentation": "

A single query to be processed. You must provide the metric to query. If no other\n parameters are specified, Performance Insights returns all of the data points for that metric. You can\n optionally request that the data points be aggregated by dimension group (\n GroupBy), and return only those data points that match your criteria (Filter).

" + "smithy.api#documentation": "

A single query to be processed. You must provide the metric to query. If no other\n parameters are specified, Performance Insights returns all data points for the specified metric. Optionally, you can\n request that the data points be aggregated by dimension group (GroupBy), and return only \n those data points that match your criteria (Filter).

" } }, "com.amazonaws.pi#MetricQueryFilterMap": { @@ -646,6 +1061,12 @@ } } }, + "com.amazonaws.pi#MetricTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.pi#RequestString" + } + }, "com.amazonaws.pi#MetricValuesList": { "type": "list", "member": { @@ -676,18 +1097,6 @@ }, "com.amazonaws.pi#PerformanceInsightsv20180227": { "type": "service", - "version": "2018-02-27", - "operations": [ - { - "target": "com.amazonaws.pi#DescribeDimensionKeys" - }, - { - "target": "com.amazonaws.pi#GetDimensionKeyDetails" - }, - { - "target": "com.amazonaws.pi#GetResourceMetrics" - } - ], "traits": { "aws.api#service": { "sdkId": "PI", @@ -700,12 +1109,33 @@ "name": "pi" }, "aws.protocols#awsJson1_1": {}, - "smithy.api#documentation": "Amazon RDS Performance Insights\n \n

Amazon RDS Performance Insights enables you to monitor and explore different dimensions of\n database load based on data captured from a running DB instance. The guide provides detailed\n information about Performance Insights data types, parameters and errors.

\n \n

When Performance Insights is enabled, the Amazon RDS Performance Insights API provides visibility into the performance of your DB instance. Amazon\n CloudWatch provides the authoritative source for AWS service-vended monitoring metrics. Performance Insights offers a domain-specific\n view of DB load.

\n

DB load is measured as Average Active Sessions. Performance Insights provides the data to API consumers as a two-dimensional\n time-series dataset. The time dimension provides DB load data for each time point in the queried time range. Each time\n point decomposes overall load in relation to the requested dimensions, measured at that time point. Examples include\n SQL, Wait event, User, and Host.

\n\n ", + "smithy.api#documentation": "Amazon RDS Performance Insights\n \n

Amazon RDS Performance Insights enables you to monitor and explore different dimensions of database load based on \n data captured from a running DB instance. The guide provides detailed information about Performance Insights \n data types, parameters and errors.\n

\n \n

When Performance Insights is enabled, the Amazon RDS Performance Insights API provides visibility into the performance of your DB instance. \n Amazon CloudWatch provides the authoritative source for Amazon Web Services service-vended monitoring metrics. \n Performance Insights offers a domain-specific view of DB load.\n

\n

DB load is measured as average active sessions. Performance Insights provides the data to API consumers as a two-dimensional \n time-series dataset. The time dimension provides DB load data for each time point in the \n queried time range. Each time point decomposes overall load in relation to the requested dimensions, \n measured at that time point. Examples include SQL, Wait event, User, and Host.\n

\n\n ", "smithy.api#title": "AWS Performance Insights", "smithy.api#xmlNamespace": { "uri": "http://pi.amazonaws.com/doc/2018-02-27/" } - } + }, + "version": "2018-02-27", + "operations": [ + { + "target": "com.amazonaws.pi#DescribeDimensionKeys" + }, + { + "target": "com.amazonaws.pi#GetDimensionKeyDetails" + }, + { + "target": "com.amazonaws.pi#GetResourceMetadata" + }, + { + "target": "com.amazonaws.pi#GetResourceMetrics" + }, + { + "target": "com.amazonaws.pi#ListAvailableResourceDimensions" + }, + { + "target": "com.amazonaws.pi#ListAvailableResourceMetrics" + } + ] }, "com.amazonaws.pi#RequestString": { "type": "string", @@ -747,7 +1177,7 @@ "Dimensions": { "target": "com.amazonaws.pi#DimensionMap", "traits": { - "smithy.api#documentation": "

A dimension map that contains the dimension(s) for this partition.

", + "smithy.api#documentation": "

A dimension map that contains the dimensions for this partition.

", "smithy.api#required": {} } } @@ -762,13 +1192,39 @@ "target": "com.amazonaws.pi#ResponsePartitionKey" } }, + "com.amazonaws.pi#ResponseResourceMetric": { + "type": "structure", + "members": { + "Metric": { + "target": "com.amazonaws.pi#String", + "traits": { + "smithy.api#documentation": "

The full name of the metric.

" + } + }, + "Description": { + "target": "com.amazonaws.pi#Description", + "traits": { + "smithy.api#documentation": "

The description of the metric.

" + } + }, + "Unit": { + "target": "com.amazonaws.pi#String", + "traits": { + "smithy.api#documentation": "

The unit of the metric.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains the full name, description, and unit of a metric.\n

" + } + }, "com.amazonaws.pi#ResponseResourceMetricKey": { "type": "structure", "members": { "Metric": { "target": "com.amazonaws.pi#String", "traits": { - "smithy.api#documentation": "

The name of a Performance Insights metric to be measured.

\n

Valid values for Metric are:

\n \n \n

If the number of active sessions is less than an internal Performance Insights threshold, db.load.avg and db.sampledload.avg \n are the same value. If the number of active sessions is greater than the internal threshold, Performance Insights samples the active sessions, with db.load.avg \n showing the scaled values, db.sampledload.avg showing the raw values, and db.sampledload.avg less than db.load.avg. \n For most use cases, you can query db.load.avg only.

", + "smithy.api#documentation": "

The name of a Performance Insights metric to be measured.

\n

Valid values for Metric are:

\n \n \n

If the number of active sessions is less than an internal Performance Insights threshold, db.load.avg and \n db.sampledload.avg are the same value. If the number of active sessions is greater than the \n internal threshold, Performance Insights samples the active sessions, with db.load.avg showing the scaled values, \n db.sampledload.avg showing the raw values, and db.sampledload.avg less \n than db.load.avg. For most use cases, you can query db.load.avg only.\n

", "smithy.api#required": {} } }, @@ -783,6 +1239,12 @@ "smithy.api#documentation": "

An object describing a Performance Insights metric and one or more dimensions for that metric.

" } }, + "com.amazonaws.pi#ResponseResourceMetricList": { + "type": "list", + "member": { + "target": "com.amazonaws.pi#ResponseResourceMetric" + } + }, "com.amazonaws.pi#ServiceType": { "type": "string", "traits": { @@ -790,6 +1252,10 @@ { "value": "RDS", "name": "RDS" + }, + { + "value": "DOCDB", + "name": "DOCDB" } ] } diff --git a/codegen/sdk-codegen/aws-models/pinpoint.2016-12-01.json b/codegen/sdk-codegen/aws-models/pinpoint.2016-12-01.json index 1984fc1cbfa..6f038027ca8 100644 --- a/codegen/sdk-codegen/aws-models/pinpoint.2016-12-01.json +++ b/codegen/sdk-codegen/aws-models/pinpoint.2016-12-01.json @@ -18463,6 +18463,12 @@ "traits": { "smithy.api#documentation": "

Specifies whether a journey should be refreshed on segment update.

" } + }, + "JourneyChannelSettings": { + "target": "com.amazonaws.pinpoint#JourneyChannelSettings", + "traits": { + "smithy.api#documentation": "

The channel-specific configurations for the journey.

" + } } }, "traits": { diff --git a/codegen/sdk-codegen/aws-models/rds.2014-10-31.json b/codegen/sdk-codegen/aws-models/rds.2014-10-31.json index 0da9516f189..2f798625177 100644 --- a/codegen/sdk-codegen/aws-models/rds.2014-10-31.json +++ b/codegen/sdk-codegen/aws-models/rds.2014-10-31.json @@ -252,7 +252,7 @@ "SourceIdentifier": { "target": "com.amazonaws.rds#String", "traits": { - "smithy.api#documentation": "

The identifier of the event source to be added.

\n

Constraints:

\n ", + "smithy.api#documentation": "

The identifier of the event source to be added.

\n

Constraints:

\n ", "smithy.api#required": {} } } @@ -1382,13 +1382,13 @@ "MaxConnectionsPercent": { "target": "com.amazonaws.rds#IntegerOptional", "traits": { - "smithy.api#documentation": "

The maximum size of the connection pool for each target in a target group. For Aurora MySQL, it is expressed as a percentage of the\n max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.

\n

Default: 100

\n

Constraints: between 1 and 100

" + "smithy.api#documentation": "

The maximum size of the connection pool for each target in a target group. The value is expressed as a percentage of the\n max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.

\n

Default: 100

\n

Constraints: between 1 and 100

" } }, "MaxIdleConnectionsPercent": { "target": "com.amazonaws.rds#IntegerOptional", "traits": { - "smithy.api#documentation": "

\n Controls how actively the proxy closes idle database connections in the connection pool.\n A high value enables the proxy to leave a high percentage of idle connections open.\n A low value causes the proxy to close idle client connections and return the underlying\n database connections to the connection pool. For Aurora MySQL, it is expressed as a percentage of the\n max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.\n

\n

Default: 50

\n

Constraints: between 0 and MaxConnectionsPercent\n

" + "smithy.api#documentation": "

\n Controls how actively the proxy closes idle database connections in the connection pool.\n\t\tThe value is expressed as a percentage of the max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.\n With a high value, the proxy leaves a high percentage of idle database connections open. A low value causes the proxy to close more idle connections and return them to the database.\n

\n

Default: 50

\n

Constraints: between 0 and MaxConnectionsPercent\n

" } }, "ConnectionBorrowTimeout": { @@ -1420,13 +1420,13 @@ "MaxConnectionsPercent": { "target": "com.amazonaws.rds#Integer", "traits": { - "smithy.api#documentation": "

The maximum size of the connection pool for each target in a target group. For Aurora MySQL, it is expressed as a percentage of the\n max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.

" + "smithy.api#documentation": "

The maximum size of the connection pool for each target in a target group. The value is expressed as a percentage of the\n max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.

" } }, "MaxIdleConnectionsPercent": { "target": "com.amazonaws.rds#Integer", "traits": { - "smithy.api#documentation": "

\n Controls how actively the proxy closes idle database connections in the connection pool.\n A high value enables the proxy to leave a high percentage of idle connections open.\n A low value causes the proxy to close idle client connections and return the underlying database connections to the connection pool.\n For Aurora MySQL, it is expressed as a percentage of the max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.\n

" + "smithy.api#documentation": "

\n Controls how actively the proxy closes idle database connections in the connection pool.\n\t\tThe value is expressed as a percentage of the max_connections setting for the RDS DB instance or Aurora DB cluster used by the target group.\n With a high value, the proxy leaves a high percentage of idle database connections open. A low value causes the proxy to close more idle connections and return them to the database. \n

" } }, "ConnectionBorrowTimeout": { @@ -3653,7 +3653,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an RDS event notification subscription. This action requires a topic Amazon\n Resource Name (ARN) created by either the RDS console, the SNS console, or the SNS API.\n To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the\n topic. The ARN is displayed in the SNS console.

\n

You can specify the type of source (SourceType) that you want to be\n notified of and provide a list of RDS sources (SourceIds) that triggers the\n events. You can also provide a list of event categories (EventCategories)\n for events that you want to be notified of. For example, you can specify\n SourceType = db-instance, SourceIds =\n mydbinstance1, mydbinstance2 and\n EventCategories = Availability,\n Backup.

\n\n

If you specify both the SourceType and SourceIds, such as SourceType = db-instance\n and SourceIdentifier = myDBInstance1, you are notified of all the db-instance events for\n the specified source. If you specify a SourceType but do not specify a SourceIdentifier,\n you receive notice of the events for that source type for all your RDS sources. If you\n don't specify either the SourceType or the SourceIdentifier, you are notified of events\n generated from all RDS sources belonging to your customer account.

\n \n

RDS event notification is only available for unencrypted SNS topics. If you specify an \n encrypted SNS topic, event notifications aren't sent for the topic.

\n
" + "smithy.api#documentation": "

Creates an RDS event notification subscription. This action requires a topic Amazon\n Resource Name (ARN) created by either the RDS console, the SNS console, or the SNS API.\n To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the\n topic. The ARN is displayed in the SNS console.

\n

You can specify the type of source (SourceType) that you want to be\n notified of and provide a list of RDS sources (SourceIds) that triggers the\n events. You can also provide a list of event categories (EventCategories)\n for events that you want to be notified of. For example, you can specify\n SourceType = db-instance, SourceIds =\n mydbinstance1, mydbinstance2 and\n EventCategories = Availability,\n Backup.

\n\n

If you specify both the SourceType and SourceIds, such as SourceType = db-instance\n and SourceIds = myDBInstance1, you are notified of all the db-instance events for\n the specified source. If you specify a SourceType but do not specify SourceIds,\n you receive notice of the events for that source type for all your RDS sources. If you\n don't specify either the SourceType or the SourceIds, you are notified of events\n generated from all RDS sources belonging to your customer account.

\n \n

RDS event notification is only available for unencrypted SNS topics. If you specify an \n encrypted SNS topic, event notifications aren't sent for the topic.

\n
" } }, "com.amazonaws.rds#CreateEventSubscriptionMessage": { @@ -3676,19 +3676,19 @@ "SourceType": { "target": "com.amazonaws.rds#String", "traits": { - "smithy.api#documentation": "

The type of source that is generating the events. For example, if you want to be\n notified of events generated by a DB instance, you set this parameter to\n db-instance. If this value isn't specified, all events are\n returned.

\n

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot \n

" + "smithy.api#documentation": "

The type of source that is generating the events. For example, if you want to be\n notified of events generated by a DB instance, you set this parameter to\n db-instance. For RDS Proxy events, specify db-proxy. If this value isn't specified, all events are\n returned.

\n

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy\n

" } }, "EventCategories": { "target": "com.amazonaws.rds#EventCategoriesList", "traits": { - "smithy.api#documentation": "

A list of event categories for a particular source type (SourceType)\n that you want to subscribe to. You can see a list of the categories for a given source\n type in Events in the\n Amazon RDS User Guide or by using the DescribeEventCategories operation.

" + "smithy.api#documentation": "

A list of event categories for a particular source type (SourceType)\n that you want to subscribe to. You can see a list of the categories for a given source type in the \"Amazon RDS event categories and event messages\" section of the \n Amazon RDS User Guide\n or the\n \n Amazon Aurora User Guide\n .\n\t\t\t\tYou can also see this list by using the DescribeEventCategories operation.\n\t\t\t

" } }, "SourceIds": { "target": "com.amazonaws.rds#SourceIdsList", "traits": { - "smithy.api#documentation": "

The list of identifiers of the event sources for which events are returned. If not specified, then all sources are included in the response. \n An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens. It can't end with a hyphen or contain two consecutive hyphens.

\n

Constraints:

\n " + "smithy.api#documentation": "

The list of identifiers of the event sources for which events are returned. If not specified, then all sources are included in the response. \n An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens. It can't end with a hyphen or contain two consecutive hyphens.

\n

Constraints:

\n " } }, "Enabled": { @@ -10723,7 +10723,7 @@ "target": "com.amazonaws.rds#EventCategoriesMessage" }, "traits": { - "smithy.api#documentation": "

Displays a list of categories for all event source types, or, if specified, for a specified source type.\n You can see a list of the event categories and source types \n in \n Events in the Amazon RDS User Guide.\n

" + "smithy.api#documentation": "

Displays a list of categories for all event source types, or, if specified, for a specified source type.\n You can also see this list in the \"Amazon RDS event categories and event messages\" section of the \n Amazon RDS User Guide\n or the\n \n Amazon Aurora User Guide\n .\n

" } }, "com.amazonaws.rds#DescribeEventCategoriesMessage": { @@ -10732,7 +10732,7 @@ "SourceType": { "target": "com.amazonaws.rds#String", "traits": { - "smithy.api#documentation": "

The type of source that is generating the events.

\n

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot\n

" + "smithy.api#documentation": "

The type of source that is generating the events. For RDS Proxy events, specify db-proxy.

\n

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy\n

" } }, "Filters": { @@ -10810,7 +10810,7 @@ "target": "com.amazonaws.rds#EventsMessage" }, "traits": { - "smithy.api#documentation": "

Returns events related to DB instances, DB clusters, DB parameter groups, DB security groups, DB snapshots, and DB cluster snapshots for the past 14 days. \n Events specific to a particular DB instances, DB clusters, DB parameter groups, DB security groups, DB snapshots, and DB cluster snapshots group can be \n obtained by providing the name as a parameter.

\n \n

By default, the past hour of events are returned.

\n
", + "smithy.api#documentation": "

Returns events related to DB instances, DB clusters, DB parameter groups, DB security groups, DB snapshots, DB cluster snapshots, and RDS Proxies for the past 14 days. \n Events specific to a particular DB instance, DB cluster, DB parameter group, DB security group, DB snapshot, DB cluster snapshot group, or RDS Proxy can be \n obtained by providing the name as a parameter.

\n \n

By default, RDS returns events that were generated in the past hour.

\n
", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -10825,7 +10825,7 @@ "SourceIdentifier": { "target": "com.amazonaws.rds#String", "traits": { - "smithy.api#documentation": "

The identifier of the event source for which events are returned. If not specified, then all sources are included in the response.

\n

Constraints:

\n " + "smithy.api#documentation": "

The identifier of the event source for which events are returned. If not specified, then all sources are included in the response.

\n

Constraints:

\n " } }, "SourceType": { @@ -15047,7 +15047,7 @@ "SourceType": { "target": "com.amazonaws.rds#String", "traits": { - "smithy.api#documentation": "

The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. If this value isn't specified, all events are returned.

\n

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot \n

" + "smithy.api#documentation": "

The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. For RDS Proxy events, specify db-proxy. If this value isn't specified, all events are returned.

\n

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy\n

" } }, "EventCategories": { @@ -19571,6 +19571,10 @@ { "value": "custom-engine-version", "name": "custom_engine_version" + }, + { + "value": "db-proxy", + "name": "db_proxy" } ] } diff --git a/codegen/sdk-codegen/aws-models/ssm.2014-11-06.json b/codegen/sdk-codegen/aws-models/ssm.2014-11-06.json index 8cca61e59e3..8a768d71482 100644 --- a/codegen/sdk-codegen/aws-models/ssm.2014-11-06.json +++ b/codegen/sdk-codegen/aws-models/ssm.2014-11-06.json @@ -121,7 +121,7 @@ "IamRole": { "target": "com.amazonaws.ssm#IamRole", "traits": { - "smithy.api#documentation": "

The Identity and Access Management (IAM) role to assign to the managed\n node.

" + "smithy.api#documentation": "

The Identity and Access Management (IAM) role to assign to the managed node.

" } }, "RegistrationLimit": { @@ -305,7 +305,7 @@ "name": "ssm" }, "aws.protocols#awsJson1_1": {}, - "smithy.api#documentation": "

Amazon Web Services Systems Manager is a collection of capabilities that helps you automate management tasks such as\n collecting system inventory, applying operating system (OS) patches, automating the creation of\n Amazon Machine Images (AMIs), and configuring operating systems (OSs) and applications at scale.\n Systems Manager lets you remotely and securely manage the configuration of your managed nodes. A\n managed node is any Amazon Elastic Compute Cloud (Amazon EC2) instance, edge\n device, or on-premises server or virtual machine (VM) that has been configured for\n Systems Manager.

\n \n

With support for IoT Greengrass Version 2 devices, the phrase managed\n instance has been changed to managed node in most of the Systems Manager\n documentation. The Systems Manager console, API\n calls, error messages, and SSM documents still use the term instance.

\n
\n

This reference is intended to be used with the Amazon Web Services Systems Manager User Guide.

\n

To get started, verify prerequisites and configure managed nodes. For more information, see\n Setting up\n Amazon Web Services Systems Manager in the Amazon Web Services Systems Manager User Guide.

\n

\n Related resources\n

\n ", + "smithy.api#documentation": "

Amazon Web Services Systems Manager is a collection of capabilities that helps you automate management tasks such as\n collecting system inventory, applying operating system (OS) patches, automating the creation of\n Amazon Machine Images (AMIs), and configuring operating systems (OSs) and applications at scale.\n Systems Manager lets you remotely and securely manage the configuration of your managed nodes. A\n managed node is any Amazon Elastic Compute Cloud (Amazon EC2) instance, edge device, or on-premises\n server or virtual machine (VM) that has been configured for Systems Manager.

\n \n

With support for IoT Greengrass core devices, the phrase managed\n instance has been changed to managed node in most of the Systems Manager\n documentation. The Systems Manager console, API calls, error messages, and SSM documents still use the\n term instance.

\n
\n

This reference is intended to be used with the Amazon Web Services Systems Manager User Guide.

\n

To get started, verify prerequisites and configure managed nodes. For more information, see\n Setting up\n Amazon Web Services Systems Manager in the Amazon Web Services Systems Manager User Guide.

\n

\n Related resources\n

\n ", "smithy.api#title": "Amazon Simple Systems Manager (SSM)", "smithy.api#xmlNamespace": { "uri": "http://ssm.amazonaws.com/doc/2014-11-06/" @@ -847,7 +847,7 @@ "DocumentVersion": { "target": "com.amazonaws.ssm#DocumentVersion", "traits": { - "smithy.api#documentation": "

The version of the document used in the association.

" + "smithy.api#documentation": "

The version of the document used in the association.

\n \n

State Manager doesn't support running associations that use a new version of a document if that document is shared from another account. State Manager always runs the default version of a document if shared from another account, even though the Systems Manager console shows that a new version was processed. If you want to run an association using a new version of a document shared form another account, you must set the document version to default.

\n
" } }, "Targets": { @@ -1038,7 +1038,7 @@ "MaxConcurrency": { "target": "com.amazonaws.ssm#MaxConcurrency", "traits": { - "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit specified\n for MaxConcurrency.

" + "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit\n specified for MaxConcurrency.

" } }, "ComplianceSeverity": { @@ -1739,7 +1739,7 @@ "MaxConcurrency": { "target": "com.amazonaws.ssm#MaxConcurrency", "traits": { - "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit specified\n for MaxConcurrency.

" + "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit\n specified for MaxConcurrency.

" } }, "ComplianceSeverity": { @@ -2808,7 +2808,7 @@ "ApprovedPatches": { "target": "com.amazonaws.ssm#PatchIdList", "traits": { - "smithy.api#documentation": "

A list of explicitly approved patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" + "smithy.api#documentation": "

A list of explicitly approved patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" } }, "ApprovedPatchesComplianceLevel": { @@ -2820,7 +2820,7 @@ "RejectedPatches": { "target": "com.amazonaws.ssm#PatchIdList", "traits": { - "smithy.api#documentation": "

A list of explicitly rejected patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" + "smithy.api#documentation": "

A list of explicitly rejected patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" } }, "RejectedPatchesAction": { @@ -2915,7 +2915,7 @@ "InstanceIds": { "target": "com.amazonaws.ssm#InstanceIdList", "traits": { - "smithy.api#documentation": "

(Optional) A list of managed node IDs on which you want to cancel the command. If not provided,\n the command is canceled on every node on which it was requested.

" + "smithy.api#documentation": "

(Optional) A list of managed node IDs on which you want to cancel the command. If not\n provided, the command is canceled on every node on which it was requested.

" } } }, @@ -2973,6 +2973,39 @@ } } }, + "com.amazonaws.ssm#Category": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 128 + } + } + }, + "com.amazonaws.ssm#CategoryEnumList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssm#Category" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 3 + } + } + }, + "com.amazonaws.ssm#CategoryList": { + "type": "list", + "member": { + "target": "com.amazonaws.ssm#Category" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 3 + } + } + }, "com.amazonaws.ssm#ChangeDetailsValue": { "type": "string", "traits": { @@ -3098,7 +3131,7 @@ "StatusDetails": { "target": "com.amazonaws.ssm#StatusDetails", "traits": { - "smithy.api#documentation": "

A detailed status of the command execution. StatusDetails includes more\n information than Status because it includes states resulting from error and\n concurrency control parameters. StatusDetails can show different results than\n Status. For more information about these statuses, see Understanding command\n statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be one of the\n following values:

\n " + "smithy.api#documentation": "

A detailed status of the command execution. StatusDetails includes more\n information than Status because it includes states resulting from error and\n concurrency control parameters. StatusDetails can show different results than\n Status. For more information about these statuses, see Understanding command\n statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be one of the\n following values:

\n " } }, "OutputS3Region": { @@ -3140,7 +3173,7 @@ "CompletedCount": { "target": "com.amazonaws.ssm#CompletedCount", "traits": { - "smithy.api#documentation": "

The number of targets for which the command invocation reached a terminal state. Terminal\n states include the following: Success, Failed, Execution Timed Out, Delivery Timed Out, Canceled,\n Terminated, or Undeliverable.

" + "smithy.api#documentation": "

The number of targets for which the command invocation reached a terminal state. Terminal\n states include the following: Success, Failed, Execution Timed Out, Delivery Timed Out, Cancelled,\n Terminated, or Undeliverable.

" } }, "ErrorCount": { @@ -3203,7 +3236,7 @@ } }, "traits": { - "smithy.api#documentation": "

Describes a command filter.

\n \n

A managed node ID can't be specified when a command status is Pending because the\n command hasn't run on the node yet.

\n
" + "smithy.api#documentation": "

Describes a command filter.

\n \n

A managed node ID can't be specified when a command status is Pending because\n the command hasn't run on the node yet.

\n
" } }, "com.amazonaws.ssm#CommandFilterKey": { @@ -3317,7 +3350,7 @@ "StatusDetails": { "target": "com.amazonaws.ssm#StatusDetails", "traits": { - "smithy.api#documentation": "

A detailed status of the command execution for each invocation (each managed node targeted by\n the command). StatusDetails includes more information than Status because it includes states\n resulting from error and concurrency control parameters. StatusDetails can show different results\n than Status. For more information about these statuses, see Understanding command\n statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be one of the\n following values:

\n " + "smithy.api#documentation": "

A detailed status of the command execution for each invocation (each managed node targeted\n by the command). StatusDetails includes more information than Status because it includes states\n resulting from error and concurrency control parameters. StatusDetails can show different results\n than Status. For more information about these statuses, see Understanding command\n statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be one of the\n following values:

\n " } }, "TraceOutput": { @@ -3364,7 +3397,7 @@ } }, "traits": { - "smithy.api#documentation": "

An invocation is a copy of a command sent to a specific managed node. A command can apply to one\n or more managed nodes. A command invocation applies to one managed node. For example, if a user runs\n SendCommand against three managed nodes, then a command invocation is created for\n each requested managed node ID. A command invocation returns status and detail information about a\n command you ran.

" + "smithy.api#documentation": "

An invocation is a copy of a command sent to a specific managed node. A command can apply to\n one or more managed nodes. A command invocation applies to one managed node. For example, if a\n user runs SendCommand against three managed nodes, then a command invocation is\n created for each requested managed node ID. A command invocation returns status and detail\n information about a command you ran.

" } }, "com.amazonaws.ssm#CommandInvocationList": { @@ -3445,7 +3478,7 @@ "StatusDetails": { "target": "com.amazonaws.ssm#StatusDetails", "traits": { - "smithy.api#documentation": "

A detailed status of the plugin execution. StatusDetails includes more\n information than Status because it includes states resulting from error and concurrency control\n parameters. StatusDetails can show different results than Status. For more information about\n these statuses, see Understanding command\n statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be one of the\n following values:

\n " + "smithy.api#documentation": "

A detailed status of the plugin execution. StatusDetails includes more\n information than Status because it includes states resulting from error and concurrency control\n parameters. StatusDetails can show different results than Status. For more information about\n these statuses, see Understanding command\n statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be one of the\n following values:

\n " } }, "ResponseCode": { @@ -4124,7 +4157,7 @@ } ], "traits": { - "smithy.api#documentation": "

Generates an activation code and activation ID you can use to register your on-premises\n servers, edge devices, or virtual machine (VM) with Amazon Web Services Systems Manager. Registering these machines with\n Systems Manager makes it possible to manage them using Systems Manager capabilities. You use the activation code and\n ID when installing SSM Agent on machines in your hybrid environment. For more information about\n requirements for managing on-premises machines using Systems Manager, see Setting up\n Amazon Web Services Systems Manager for hybrid environments in the Amazon Web Services Systems Manager User Guide.

\n \n

Amazon Elastic Compute Cloud (Amazon EC2) instances, edge devices, and on-premises servers and VMs that are configured for Systems Manager are all called managed\n nodes.

\n
" + "smithy.api#documentation": "

Generates an activation code and activation ID you can use to register your on-premises\n servers, edge devices, or virtual machine (VM) with Amazon Web Services Systems Manager. Registering these machines with\n Systems Manager makes it possible to manage them using Systems Manager capabilities. You use the activation code and\n ID when installing SSM Agent on machines in your hybrid environment. For more information about\n requirements for managing on-premises machines using Systems Manager, see Setting up\n Amazon Web Services Systems Manager for hybrid environments in the Amazon Web Services Systems Manager User Guide.

\n \n

Amazon Elastic Compute Cloud (Amazon EC2) instances, edge devices, and on-premises servers and VMs that are\n configured for Systems Manager are all called managed nodes.

\n
" } }, "com.amazonaws.ssm#CreateActivationRequest": { @@ -4165,7 +4198,7 @@ "Tags": { "target": "com.amazonaws.ssm#TagList", "traits": { - "smithy.api#documentation": "

Optional metadata that you assign to a resource. Tags enable you to categorize a resource in\n different ways, such as by purpose, owner, or environment. For example, you might want to tag an\n activation to identify which servers or virtual machines (VMs) in your on-premises environment\n you intend to activate. In this case, you could specify the following key-value pairs:

\n \n \n

When you install SSM Agent on your on-premises servers and VMs, you specify an activation ID\n and code. When you specify the activation ID and code, tags assigned to the activation are\n automatically applied to the on-premises servers or VMs.

\n
\n

You can't add tags to or delete tags from an existing activation. You can tag your\n on-premises servers, edge devices, and VMs after they connect to Systems Manager for the first time and are assigned a\n managed node ID. This means they are listed in the Amazon Web Services Systems Manager console with an ID that is\n prefixed with \"mi-\". For information about how to add tags to your managed nodes, see AddTagsToResource. For information about how to remove tags from your managed nodes,\n see RemoveTagsFromResource.

" + "smithy.api#documentation": "

Optional metadata that you assign to a resource. Tags enable you to categorize a resource in\n different ways, such as by purpose, owner, or environment. For example, you might want to tag an\n activation to identify which servers or virtual machines (VMs) in your on-premises environment\n you intend to activate. In this case, you could specify the following key-value pairs:

\n \n \n

When you install SSM Agent on your on-premises servers and VMs, you specify an activation ID\n and code. When you specify the activation ID and code, tags assigned to the activation are\n automatically applied to the on-premises servers or VMs.

\n
\n

You can't add tags to or delete tags from an existing activation. You can tag your\n on-premises servers, edge devices, and VMs after they connect to Systems Manager for the first time and are\n assigned a managed node ID. This means they are listed in the Amazon Web Services Systems Manager console with an ID that\n is prefixed with \"mi-\". For information about how to add tags to your managed nodes, see AddTagsToResource. For information about how to remove tags from your managed nodes,\n see RemoveTagsFromResource.

" } }, "RegistrationMetadata": { @@ -4284,7 +4317,7 @@ } ], "traits": { - "smithy.api#documentation": "

Associates the specified Amazon Web Services Systems Manager document (SSM document) with the specified managed nodes\n or targets.

\n

When you associate a document with one or more managed nodes using IDs or tags,\n Amazon Web Services Systems Manager Agent (SSM Agent) running on the managed node processes the document and configures the\n node as specified.

\n

If you associate a document with a managed node that already has an associated document, the\n system returns the AssociationAlreadyExists exception.

" + "smithy.api#documentation": "

Associates the specified Amazon Web Services Systems Manager document (SSM document) with the specified managed nodes\n or targets.

\n

When you associate a document with one or more managed nodes using IDs or tags, Amazon Web Services Systems Manager\n Agent (SSM Agent) running on the managed node processes the document and configures the node as\n specified.

\n

If you associate a document with a managed node that already has an associated document, the\n system returns the AssociationAlreadyExists exception.

" } }, "com.amazonaws.ssm#CreateAssociationBatchRequest": { @@ -4319,14 +4352,14 @@ "Name": { "target": "com.amazonaws.ssm#DocumentARN", "traits": { - "smithy.api#documentation": "

The name of the SSM document that contains the configuration information for the managed node.\n You can specify Command or Automation runbooks.

\n

You can specify Amazon Web Services-predefined documents, documents you created, or a document that is\n shared with you from another account.

\n

For SSM documents that are shared with you from other Amazon Web Services accounts, you must specify the\n complete SSM document ARN, in the following format:

\n

\n arn:aws:ssm:region:account-id:document/document-name\n \n

\n

For example:

\n

\n arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document\n

\n

For Amazon Web Services-predefined documents and SSM documents you created in your account, you only need\n to specify the document name. For example, AWS-ApplyPatchBaseline or\n My-Document.

", + "smithy.api#documentation": "

The name of the SSM document that contains the configuration information for the managed\n node. You can specify Command or Automation runbooks.

\n

You can specify Amazon Web Services-predefined documents, documents you created, or a document that is\n shared with you from another account.

\n

For SSM documents that are shared with you from other Amazon Web Services accounts, you must specify the\n complete SSM document ARN, in the following format:

\n

\n arn:aws:ssm:region:account-id:document/document-name\n \n

\n

For example:

\n

\n arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document\n

\n

For Amazon Web Services-predefined documents and SSM documents you created in your account, you only need\n to specify the document name. For example, AWS-ApplyPatchBaseline or\n My-Document.

", "smithy.api#required": {} } }, "InstanceId": { "target": "com.amazonaws.ssm#InstanceId", "traits": { - "smithy.api#documentation": "

The managed node ID.

\n \n

\n InstanceId has been deprecated. To specify a managed node ID for an association,\n use the Targets parameter. Requests that include the\n parameter InstanceID with Systems Manager documents (SSM documents) that use schema version\n 2.0 or later will fail. In addition, if you use the parameter\n InstanceId, you can't use the parameters AssociationName,\n DocumentVersion, MaxErrors, MaxConcurrency,\n OutputLocation, or ScheduleExpression. To use these parameters, you\n must use the Targets parameter.

\n
" + "smithy.api#documentation": "

The managed node ID.

\n \n

\n InstanceId has been deprecated. To specify a managed node ID for an\n association, use the Targets parameter. Requests that\n include the parameter InstanceID with Systems Manager documents (SSM documents) that use\n schema version 2.0 or later will fail. In addition, if you use the\n parameter InstanceId, you can't use the parameters AssociationName,\n DocumentVersion, MaxErrors, MaxConcurrency,\n OutputLocation, or ScheduleExpression. To use these parameters, you\n must use the Targets parameter.

\n
" } }, "Parameters": { @@ -4380,7 +4413,7 @@ "MaxConcurrency": { "target": "com.amazonaws.ssm#MaxConcurrency", "traits": { - "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit specified\n for MaxConcurrency.

" + "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit\n specified for MaxConcurrency.

" } }, "ComplianceSeverity": { @@ -4448,13 +4481,13 @@ "DocumentVersion": { "target": "com.amazonaws.ssm#DocumentVersion", "traits": { - "smithy.api#documentation": "

The document version you want to associate with the target(s). Can be a specific version or\n the default version.

" + "smithy.api#documentation": "

The document version you want to associate with the target(s). Can be a specific version or\n the default version.

\n \n

State Manager doesn't support running associations that use a new version of a document if that document is shared from another account. State Manager always runs the default version of a document if shared from another account, even though the Systems Manager console shows that a new version was processed. If you want to run an association using a new version of a document shared form another account, you must set the document version to default.

\n
" } }, "InstanceId": { "target": "com.amazonaws.ssm#InstanceId", "traits": { - "smithy.api#documentation": "

The managed node ID.

\n \n

\n InstanceId has been deprecated. To specify a managed node ID for an association,\n use the Targets parameter. Requests that include the\n parameter InstanceID with Systems Manager documents (SSM documents) that use schema version\n 2.0 or later will fail. In addition, if you use the parameter\n InstanceId, you can't use the parameters AssociationName,\n DocumentVersion, MaxErrors, MaxConcurrency,\n OutputLocation, or ScheduleExpression. To use these parameters, you\n must use the Targets parameter.

\n
" + "smithy.api#documentation": "

The managed node ID.

\n \n

\n InstanceId has been deprecated. To specify a managed node ID for an\n association, use the Targets parameter. Requests that\n include the parameter InstanceID with Systems Manager documents (SSM documents) that use\n schema version 2.0 or later will fail. In addition, if you use the\n parameter InstanceId, you can't use the parameters AssociationName,\n DocumentVersion, MaxErrors, MaxConcurrency,\n OutputLocation, or ScheduleExpression. To use these parameters, you\n must use the Targets parameter.

\n
" } }, "Parameters": { @@ -4502,7 +4535,7 @@ "MaxConcurrency": { "target": "com.amazonaws.ssm#MaxConcurrency", "traits": { - "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit specified\n for MaxConcurrency.

" + "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit\n specified for MaxConcurrency.

" } }, "ComplianceSeverity": { @@ -4746,7 +4779,7 @@ "AllowUnassociatedTargets": { "target": "com.amazonaws.ssm#MaintenanceWindowAllowUnassociatedTargets", "traits": { - "smithy.api#documentation": "

Enables a maintenance window task to run on managed nodes, even if you haven't registered\n those nodes as targets. If enabled, then you must specify the unregistered managed nodes (by\n node ID) when you register a task with the maintenance window.

\n

If you don't enable this option, then you must specify previously-registered targets when\n you register a task with the maintenance window.

", + "smithy.api#documentation": "

Enables a maintenance window task to run on managed nodes, even if you haven't registered\n those nodes as targets. If enabled, then you must specify the unregistered managed nodes (by node\n ID) when you register a task with the maintenance window.

\n

If you don't enable this option, then you must specify previously-registered targets when\n you register a task with the maintenance window.

", "smithy.api#required": {} } }, @@ -5029,7 +5062,7 @@ "ApprovedPatches": { "target": "com.amazonaws.ssm#PatchIdList", "traits": { - "smithy.api#documentation": "

A list of explicitly approved patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" + "smithy.api#documentation": "

A list of explicitly approved patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" } }, "ApprovedPatchesComplianceLevel": { @@ -5048,7 +5081,7 @@ "RejectedPatches": { "target": "com.amazonaws.ssm#PatchIdList", "traits": { - "smithy.api#documentation": "

A list of explicitly rejected patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" + "smithy.api#documentation": "

A list of explicitly rejected patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" } }, "RejectedPatchesAction": { @@ -5258,7 +5291,7 @@ } ], "traits": { - "smithy.api#documentation": "

Disassociates the specified Amazon Web Services Systems Manager document (SSM document) from the specified managed node.\n If you created the association by using the Targets parameter, then you must delete\n the association by using the association ID.

\n

When you disassociate a document from a managed node, it doesn't change the configuration of\n the node. To change the configuration state of a managed node after you disassociate a document,\n you must create a new document with the desired configuration and associate it with the\n node.

" + "smithy.api#documentation": "

Disassociates the specified Amazon Web Services Systems Manager document (SSM document) from the specified managed\n node. If you created the association by using the Targets parameter, then you must\n delete the association by using the association ID.

\n

When you disassociate a document from a managed node, it doesn't change the configuration of\n the node. To change the configuration state of a managed node after you disassociate a document,\n you must create a new document with the desired configuration and associate it with the\n node.

" } }, "com.amazonaws.ssm#DeleteAssociationRequest": { @@ -5273,7 +5306,7 @@ "InstanceId": { "target": "com.amazonaws.ssm#InstanceId", "traits": { - "smithy.api#documentation": "

The managed node ID.

\n \n

\n InstanceId has been deprecated. To specify a managed node ID for an association,\n use the Targets parameter. Requests that include the\n parameter InstanceID with Systems Manager documents (SSM documents) that use schema version\n 2.0 or later will fail. In addition, if you use the parameter\n InstanceId, you can't use the parameters AssociationName,\n DocumentVersion, MaxErrors, MaxConcurrency,\n OutputLocation, or ScheduleExpression. To use these parameters, you\n must use the Targets parameter.

\n
" + "smithy.api#documentation": "

The managed node ID.

\n \n

\n InstanceId has been deprecated. To specify a managed node ID for an\n association, use the Targets parameter. Requests that include the parameter\n InstanceID with Systems Manager documents (SSM documents) that use schema version 2.0 or\n later will fail. In addition, if you use the parameter InstanceId, you can't use\n the parameters AssociationName, DocumentVersion,\n MaxErrors, MaxConcurrency, OutputLocation, or\n ScheduleExpression. To use these parameters, you must use the Targets\n parameter.

\n
" } }, "AssociationId": { @@ -6229,7 +6262,7 @@ "AssociationVersion": { "target": "com.amazonaws.ssm#AssociationVersion", "traits": { - "smithy.api#documentation": "

Specify the association version to retrieve. To view the latest version, either specify\n $LATEST for this parameter, or omit this parameter. To view a list of all\n associations for a managed node, use ListAssociations. To get a list of versions\n for a specific association, use ListAssociationVersions.

" + "smithy.api#documentation": "

Specify the association version to retrieve. To view the latest version, either specify\n $LATEST for this parameter, or omit this parameter. To view a list of all\n associations for a managed node, use ListAssociations. To get a list of\n versions for a specific association, use ListAssociationVersions.

" } } } @@ -6856,7 +6889,7 @@ } ], "traits": { - "smithy.api#documentation": "

Describes one or more of your managed nodes, including information about the operating\n system platform, the version of SSM Agent installed on the managed node, node status, and so\n on.

\n

If you specify one or more managed node IDs, it returns information for those managed nodes. If\n you don't specify node IDs, it returns information for all your managed nodes. If you specify\n a node ID that isn't valid or a node that you don't own, you receive an error.

\n \n

The IamRole field for this API operation is the Identity and Access Management\n (IAM) role assigned to on-premises managed nodes. This call doesn't return the\n IAM role for EC2 instances.

\n
", + "smithy.api#documentation": "

Describes one or more of your managed nodes, including information about the operating\n system platform, the version of SSM Agent installed on the managed node, node status, and so\n on.

\n

If you specify one or more managed node IDs, it returns information for those managed nodes.\n If you don't specify node IDs, it returns information for all your managed nodes. If you specify\n a node ID that isn't valid or a node that you don't own, you receive an error.

\n \n

The IamRole field for this API operation is the Identity and Access Management\n (IAM) role assigned to on-premises managed nodes. This call doesn't return the\n IAM role for EC2 instances.

\n
", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -6871,7 +6904,7 @@ "InstanceInformationFilterList": { "target": "com.amazonaws.ssm#InstanceInformationFilterList", "traits": { - "smithy.api#documentation": "

This is a legacy method. We recommend that you don't use this method. Instead, use the\n Filters data type. Filters enables you to return node information\n by filtering based on tags applied to managed nodes.

\n \n

Attempting to use InstanceInformationFilterList and Filters leads\n to an exception error.

\n
" + "smithy.api#documentation": "

This is a legacy method. We recommend that you don't use this method. Instead, use the\n Filters data type. Filters enables you to return node information by\n filtering based on tags applied to managed nodes.

\n \n

Attempting to use InstanceInformationFilterList and Filters leads\n to an exception error.

\n
" } }, "Filters": { @@ -6958,7 +6991,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the high-level patch state for the managed nodes in the specified patch group.

", + "smithy.api#documentation": "

Retrieves the high-level patch state for the managed nodes in the specified patch\n group.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -7080,7 +7113,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves information about the patches on the specified managed node and their state relative\n to the patch baseline being used for the node.

", + "smithy.api#documentation": "

Retrieves information about the patches on the specified managed node and their state\n relative to the patch baseline being used for the node.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -8106,14 +8139,14 @@ "target": "com.amazonaws.ssm#InstancesCount", "traits": { "smithy.api#box": {}, - "smithy.api#documentation": "

The number of managed nodes where patches that are specified as Critical for\n compliance reporting in the patch baseline aren't installed. These patches might be missing, have\n failed installation, were rejected, or were installed but awaiting a required managed node reboot.\n The status of these managed nodes is NON_COMPLIANT.

" + "smithy.api#documentation": "

The number of managed nodes where patches that are specified as Critical for\n compliance reporting in the patch baseline aren't installed. These patches might be missing, have\n failed installation, were rejected, or were installed but awaiting a required managed node\n reboot. The status of these managed nodes is NON_COMPLIANT.

" } }, "InstancesWithSecurityNonCompliantPatches": { "target": "com.amazonaws.ssm#InstancesCount", "traits": { "smithy.api#box": {}, - "smithy.api#documentation": "

The number of managed nodes where patches that are specified as Security in a\n patch advisory aren't installed. These patches might be missing, have failed installation, were\n rejected, or were installed but awaiting a required managed node reboot. The status of these managed\n nodes is NON_COMPLIANT.

" + "smithy.api#documentation": "

The number of managed nodes where patches that are specified as Security in a\n patch advisory aren't installed. These patches might be missing, have failed installation, were\n rejected, or were installed but awaiting a required managed node reboot. The status of these\n managed nodes is NON_COMPLIANT.

" } }, "InstancesWithOtherNonCompliantPatches": { @@ -8539,7 +8572,7 @@ "PlatformTypes": { "target": "com.amazonaws.ssm#PlatformTypeList", "traits": { - "smithy.api#documentation": "

The list of OS platforms compatible with this SSM document.

" + "smithy.api#documentation": "

The list of operating system (OS) platforms compatible with this SSM document.

" } }, "DocumentType": { @@ -8625,10 +8658,22 @@ "traits": { "smithy.api#documentation": "

The current status of the review.

" } + }, + "Category": { + "target": "com.amazonaws.ssm#CategoryList", + "traits": { + "smithy.api#documentation": "

The classification of a document to help you identify and categorize its use.

" + } + }, + "CategoryEnum": { + "target": "com.amazonaws.ssm#CategoryEnumList", + "traits": { + "smithy.api#documentation": "

The value that identifies a document's category.

" + } } }, "traits": { - "smithy.api#documentation": "

Describes a Amazon Web Services Systems Manager document (SSM document).

" + "smithy.api#documentation": "

Describes an Amazon Web Services Systems Manager document (SSM document).

" } }, "com.amazonaws.ssm#DocumentDisplayName": { @@ -9916,7 +9961,7 @@ "InstanceId": { "target": "com.amazonaws.ssm#InstanceId", "traits": { - "smithy.api#documentation": "

(Required) The ID of the managed node targeted by the command. A managed node can be an\n Amazon Elastic Compute Cloud (Amazon EC2) instance, edge device, and on-premises server or VM in your hybrid environment that is configured for Amazon Web Services Systems Manager.

", + "smithy.api#documentation": "

(Required) The ID of the managed node targeted by the command. A managed\n node can be an Amazon Elastic Compute Cloud (Amazon EC2) instance, edge device, and on-premises server or VM\n in your hybrid environment that is configured for Amazon Web Services Systems Manager.

", "smithy.api#required": {} } }, @@ -9940,7 +9985,7 @@ "InstanceId": { "target": "com.amazonaws.ssm#InstanceId", "traits": { - "smithy.api#documentation": "

The ID of the managed node targeted by the command. A managed node can be an\n Amazon Elastic Compute Cloud (Amazon EC2) instance, edge device, or on-premises server or VM in your hybrid environment that is configured for Amazon Web Services Systems Manager.

" + "smithy.api#documentation": "

The ID of the managed node targeted by the command. A managed node can\n be an Amazon Elastic Compute Cloud (Amazon EC2) instance, edge device, or on-premises server or VM in your hybrid\n environment that is configured for Amazon Web Services Systems Manager.

" } }, "Comment": { @@ -9970,7 +10015,7 @@ "ResponseCode": { "target": "com.amazonaws.ssm#ResponseCode", "traits": { - "smithy.api#documentation": "

The error level response code for the plugin script. If the response code is\n -1, then the command hasn't started running on the managed node, or it wasn't received\n by the node.

" + "smithy.api#documentation": "

The error level response code for the plugin script. If the response code is\n -1, then the command hasn't started running on the managed node, or it wasn't\n received by the node.

" } }, "ExecutionStartDateTime": { @@ -10000,7 +10045,7 @@ "StatusDetails": { "target": "com.amazonaws.ssm#StatusDetails", "traits": { - "smithy.api#documentation": "

A detailed status of the command execution for an invocation. StatusDetails\n includes more information than Status because it includes states resulting from\n error and concurrency control parameters. StatusDetails can show different results\n than Status. For more information about these statuses, see Understanding\n command statuses in the Amazon Web Services Systems Manager User Guide.\n StatusDetails can be one of the following values:

\n " + "smithy.api#documentation": "

A detailed status of the command execution for an invocation. StatusDetails\n includes more information than Status because it includes states resulting from\n error and concurrency control parameters. StatusDetails can show different results\n than Status. For more information about these statuses, see Understanding\n command statuses in the Amazon Web Services Systems Manager User Guide.\n StatusDetails can be one of the following values:

\n " } }, "StandardOutputContent": { @@ -10049,7 +10094,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the Session Manager connection status for a managed node to determine whether it is running and\n ready to receive Session Manager connections.

" + "smithy.api#documentation": "

Retrieves the Session Manager connection status for a managed node to determine whether it is running\n and ready to receive Session Manager connections.

" } }, "com.amazonaws.ssm#GetConnectionStatusRequest": { @@ -10146,7 +10191,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the current snapshot for the patch baseline the managed node uses. This API is\n primarily used by the AWS-RunPatchBaseline Systems Manager document (SSM document).

\n \n

If you run the command locally, such as with the Command Line Interface (CLI), the system attempts to use your local Amazon Web Services credentials and the operation fails. To avoid\n this, you can run the command in the Amazon Web Services Systems Manager console. Use Run Command, a capability of\n Amazon Web Services Systems Manager, with an SSM document that enables you to target a managed node with a script or command.\n For example, run the command using the AWS-RunShellScript document or the\n AWS-RunPowerShellScript document.

\n
" + "smithy.api#documentation": "

Retrieves the current snapshot for the patch baseline the managed node uses. This API is\n primarily used by the AWS-RunPatchBaseline Systems Manager document (SSM document).

\n \n

If you run the command locally, such as with the Command Line Interface (CLI), the system attempts to use your local Amazon Web Services credentials and the operation fails. To avoid\n this, you can run the command in the Amazon Web Services Systems Manager console. Use Run Command, a capability of\n Amazon Web Services Systems Manager, with an SSM document that enables you to target a managed node with a script or\n command. For example, run the command using the AWS-RunShellScript document or the\n AWS-RunPowerShellScript document.

\n
" } }, "com.amazonaws.ssm#GetDeployablePatchSnapshotForInstanceRequest": { @@ -10155,7 +10200,7 @@ "InstanceId": { "target": "com.amazonaws.ssm#InstanceId", "traits": { - "smithy.api#documentation": "

The ID of the managed node for which the appropriate patch snapshot should be retrieved.

", + "smithy.api#documentation": "

The ID of the managed node for which the appropriate patch snapshot should be\n retrieved.

", "smithy.api#required": {} } }, @@ -10371,7 +10416,7 @@ } ], "traits": { - "smithy.api#documentation": "

Query inventory information. This includes managed node status, such as Stopped or\n Terminated.

", + "smithy.api#documentation": "

Query inventory information. This includes managed node status, such as Stopped\n or Terminated.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -12522,7 +12567,7 @@ "InstalledOtherCount": { "target": "com.amazonaws.ssm#PatchInstalledOtherCount", "traits": { - "smithy.api#documentation": "

The number of patches not specified in the patch baseline that are installed on the\n managed node.

" + "smithy.api#documentation": "

The number of patches not specified in the patch baseline that are installed on the managed\n node.

" } }, "InstalledPendingRebootCount": { @@ -12561,7 +12606,7 @@ "NotApplicableCount": { "target": "com.amazonaws.ssm#PatchNotApplicableCount", "traits": { - "smithy.api#documentation": "

The number of patches from the patch baseline that aren't applicable for the managed node and\n therefore aren't installed on the node. This number may be truncated if the list of patch\n names is very large. The number of patches beyond this limit are reported in\n UnreportedNotApplicableCount.

" + "smithy.api#documentation": "

The number of patches from the patch baseline that aren't applicable for the managed node\n and therefore aren't installed on the node. This number may be truncated if the list of patch\n names is very large. The number of patches beyond this limit are reported in\n UnreportedNotApplicableCount.

" } }, "OperationStartTime": { @@ -12588,27 +12633,27 @@ "LastNoRebootInstallOperationTime": { "target": "com.amazonaws.ssm#DateTime", "traits": { - "smithy.api#documentation": "

The time of the last attempt to patch the managed node with NoReboot specified as\n the reboot option.

" + "smithy.api#documentation": "

The time of the last attempt to patch the managed node with NoReboot specified\n as the reboot option.

" } }, "RebootOption": { "target": "com.amazonaws.ssm#RebootOption", "traits": { - "smithy.api#documentation": "

Indicates the reboot option specified in the patch baseline.

\n \n

Reboot options apply to Install operations only. Reboots aren't attempted for\n Patch Manager Scan operations.

\n
\n " + "smithy.api#documentation": "

Indicates the reboot option specified in the patch baseline.

\n \n

Reboot options apply to Install operations only. Reboots aren't attempted for\n Patch Manager Scan operations.

\n
\n " } }, "CriticalNonCompliantCount": { "target": "com.amazonaws.ssm#PatchCriticalNonCompliantCount", "traits": { "smithy.api#box": {}, - "smithy.api#documentation": "

The number of managed nodes where patches that are specified as Critical for\n compliance reporting in the patch baseline aren't installed. These patches might be missing, have\n failed installation, were rejected, or were installed but awaiting a required managed node reboot.\n The status of these managed nodes is NON_COMPLIANT.

" + "smithy.api#documentation": "

The number of managed nodes where patches that are specified as Critical for\n compliance reporting in the patch baseline aren't installed. These patches might be missing, have\n failed installation, were rejected, or were installed but awaiting a required managed node\n reboot. The status of these managed nodes is NON_COMPLIANT.

" } }, "SecurityNonCompliantCount": { "target": "com.amazonaws.ssm#PatchSecurityNonCompliantCount", "traits": { "smithy.api#box": {}, - "smithy.api#documentation": "

The number of managed nodes where patches that are specified as Security in a\n patch advisory aren't installed. These patches might be missing, have failed installation, were\n rejected, or were installed but awaiting a required managed node reboot. The status of these managed\n nodes is NON_COMPLIANT.

" + "smithy.api#documentation": "

The number of managed nodes where patches that are specified as Security in a\n patch advisory aren't installed. These patches might be missing, have failed installation, were\n rejected, or were installed but awaiting a required managed node reboot. The status of these\n managed nodes is NON_COMPLIANT.

" } }, "OtherNonCompliantCount": { @@ -13399,7 +13444,7 @@ "code": "InvalidResourceType", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The resource type isn't valid. For example, if you are attempting to tag an EC2 instance, the\n instance must be a registered managed node.

", + "smithy.api#documentation": "

The resource type isn't valid. For example, if you are attempting to tag an EC2 instance,\n the instance must be a registered managed node.

", "smithy.api#error": "client" } }, @@ -14079,7 +14124,7 @@ "Id": { "target": "com.amazonaws.ssm#InventoryResultEntityId", "traits": { - "smithy.api#documentation": "

ID of the inventory result entity. For example, for managed node inventory the result\n will be the managed node ID. For EC2 instance inventory, the result will be the instance ID.\n

" + "smithy.api#documentation": "

ID of the inventory result entity. For example, for managed node inventory the result will\n be the managed node ID. For EC2 instance inventory, the result will be the instance ID.

" } }, "Data": { @@ -14432,7 +14477,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns all State Manager associations in the current Amazon Web Services account and Amazon Web Services Region. You\n can limit the results to a specific State Manager association document or managed node by specifying\n a filter. State Manager is a capability of Amazon Web Services Systems Manager.

", + "smithy.api#documentation": "

Returns all State Manager associations in the current Amazon Web Services account and Amazon Web Services Region. You\n can limit the results to a specific State Manager association document or managed node by\n specifying a filter. State Manager is a capability of Amazon Web Services Systems Manager.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -14447,7 +14492,7 @@ "AssociationFilterList": { "target": "com.amazonaws.ssm#AssociationFilterList", "traits": { - "smithy.api#documentation": "

One or more filters. Use a filter to return a more specific list of results.

\n \n

Filtering associations using the InstanceID attribute only returns legacy\n associations created using the InstanceID attribute. Associations targeting the\n managed node that are part of the Target Attributes ResourceGroup or Tags\n aren't returned.

\n
" + "smithy.api#documentation": "

One or more filters. Use a filter to return a more specific list of results.

\n \n

Filtering associations using the InstanceID attribute only returns legacy\n associations created using the InstanceID attribute. Associations targeting the\n managed node that are part of the Target Attributes ResourceGroup or\n Tags aren't returned.

\n
" } }, "MaxResults": { @@ -14508,7 +14553,7 @@ } ], "traits": { - "smithy.api#documentation": "

An invocation is copy of a command sent to a specific managed node. A command can apply to one\n or more managed nodes. A command invocation applies to one managed node. For example, if a user runs\n SendCommand against three managed nodes, then a command invocation is created for\n each requested managed node ID. ListCommandInvocations provide status about command\n execution.

", + "smithy.api#documentation": "

An invocation is copy of a command sent to a specific managed node. A command can apply to\n one or more managed nodes. A command invocation applies to one managed node. For example, if a\n user runs SendCommand against three managed nodes, then a command invocation is\n created for each requested managed node ID. ListCommandInvocations provide status\n about command execution.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -14623,7 +14668,7 @@ "InstanceId": { "target": "com.amazonaws.ssm#InstanceId", "traits": { - "smithy.api#documentation": "

(Optional) Lists commands issued against this managed node ID.

\n \n

You can't specify a managed node ID in the same command that you specify Status =\n Pending. This is because the command hasn't reached the managed node yet.

\n
" + "smithy.api#documentation": "

(Optional) Lists commands issued against this managed node ID.

\n \n

You can't specify a managed node ID in the same command that you specify\n Status = Pending. This is because the command hasn't reached the\n managed node yet.

\n
" } }, "MaxResults": { @@ -15614,7 +15659,7 @@ } }, "traits": { - "smithy.api#documentation": "

Information about an Amazon Simple Storage Service (Amazon S3) bucket to write\n managed node-level logs to.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n
" + "smithy.api#documentation": "

Information about an Amazon Simple Storage Service (Amazon S3) bucket to write managed\n node-level logs to.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n
" } }, "com.amazonaws.ssm#Long": { @@ -15635,7 +15680,7 @@ "Parameters": { "target": "com.amazonaws.ssm#AutomationParameterMap", "traits": { - "smithy.api#documentation": "

The parameters for the AUTOMATION task.

\n

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n \n

\n TaskParameters has been deprecated. To specify parameters to pass to a task when it runs,\n instead use the Parameters option in the TaskInvocationParameters structure. For information\n about how Systems Manager handles these options for the supported maintenance window task\n types, see MaintenanceWindowTaskInvocationParameters.

\n

For AUTOMATION task types, Amazon Web Services Systems Manager ignores any values specified for these\n parameters.

\n
" + "smithy.api#documentation": "

The parameters for the AUTOMATION task.

\n

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n

\n TaskParameters has been deprecated. To specify parameters to pass to a task when it runs,\n instead use the Parameters option in the TaskInvocationParameters structure. For information\n about how Systems Manager handles these options for the supported maintenance window task\n types, see MaintenanceWindowTaskInvocationParameters.

\n

For AUTOMATION\n task types, Amazon Web Services Systems Manager ignores any values specified for these parameters.

\n
" } } }, @@ -16170,7 +16215,7 @@ } }, "traits": { - "smithy.api#documentation": "

The parameters for a LAMBDA task type.

\n

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n \n

\n TaskParameters has been deprecated. To specify parameters to pass to a task when it runs,\n instead use the Parameters option in the TaskInvocationParameters structure. For information\n about how Systems Manager handles these options for the supported maintenance window task\n types, see MaintenanceWindowTaskInvocationParameters.

\n

For Lambda tasks, Systems Manager ignores any values specified for TaskParameters and\n LoggingInfo.

\n
" + "smithy.api#documentation": "

The parameters for a LAMBDA task type.

\n

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n

\n TaskParameters has been deprecated. To specify parameters to pass to a task when it runs,\n instead use the Parameters option in the TaskInvocationParameters structure. For information\n about how Systems Manager handles these options for the supported maintenance window task\n types, see MaintenanceWindowTaskInvocationParameters.

\n

For Lambda tasks, Systems Manager ignores\n any values specified for TaskParameters and LoggingInfo.

\n
" } }, "com.amazonaws.ssm#MaintenanceWindowLambdaPayload": { @@ -16304,7 +16349,7 @@ } }, "traits": { - "smithy.api#documentation": "

The parameters for a RUN_COMMAND task type.

\n

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n \n

\n TaskParameters has been deprecated. To specify parameters to pass to a task when it runs,\n instead use the Parameters option in the TaskInvocationParameters structure. For information\n about how Systems Manager handles these options for the supported maintenance window task\n types, see MaintenanceWindowTaskInvocationParameters.

\n

For RUN_COMMAND tasks, Systems Manager uses specified values for\n TaskParameters and LoggingInfo only if no values are specified for\n TaskInvocationParameters.

\n
" + "smithy.api#documentation": "

The parameters for a RUN_COMMAND task type.

\n

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n

\n TaskParameters has been deprecated. To specify parameters to pass to a task when it runs,\n instead use the Parameters option in the TaskInvocationParameters structure. For information\n about how Systems Manager handles these options for the supported maintenance window task\n types, see MaintenanceWindowTaskInvocationParameters.

\n

For RUN_COMMAND\n tasks, Systems Manager uses specified values for TaskParameters and LoggingInfo\n only if no values are specified for TaskInvocationParameters.

\n
" } }, "com.amazonaws.ssm#MaintenanceWindowSchedule": { @@ -16360,7 +16405,7 @@ } }, "traits": { - "smithy.api#documentation": "

The parameters for a STEP_FUNCTIONS task.

\n

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n \n

\n TaskParameters has been deprecated. To specify parameters to pass to a task when it runs,\n instead use the Parameters option in the TaskInvocationParameters structure. For information\n about how Systems Manager handles these options for the supported maintenance window task\n types, see MaintenanceWindowTaskInvocationParameters.

\n

For Step Functions tasks, Systems Manager ignores any values specified for\n TaskParameters and LoggingInfo.

\n
" + "smithy.api#documentation": "

The parameters for a STEP_FUNCTIONS task.

\n

For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow and UpdateMaintenanceWindowTask.

\n \n

\n LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service (Amazon S3) bucket to contain logs, instead use the\n OutputS3BucketName and OutputS3KeyPrefix options in the TaskInvocationParameters structure.\n For information about how Amazon Web Services Systems Manager handles these options for the supported maintenance\n window task types, see MaintenanceWindowTaskInvocationParameters.

\n

\n TaskParameters has been deprecated. To specify parameters to pass to a task when it runs,\n instead use the Parameters option in the TaskInvocationParameters structure. For information\n about how Systems Manager handles these options for the supported maintenance window task\n types, see MaintenanceWindowTaskInvocationParameters.

\n

For Step Functions tasks, Systems Manager\n ignores any values specified for TaskParameters and\n LoggingInfo.

\n
" } }, "com.amazonaws.ssm#MaintenanceWindowStringDateTime": { @@ -19808,7 +19853,7 @@ } }, "traits": { - "smithy.api#documentation": "

Information about the state of a patch on a particular managed node as it relates to the patch\n baseline used to patch the node.

" + "smithy.api#documentation": "

Information about the state of a patch on a particular managed node as it relates to the\n patch baseline used to patch the node.

" } }, "com.amazonaws.ssm#PatchComplianceDataList": { @@ -20773,7 +20818,7 @@ } ], "traits": { - "smithy.api#documentation": "

Bulk update custom inventory items on one or more managed nodes. The request adds an inventory item,\n if it doesn't already exist, or updates an inventory item, if it does exist.

" + "smithy.api#documentation": "

Bulk update custom inventory items on one or more managed nodes. The request adds an\n inventory item, if it doesn't already exist, or updates an inventory item, if it does\n exist.

" } }, "com.amazonaws.ssm#PutInventoryMessage": { @@ -22280,7 +22325,7 @@ "StreamUrl": { "target": "com.amazonaws.ssm#StreamUrl", "traits": { - "smithy.api#documentation": "

A URL back to SSM Agent on the managed node that the Session Manager client uses to send commands and\n receive output from the managed node. Format: wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output).

\n

\n region represents the Region identifier for an\n\t\t\t\t\t\tAmazon Web Services Region supported by Amazon Web Services Systems Manager, such as us-east-2 for the US East (Ohio) Region.\n\t\t\t\t\t\tFor a list of supported region values, see the Region column in Systems Manager service endpoints in the\n Amazon Web Services General Reference.

\n

\n session-id represents the ID of a Session Manager session, such as\n 1a2b3c4dEXAMPLE.

" + "smithy.api#documentation": "

A URL back to SSM Agent on the managed node that the Session Manager client uses to send commands and\n receive output from the managed node. Format: wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output).

\n

\n region represents the Region identifier for an\n\t\t\t\t\t\tAmazon Web Services Region supported by Amazon Web Services Systems Manager, such as us-east-2 for the US East (Ohio) Region.\n\t\t\t\t\t\tFor a list of supported region values, see the Region column in Systems Manager service endpoints in the\n Amazon Web Services General Reference.

\n

\n session-id represents the ID of a Session Manager session, such as\n 1a2b3c4dEXAMPLE.

" } } } @@ -22643,7 +22688,7 @@ "InstanceIds": { "target": "com.amazonaws.ssm#InstanceIdList", "traits": { - "smithy.api#documentation": "

The IDs of the managed nodes where the command should run. Specifying managed node IDs is most\n useful when you are targeting a limited number of managed nodes, though you can specify up to 50\n IDs.

\n

To target a larger number of managed nodes, or if you prefer not to list individual node\n IDs, we recommend using the Targets option instead. Using Targets,\n which accepts tag key-value pairs to identify the managed nodes to send commands to, you can a\n send command to tens, hundreds, or thousands of nodes at once.

\n

For more information about how to use targets, see Using targets and rate\n controls to send commands to a fleet in the\n Amazon Web Services Systems Manager User Guide.

" + "smithy.api#documentation": "

The IDs of the managed nodes where the command should run. Specifying managed node IDs is\n most useful when you are targeting a limited number of managed nodes, though you can specify up\n to 50 IDs.

\n

To target a larger number of managed nodes, or if you prefer not to list individual node\n IDs, we recommend using the Targets option instead. Using Targets,\n which accepts tag key-value pairs to identify the managed nodes to send commands to, you can a\n send command to tens, hundreds, or thousands of nodes at once.

\n

For more information about how to use targets, see Using targets and rate\n controls to send commands to a fleet in the\n Amazon Web Services Systems Manager User Guide.

" } }, "Targets": { @@ -23605,7 +23650,7 @@ } ], "traits": { - "smithy.api#documentation": "

Initiates a connection to a target (for example, a managed node) for a Session Manager session. Returns a\n URL and token that can be used to open a WebSocket connection for sending input and receiving\n outputs.

\n \n

Amazon Web Services CLI usage: start-session is an interactive command that requires the Session Manager\n plugin to be installed on the client machine making the call. For information, see Install\n the Session Manager plugin for the Amazon Web Services CLI in the Amazon Web Services Systems Manager User Guide.

\n

Amazon Web Services Tools for PowerShell usage: Start-SSMSession isn't currently supported by Amazon Web Services Tools\n for PowerShell on Windows local machines.

\n
" + "smithy.api#documentation": "

Initiates a connection to a target (for example, a managed node) for a Session Manager session.\n Returns a URL and token that can be used to open a WebSocket connection for sending input and\n receiving outputs.

\n \n

Amazon Web Services CLI usage: start-session is an interactive command that requires the Session Manager\n plugin to be installed on the client machine making the call. For information, see Install\n the Session Manager plugin for the Amazon Web Services CLI in the Amazon Web Services Systems Manager User Guide.

\n

Amazon Web Services Tools for PowerShell usage: Start-SSMSession isn't currently supported by Amazon Web Services Tools\n for PowerShell on Windows local machines.

\n
" } }, "com.amazonaws.ssm#StartSessionRequest": { @@ -23656,7 +23701,7 @@ "StreamUrl": { "target": "com.amazonaws.ssm#StreamUrl", "traits": { - "smithy.api#documentation": "

A URL back to SSM Agent on the managed node that the Session Manager client uses to send commands and\n receive output from the node. Format: wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output)\n

\n

\n region represents the Region identifier for an\n\t\t\t\t\t\tAmazon Web Services Region supported by Amazon Web Services Systems Manager, such as us-east-2 for the US East (Ohio) Region.\n\t\t\t\t\t\tFor a list of supported region values, see the Region column in Systems Manager service endpoints in the\n Amazon Web Services General Reference.

\n

\n session-id represents the ID of a Session Manager session, such as\n 1a2b3c4dEXAMPLE.

" + "smithy.api#documentation": "

A URL back to SSM Agent on the managed node that the Session Manager client uses to send commands and\n receive output from the node. Format: wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output)\n

\n

\n region represents the Region identifier for an\n\t\t\t\t\t\tAmazon Web Services Region supported by Amazon Web Services Systems Manager, such as us-east-2 for the US East (Ohio) Region.\n\t\t\t\t\t\tFor a list of supported region values, see the Region column in Systems Manager service endpoints in the\n Amazon Web Services General Reference.

\n

\n session-id represents the ID of a Session Manager session, such as\n 1a2b3c4dEXAMPLE.

" } } } @@ -24255,7 +24300,7 @@ "code": "TargetNotConnected", "httpResponseCode": 430 }, - "smithy.api#documentation": "

The specified target managed node for the session isn't fully configured for use with Session Manager. For\n more information, see Getting started with\n Session Manager in the Amazon Web Services Systems Manager User Guide. This error is also returned if you\n attempt to start a session on a managed node that is located in a different account or Region

", + "smithy.api#documentation": "

The specified target managed node for the session isn't fully configured for use with Session Manager.\n For more information, see Getting started with\n Session Manager in the Amazon Web Services Systems Manager User Guide. This error is also returned if you\n attempt to start a session on a managed node that is located in a different account or\n Region

", "smithy.api#error": "client" } }, @@ -24597,7 +24642,7 @@ "code": "UnsupportedPlatformType", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The document doesn't support the platform type of the given managed node ID(s). For example, you\n sent an document for a Windows managed node to a Linux node.

", + "smithy.api#documentation": "

The document doesn't support the platform type of the given managed node ID(s). For example,\n you sent an document for a Windows managed node to a Linux node.

", "smithy.api#error": "client" } }, @@ -24648,7 +24693,7 @@ } ], "traits": { - "smithy.api#documentation": "

Updates an association. You can update the association name and version, the document\n version, schedule, parameters, and Amazon Simple Storage Service (Amazon S3) output.

\n

In order to call this API operation, your Identity and Access Management (IAM) user\n account, group, or role must be configured with permission to call the DescribeAssociation API operation. If you don't have permission to call\n DescribeAssociation, then you receive the following error: An error occurred\n (AccessDeniedException) when calling the UpdateAssociation operation: User: \n isn't authorized to perform: ssm:DescribeAssociation on resource:\n \n

\n \n

When you update an association, the association immediately runs against the specified\n targets.

\n
" + "smithy.api#documentation": "

Updates an association. You can update the association name and version, the document\n version, schedule, parameters, and Amazon Simple Storage Service (Amazon S3) output. When you\n call UpdateAssociation, the system drops all optional parameters from the request\n and overwrites the association with null values for those parameters. This is by design. You must\n specify all optional parameters in the call, even if you are not changing the parameters. This\n includes the Name parameter. Before calling this API action, we recommend that you\n call the DescribeAssociation API operation and make a note of all optional\n parameters required for your UpdateAssociation call.

\n\n

In order to call this API operation, your Identity and Access Management (IAM) user\n account, group, or role must be configured with permission to call the DescribeAssociation API operation. If you don't have permission to call\n DescribeAssociation, then you receive the following error: An error occurred\n (AccessDeniedException) when calling the UpdateAssociation operation: User: \n isn't authorized to perform: ssm:DescribeAssociation on resource:\n \n

\n \n

When you update an association, the association immediately runs against the specified\n targets. You can add the ApplyOnlyAtCronInterval parameter to run the association\n during the next schedule run.

\n
" } }, "com.amazonaws.ssm#UpdateAssociationRequest": { @@ -24670,7 +24715,7 @@ "DocumentVersion": { "target": "com.amazonaws.ssm#DocumentVersion", "traits": { - "smithy.api#documentation": "

The document version you want update for the association.

" + "smithy.api#documentation": "

The document version you want update for the association.

\n \n

State Manager doesn't support running associations that use a new version of a document if that document is shared from another account. State Manager always runs the default version of a document if shared from another account, even though the Systems Manager console shows that a new version was processed. If you want to run an association using a new version of a document shared form another account, you must set the document version to default.

\n
" } }, "ScheduleExpression": { @@ -24724,7 +24769,7 @@ "MaxConcurrency": { "target": "com.amazonaws.ssm#MaxConcurrency", "traits": { - "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit specified\n for MaxConcurrency.

" + "smithy.api#documentation": "

The maximum number of targets allowed to run the association at the same time. You can\n specify a number, for example 10, or a percentage of the target set, for example 10%. The default\n value is 100%, which means all targets run the association at the same time.

\n

If a new managed node starts and attempts to run an association while Systems Manager is running\n MaxConcurrency associations, the association is allowed to run. During the next\n association interval, the new managed node will process its association within the limit\n specified for MaxConcurrency.

" } }, "ComplianceSeverity": { @@ -25854,7 +25899,7 @@ "ApprovedPatches": { "target": "com.amazonaws.ssm#PatchIdList", "traits": { - "smithy.api#documentation": "

A list of explicitly approved patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" + "smithy.api#documentation": "

A list of explicitly approved patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" } }, "ApprovedPatchesComplianceLevel": { @@ -25873,7 +25918,7 @@ "RejectedPatches": { "target": "com.amazonaws.ssm#PatchIdList", "traits": { - "smithy.api#documentation": "

A list of explicitly rejected patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" + "smithy.api#documentation": "

A list of explicitly rejected patches for the baseline.

\n

For information about accepted formats for lists of approved patches and rejected patches,\n see About\n package name formats for approved and rejected patch lists in the Amazon Web Services Systems Manager User Guide.

" } }, "RejectedPatchesAction": { diff --git a/codegen/sdk-codegen/aws-models/transcribe.2017-10-26.json b/codegen/sdk-codegen/aws-models/transcribe.2017-10-26.json index 3884164d5f1..e93cfe23c1a 100644 --- a/codegen/sdk-codegen/aws-models/transcribe.2017-10-26.json +++ b/codegen/sdk-codegen/aws-models/transcribe.2017-10-26.json @@ -35,25 +35,25 @@ "StartTime": { "target": "com.amazonaws.transcribe#TimestampMilliseconds", "traits": { - "smithy.api#documentation": "

A value that indicates the beginning of the time range in seconds. To set absolute time range, you must specify a \n start time and an end time. For example, if you specify the following values:

\n \n

The time range is set between 10,000 milliseconds and 50,000 milliseconds into the call.

" + "smithy.api#documentation": "

A value that indicates the beginning of the time range in seconds. To set absolute time\n range, you must specify a start time and an end time. For example, if you specify the following\n values:

\n \n

The time range is set between 10,000 milliseconds and 50,000 milliseconds into the\n call.

" } }, "EndTime": { "target": "com.amazonaws.transcribe#TimestampMilliseconds", "traits": { - "smithy.api#documentation": "

A value that indicates the end of the time range in milliseconds. To set absolute time range, you must specify a start \n time and an end time. For example, if you specify the following values:

\n \n

The time range is set between 10,000 milliseconds and 50,000 milliseconds into the call.

" + "smithy.api#documentation": "

A value that indicates the end of the time range in milliseconds. To set absolute time \n range, you must specify a start time and an end time. For example, if you specify the following\n values:

\n \n

The time range is set between 10,000 milliseconds and 50,000 milliseconds into the \n call.

" } }, "First": { "target": "com.amazonaws.transcribe#TimestampMilliseconds", "traits": { - "smithy.api#documentation": "

A time range from the beginning of the call to the value that you've specified. For example, if you specify 100000, the \n time range is set to the first 100,000 milliseconds of the call.

" + "smithy.api#documentation": "

A time range from the beginning of the call to the value that you've specified. For example, \n if you specify 100000, the time range is set to the first 100,000 milliseconds\n of the call.

" } }, "Last": { "target": "com.amazonaws.transcribe#TimestampMilliseconds", "traits": { - "smithy.api#documentation": "

A time range from the value that you've specified to the end of the call. For example, if you specify 100000, the time\n range is set to the last 100,000 milliseconds of the call.

" + "smithy.api#documentation": "

A time range from the value that you've specified to the end of the call. For example, if you\n specify 100000, the time range is set to the last 100,000 milliseconds of the\n call.

" } } }, @@ -69,7 +69,7 @@ } }, "traits": { - "smithy.api#documentation": "

Your request didn't pass one or more validation tests. For example, if the entity that you're trying to delete \n doesn't exist or if it is in a non-terminal state (for example, it's \"in progress\"). See the exception Message\n field for more information.

", + "smithy.api#documentation": "

Your request didn't pass one or more validation tests. For example, if the entity that \n you're trying to delete doesn't exist or if it is in a non-terminal state (for example, it's \n \"in progress\"). See the exception Message field for more information.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -140,7 +140,7 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

If you know the language spoken between the customer and the agent, specify a language code for this field.

\n

If you don't know the language, you can leave this field blank, and Amazon Transcribe will use machine learning to automatically\n identify the language. To improve the accuracy of language identification, you can provide an array containing the \n possible language codes for the language spoken in your audio. Refer to Supported languages and language-specific features for \n additional information.

" + "smithy.api#documentation": "

If you know the language spoken between the customer and the agent, specify a \n language code for this field.

\n

If you don't know the language, you can leave this field blank, and Amazon Transcribe will use machine \n learning to automatically identify the language. To improve the accuracy of language \n identification, you can provide an array containing the possible language codes for the \n language spoken in your audio. Refer to Supported languages for\n additional information.

" } }, "MediaSampleRateHertz": { @@ -152,7 +152,7 @@ "MediaFormat": { "target": "com.amazonaws.transcribe#MediaFormat", "traits": { - "smithy.api#documentation": "

The format of the input audio file. Note: for call analytics jobs, only the following media formats are supported: MP3, \n MP4, WAV, FLAC, OGG, and WebM.

" + "smithy.api#documentation": "

The format of the input audio file. Note: for call analytics jobs, only the following media \n formats are supported: MP3, MP4, WAV, FLAC, OGG, and WebM.

" } }, "Media": { @@ -182,19 +182,19 @@ "FailureReason": { "target": "com.amazonaws.transcribe#FailureReason", "traits": { - "smithy.api#documentation": "

If the AnalyticsJobStatus is FAILED, this field contains information about why\n the job failed.

\n

The FailureReason field can contain one of the following values:

\n " + "smithy.api#documentation": "

If the AnalyticsJobStatus is FAILED, this field contains \n information about why the job failed.

\n

The FailureReason field can contain one of the following values:

\n " } }, "DataAccessRoleArn": { "target": "com.amazonaws.transcribe#DataAccessRoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Number (ARN) that you use to access the analytics job. ARNs have the format\n arn:partition:service:region:account-id:resource-type/resource-id.

" + "smithy.api#documentation": "

The Amazon Resource Number (ARN) that you use to access the analytics job. ARNs \n have the format\n arn:partition:service:region:account-id:resource-type/resource-id.

" } }, "IdentifiedLanguageScore": { "target": "com.amazonaws.transcribe#IdentifiedLanguageScore", "traits": { - "smithy.api#documentation": "

A value between zero and one that Amazon Transcribe assigned to the language that it identified in the source audio. This value \n appears only when you don't provide a single language code. Larger values indicate that Amazon Transcribe has higher confidence in\n the language that it identified

" + "smithy.api#documentation": "

A value between zero and one that Amazon Transcribe assigned to the language that it identified in \n the source audio. This value appears only when you don't provide a single language code. \n Larger values indicate that Amazon Transcribe has higher confidence in the language that it\n identified.

" } }, "Settings": { @@ -206,12 +206,12 @@ "ChannelDefinitions": { "target": "com.amazonaws.transcribe#ChannelDefinitions", "traits": { - "smithy.api#documentation": "

Shows numeric values to indicate the channel assigned to the agent's audio and the channel assigned to the \n customer's audio.

" + "smithy.api#documentation": "

Shows numeric values to indicate the channel assigned to the agent's audio and the\n channel assigned to the customer's audio.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an asynchronous analytics job that was created with the StartAnalyticsJob\n operation.

" + "smithy.api#documentation": "

Describes an asynchronous analytics job that was created with the\n StartAnalyticsJob operation.

" } }, "com.amazonaws.transcribe#CallAnalyticsJobName": { @@ -236,13 +236,13 @@ "VocabularyFilterName": { "target": "com.amazonaws.transcribe#VocabularyFilterName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary filter to use when running a call analytics job. The filter that you specify must have the\n same language code as the analytics job.

" + "smithy.api#documentation": "

The name of the vocabulary filter to use when running a call analytics job. The filter that\n you specify must have the same language code as the analytics job.

" } }, "VocabularyFilterMethod": { "target": "com.amazonaws.transcribe#VocabularyFilterMethod", "traits": { - "smithy.api#documentation": "

Set to mask to remove filtered text from the transcript and replace it with three asterisks (\"***\") as placeholder text. \n Set to remove to remove filtered text from the transcript without using placeholder text. Set to \n tag to mark the word in the transcription output that matches the vocabulary filter. When you set the \n filter method to tag, the words matching your vocabulary filter are not masked or removed.

" + "smithy.api#documentation": "

Set to mask to remove filtered text from the transcript and replace it with three \n asterisks (\"***\") as placeholder text. Set to remove to remove filtered text \n from the transcript without using placeholder text. Set to tag to mark the word \n in the transcription output that matches the vocabulary filter. When you set the filter method\n to tag, the words matching your vocabulary filter are not masked or \n removed.

" } }, "LanguageModelName": { @@ -257,13 +257,13 @@ "LanguageOptions": { "target": "com.amazonaws.transcribe#LanguageOptions", "traits": { - "smithy.api#documentation": "

When you run a call analytics job, you can specify the language spoken in the audio, or you can have Amazon Transcribe identify\n the language for you.

\n

To specify a language, specify an array with one language code. If you don't know the language, you can leave this \n field blank and Amazon Transcribe will use machine learning to identify the language for you. To improve the ability of Amazon Transcribe to \n correctly identify the language, you can provide an array of the languages that can be present in the audio. Refer to \n Supported languages and language-specific\n features for additional information.

" + "smithy.api#documentation": "

When you run a call analytics job, you can specify the language spoken in the audio, or\n you can have Amazon Transcribe identify the language for you.

\n

To specify a language, specify an array with one language code. If you don't know the \n language, you can leave this field blank and Amazon Transcribe will use machine learning to identify the \n language for you. To improve the ability of Amazon Transcribe to correctly identify the language, you can \n provide an array of the languages that can be present in the audio. Refer to \n Supported languages for\n additional information.

" } }, "LanguageIdSettings": { "target": "com.amazonaws.transcribe#LanguageIdSettingsMap", "traits": { - "smithy.api#documentation": "

The language identification settings associated with your call analytics job. These settings include\n VocabularyName, VocabularyFilterName, and \n LanguageModelName.

" + "smithy.api#documentation": "

The language identification settings associated with your call analytics job. These settings \n include VocabularyName, VocabularyFilterName, and\n LanguageModelName.

" } } }, @@ -342,7 +342,7 @@ "FailureReason": { "target": "com.amazonaws.transcribe#FailureReason", "traits": { - "smithy.api#documentation": "

If the CallAnalyticsJobStatus is FAILED, a description of the error.

" + "smithy.api#documentation": "

If the CallAnalyticsJobStatus is FAILED, a description of \n the error.

" } } }, @@ -384,12 +384,12 @@ "LastUpdateTime": { "target": "com.amazonaws.transcribe#DateTime", "traits": { - "smithy.api#documentation": "

A timestamp that shows when the call analytics category was most recently updated.

" + "smithy.api#documentation": "

A timestamp that shows when the call analytics category was most recently \n updated.

" } } }, "traits": { - "smithy.api#documentation": "

An object that contains the rules and additional information about a call analytics category.

" + "smithy.api#documentation": "

An object that contains the rules and additional information about a call analytics \n category.

" } }, "com.amazonaws.transcribe#CategoryPropertiesList": { @@ -410,12 +410,12 @@ "ParticipantRole": { "target": "com.amazonaws.transcribe#ParticipantRole", "traits": { - "smithy.api#documentation": "

Indicates whether the person speaking on the audio channel is the agent or customer.

" + "smithy.api#documentation": "

Indicates whether the person speaking on the audio channel is the agent or \n customer.

" } } }, "traits": { - "smithy.api#documentation": "

For a call analytics job, an object that indicates the audio channel that belongs to the agent and the audio \n channel that belongs to the customer.

" + "smithy.api#documentation": "

For a call analytics job, an object that indicates the audio channel that belongs to the\n agent and the audio channel that belongs to the customer.

" } }, "com.amazonaws.transcribe#ChannelDefinitions": { @@ -458,14 +458,14 @@ "RedactionType": { "target": "com.amazonaws.transcribe#RedactionType", "traits": { - "smithy.api#documentation": "

Request parameter that defines the entities to be redacted. The only accepted value is PII.

", + "smithy.api#documentation": "

Request parameter that defines the entities to be redacted. The only accepted value is\n PII.

", "smithy.api#required": {} } }, "RedactionOutput": { "target": "com.amazonaws.transcribe#RedactionOutput", "traits": { - "smithy.api#documentation": "

The output transcript file stored in either the default S3 bucket or in a bucket you specify.

\n

When you choose redacted Amazon Transcribe outputs only the redacted transcript.

\n

When you choose redacted_and_unredacted Amazon Transcribe outputs both the redacted and \n unredacted transcripts.

", + "smithy.api#documentation": "

The output transcript file stored in either the default S3 bucket or in a bucket you\n specify.

\n

When you choose redacted Amazon Transcribe outputs only the redacted \n transcript.

\n

When you choose redacted_and_unredacted Amazon Transcribe outputs both the \n redacted and unredacted transcripts.

", "smithy.api#required": {} } } @@ -497,7 +497,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an analytics category. Amazon Transcribe applies the conditions specified by your\n analytics categories to your call analytics jobs. For each analytics category, you specify one or\n more rules. For example, you can specify a rule that the customer sentiment was neutral or\n negative within that category. If you start a call analytics job, Amazon Transcribe applies the\n category to the analytics job that you've specified.

", + "smithy.api#documentation": "

Creates an analytics category. Amazon Transcribe applies the conditions specified by your\n analytics categories to your call analytics jobs. For each analytics category, you specify one \n or more rules. For example, you can specify a rule that the customer sentiment was neutral \n or negative within that category. If you start a call analytics job, Amazon Transcribe applies the\n category to the analytics job that you've specified.

", "smithy.api#http": { "method": "PUT", "uri": "/callanalyticscategories/{CategoryName}", @@ -519,7 +519,7 @@ "Rules": { "target": "com.amazonaws.transcribe#RuleList", "traits": { - "smithy.api#documentation": "

To create a category, you must specify between 1 and 20 rules. For each rule, you specify a\n filter to be applied to the attributes of the call. For example, you can specify a sentiment\n filter to detect if the customer's sentiment was negative or neutral.

", + "smithy.api#documentation": "

To create a category, you must specify between 1 and 20 rules. For each rule, you \n specify a filter to be applied to the attributes of the call. For example, you can specify a \n sentiment filter to detect if the customer's sentiment was negative or neutral.

", "smithy.api#required": {} } } @@ -559,7 +559,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a new custom language model. Use Amazon S3 prefixes to provide the location of your input files. The time it\n takes to create your model depends on the size of your training data.

", + "smithy.api#documentation": "

Creates a new custom language model. Use Amazon S3 prefixes to provide the location of \n your input files. The time it takes to create your model depends on the size of your training\n data.

", "smithy.api#http": { "method": "PUT", "uri": "/languagemodels/{ModelName}", @@ -580,7 +580,7 @@ "BaseModelName": { "target": "com.amazonaws.transcribe#BaseModelName", "traits": { - "smithy.api#documentation": "

The Amazon Transcribe standard language model, or base model used to create your custom language model.

\n

If you want to use your custom language model to transcribe audio with a sample rate of 16,000 Hz or greater, \n choose Wideband.

\n

If you want to use your custom language model to transcribe audio with a sample rate that is less than \n 16,000 Hz, choose Narrowband.

", + "smithy.api#documentation": "

The Amazon Transcribe standard language model, or base model used to create your custom\n language model.

\n

If you want to use your custom language model to transcribe audio with a sample rate \n of 16,000 Hz or greater, choose Wideband.

\n

If you want to use your custom language model to transcribe audio with a sample rate \n that is less than 16,000 Hz, choose Narrowband.

", "smithy.api#required": {} } }, @@ -595,14 +595,14 @@ "InputDataConfig": { "target": "com.amazonaws.transcribe#InputDataConfig", "traits": { - "smithy.api#documentation": "

Contains the data access role and the Amazon S3 prefixes to read the required input files to create a custom \n language model.

", + "smithy.api#documentation": "

Contains the data access role and the Amazon S3 prefixes to read the required input files to\n create a custom language model.

", "smithy.api#required": {} } }, "Tags": { "target": "com.amazonaws.transcribe#TagList", "traits": { - "smithy.api#documentation": "

Adds one or more tags, each in the form of a key:value pair, to a new language model at the time you create \n this new model.

" + "smithy.api#documentation": "

Adds one or more tags, each in the form of a key:value pair, to a new language model \n at the time you create this new model.

" } } } @@ -619,7 +619,7 @@ "BaseModelName": { "target": "com.amazonaws.transcribe#BaseModelName", "traits": { - "smithy.api#documentation": "

The Amazon Transcribe standard language model, or base model you've used to create a custom language model.

" + "smithy.api#documentation": "

The Amazon Transcribe standard language model, or base model you've used to create a custom\n language model.

" } }, "ModelName": { @@ -637,7 +637,7 @@ "ModelStatus": { "target": "com.amazonaws.transcribe#ModelStatus", "traits": { - "smithy.api#documentation": "

The status of the custom language model. When the status is COMPLETED the model is ready\n to use.

" + "smithy.api#documentation": "

The status of the custom language model. When the status is \n COMPLETED the model is ready to use.

" } } } @@ -665,7 +665,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a new custom vocabulary that you can use to modify how Amazon Transcribe Medical transcribes your audio file.

", + "smithy.api#documentation": "

Creates a new custom vocabulary that you can use to modify how Amazon Transcribe Medical transcribes\n your audio file.

", "smithy.api#http": { "method": "PUT", "uri": "/medicalvocabularies/{VocabularyName}", @@ -679,7 +679,7 @@ "VocabularyName": { "target": "com.amazonaws.transcribe#VocabularyName", "traits": { - "smithy.api#documentation": "

The name of the custom vocabulary. This case-sensitive name must be unique within an Amazon Web Services\n account. If you try to create a vocabulary with the same name as a previous vocabulary, you get a \n ConflictException error.

", + "smithy.api#documentation": "

The name of the custom vocabulary. This case-sensitive name must be unique within\n an Amazon Web Services account. If you try to create a vocabulary with the same name \n as a previous vocabulary, you get a ConflictException error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -687,21 +687,21 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code for the language used for the entries in your custom vocabulary. The language code of your \n custom vocabulary must match the language code of your transcription job. US English (en-US) is the only language\n code available for Amazon Transcribe Medical.

", + "smithy.api#documentation": "

The language code for the language used for the entries in your custom vocabulary.\n The language code of your custom vocabulary must match the language code of your \n transcription job. US English (en-US) is the only language code available for Amazon Transcribe Medical.

", "smithy.api#required": {} } }, "VocabularyFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The location in Amazon S3 of the text file you use to define your custom vocabulary. The URI must be in the same \n Amazon Web Services Region as the resource that you're calling. Enter information about your \n VocabularyFileUri in the following format:

\n

\n \n https://s3..amazonaws.com///\n \n

\n

The following is an example URI for a vocabulary file that is stored in Amazon S3:

\n

\n https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt\n

\n

For more information about Amazon S3 object names, see Object Keys in the Amazon S3 \n Developer Guide.

\n

For more information about custom vocabularies, see Medical Custom Vocabularies.

", + "smithy.api#documentation": "

The location in Amazon S3 of the text file you use to define your custom vocabulary. The URI \n must be in the same Amazon Web Services Region as the resource that you're calling. Enter\n information about your VocabularyFileUri in the following format:

\n

\n https://s3..amazonaws.com///\n

\n

The following is an example URI for a vocabulary file that is stored in Amazon S3:

\n

\n https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt\n

\n

For more information about Amazon S3 object names, see Object Keys in \n the Amazon S3 Developer Guide.

\n

For more information about custom vocabularies, see Medical Custom\n Vocabularies.

", "smithy.api#required": {} } }, "Tags": { "target": "com.amazonaws.transcribe#TagList", "traits": { - "smithy.api#documentation": "

Adds one or more tags, each in the form of a key:value pair, to a new medical vocabulary at the time you \n create this new vocabulary.

" + "smithy.api#documentation": "

Adds one or more tags, each in the form of a key:value pair, to a new medical \n vocabulary at the time you create this new vocabulary.

" } } } @@ -712,19 +712,19 @@ "VocabularyName": { "target": "com.amazonaws.transcribe#VocabularyName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary. The name must be unique within an Amazon Web Services account and is case\n sensitive.

" + "smithy.api#documentation": "

The name of the vocabulary. The name must be unique within an Amazon Web Services \n account and is case sensitive.

" } }, "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code for the entries in your custom vocabulary. US English (en-US) is the only valid language \n code for Amazon Transcribe Medical.

" + "smithy.api#documentation": "

The language code for the entries in your custom vocabulary. US English (en-US) is the \n only valid language code for Amazon Transcribe Medical.

" } }, "VocabularyState": { "target": "com.amazonaws.transcribe#VocabularyState", "traits": { - "smithy.api#documentation": "

The processing state of your custom vocabulary in Amazon Transcribe Medical. If the state is READY, you can\n use the vocabulary in a StartMedicalTranscriptionJob request.

" + "smithy.api#documentation": "

The processing state of your custom vocabulary in Amazon Transcribe Medical. If the state is \n READY, you can use the vocabulary in a \n StartMedicalTranscriptionJob request.

" } }, "LastModifiedTime": { @@ -736,7 +736,7 @@ "FailureReason": { "target": "com.amazonaws.transcribe#FailureReason", "traits": { - "smithy.api#documentation": "

If the VocabularyState field is FAILED, this field contains information about\n why the job failed.

" + "smithy.api#documentation": "

If the VocabularyState field is FAILED, this field contains\n information about why the job failed.

" } } } @@ -795,7 +795,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a new vocabulary filter that you can use to filter words, such as profane words, from the output of\n a transcription job.

", + "smithy.api#documentation": "

Creates a new vocabulary filter that you can use to filter words, such as profane words, \n from the output of a transcription job.

", "smithy.api#http": { "method": "POST", "uri": "/vocabularyFilters/{VocabularyFilterName}", @@ -809,7 +809,7 @@ "VocabularyFilterName": { "target": "com.amazonaws.transcribe#VocabularyFilterName", "traits": { - "smithy.api#documentation": "

The vocabulary filter name. The name must be unique within the account that contains it. If you try to create a\n vocabulary filter with the same name as another vocabulary filter, you get a ConflictException \n error.

", + "smithy.api#documentation": "

The vocabulary filter name. The name must be unique within the account that contains \n it. If you try to create a vocabulary filter with the same name as another vocabulary filter, you\n get a ConflictException error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -817,26 +817,26 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code of the words in the vocabulary filter. All words in the filter must be in the same language. \n The vocabulary filter can only be used with transcription jobs in the specified language.

", + "smithy.api#documentation": "

The language code of the words in the vocabulary filter. All words in the filter must be\n in the same language. The vocabulary filter can only be used with transcription jobs in the \n specified language.

", "smithy.api#required": {} } }, "Words": { "target": "com.amazonaws.transcribe#Words", "traits": { - "smithy.api#documentation": "

The words to use in the vocabulary filter. Only use characters from the character set defined for custom \n vocabularies. For a list of character sets, see Character Sets for Custom Vocabularies.

\n

If you provide a list of words in the Words parameter, you can't use the\n VocabularyFilterFileUri parameter.

" + "smithy.api#documentation": "

The words to use in the vocabulary filter. Only use characters from the character set \n defined for custom vocabularies. For a list of character sets, see Character Sets for Custom\n Vocabularies.

\n

If you provide a list of words in the Words parameter, you can't use the\n VocabularyFilterFileUri parameter.

" } }, "VocabularyFilterFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The Amazon S3 location of a text file used as input to create the vocabulary filter. Only use characters from \n the character set defined for custom vocabularies. For a list of character sets, see Character Sets for Custom Vocabularies.

\n

The specified file must be less than 50 KB of UTF-8 characters.

\n

If you provide the location of a list of words in the VocabularyFilterFileUri parameter, you can't \n use the Words parameter.

" + "smithy.api#documentation": "

The Amazon S3 location of a text file used as input to create the vocabulary filter. Only \n use characters from the character set defined for custom vocabularies. For a list of character \n sets, see Character Sets for Custom\n Vocabularies.

\n

The specified file must be less than 50 KB of UTF-8 characters.

\n

If you provide the location of a list of words in the VocabularyFilterFileUri\n parameter, you can't use the Words parameter.

" } }, "Tags": { "target": "com.amazonaws.transcribe#TagList", "traits": { - "smithy.api#documentation": "

Adds one or more tags, each in the form of a key:value pair, to a new Amazon Transcribe vocabulary filter at the time you \n create this new vocabulary filter.

" + "smithy.api#documentation": "

Adds one or more tags, each in the form of a key:value pair, to a new Amazon Transcribe vocabulary\n filter at the time you create this new vocabulary filter.

" } } } @@ -870,7 +870,7 @@ "VocabularyName": { "target": "com.amazonaws.transcribe#VocabularyName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary. The name must be unique within an Amazon Web Services account. The name \n is case sensitive. If you try to create a vocabulary with the same name as a previous vocabulary you will receive a\n ConflictException error.

", + "smithy.api#documentation": "

The name of the vocabulary. The name must be unique within an \n Amazon Web Services account. The name is case sensitive. If you try to create a vocabulary \n with the same name as a previous vocabulary you will receive a \n ConflictException error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -878,7 +878,7 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code of the vocabulary entries. For a list of languages and their corresponding language \n codes, see transcribe-whatis.

", + "smithy.api#documentation": "

The language code of the vocabulary entries. For a list of languages and their \n corresponding language codes, see table-language-matrix.

", "smithy.api#required": {} } }, @@ -891,13 +891,13 @@ "VocabularyFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The S3 location of the text file that contains the definition of the custom vocabulary. The URI must be in the\n same region as the API endpoint that you are calling. The general form is:

\n \n \n \n

For more information about S3 object names, see Object Keys in the \n Amazon S3 Developer Guide.

\n

For more information about custom vocabularies, see Custom vocabularies.

" + "smithy.api#documentation": "

The S3 location of the text file that contains the definition of the custom vocabulary. The\n URI must be in the same region as the API endpoint that you are calling. The general form \n is:

\n

\n https://s3..amazonaws.com/// \n

\n

For example:

\n

\n https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt\n

\n

For more information about S3 object names, see Object Keys in the \n Amazon S3 Developer Guide.

\n

For more information about custom vocabularies, see Custom vocabularies.

" } }, "Tags": { "target": "com.amazonaws.transcribe#TagList", "traits": { - "smithy.api#documentation": "

Adds one or more tags, each in the form of a key:value pair, to a new Amazon Transcribe vocabulary at the time you create \n this new vocabulary.

" + "smithy.api#documentation": "

Adds one or more tags, each in the form of a key:value pair, to a new Amazon Transcribe vocabulary at\n the time you create this new vocabulary.

" } } } @@ -920,7 +920,7 @@ "VocabularyState": { "target": "com.amazonaws.transcribe#VocabularyState", "traits": { - "smithy.api#documentation": "

The processing state of the vocabulary. When the VocabularyState field contains \n READY the vocabulary is ready to be used in a StartTranscriptionJob \n request.

" + "smithy.api#documentation": "

The processing state of the vocabulary. When the VocabularyState field \n contains READY the vocabulary is ready to be used in a StartTranscriptionJob \n request.

" } }, "LastModifiedTime": { @@ -932,7 +932,7 @@ "FailureReason": { "target": "com.amazonaws.transcribe#FailureReason", "traits": { - "smithy.api#documentation": "

If the VocabularyState field is FAILED, this field contains information about\n why the job failed.

" + "smithy.api#documentation": "

If the VocabularyState field is FAILED, this field contains\n information about why the job failed.

" } } } @@ -1813,26 +1813,26 @@ "S3Uri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The Amazon S3 prefix you specify to access the plain text files that you use to train your custom language model.

", + "smithy.api#documentation": "

The Amazon S3 prefix you specify to access the plain text files that you use to train your \n custom language model.

", "smithy.api#required": {} } }, "TuningDataS3Uri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The Amazon S3 prefix you specify to access the plain text files that you use to tune your custom language model.

" + "smithy.api#documentation": "

The Amazon S3 prefix you specify to access the plain text files that you use to tune your \n custom language model.

" } }, "DataAccessRoleArn": { "target": "com.amazonaws.transcribe#DataAccessRoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) that uniquely identifies the permissions you've given Amazon Transcribe to access your \n Amazon S3 buckets containing your media files or text data. ARNs have the format\n arn:partition:service:region:account-id:resource-type/resource-id.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that uniquely identifies the permissions you've given\n Amazon Transcribe to access your Amazon S3 buckets containing your media files or text data. ARNs have the\n format\n arn:partition:service:region:account-id:resource-type/resource-id.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The object that contains the Amazon S3 object location and access role required to train and tune your custom\n language model.

" + "smithy.api#documentation": "

The object that contains the Amazon S3 object location and access role required to train and \n tune your custom language model.

" } }, "com.amazonaws.transcribe#InternalFailureException": { @@ -1866,13 +1866,13 @@ "AbsoluteTimeRange": { "target": "com.amazonaws.transcribe#AbsoluteTimeRange", "traits": { - "smithy.api#documentation": "

An object you can use to specify a time range (in milliseconds) for when you'd want to find the interruption. For \n example, you could search for an interruption between the 30,000 millisecond mark and the 45,000 millisecond mark. \n You could also specify the time period as the first 15,000 milliseconds or the last 15,000 milliseconds.

" + "smithy.api#documentation": "

An object you can use to specify a time range (in milliseconds) for when you'd want to \n find the interruption. For example, you could search for an interruption between the 30,000 \n millisecond mark and the 45,000 millisecond mark. You could also specify the time period as \n the first 15,000 milliseconds or the last 15,000 milliseconds.

" } }, "RelativeTimeRange": { "target": "com.amazonaws.transcribe#RelativeTimeRange", "traits": { - "smithy.api#documentation": "

An object that allows percentages to specify the proportion of the call where there was a interruption. For \n example, you can specify the first half of the call. You can also specify the period of time between halfway through to\n three-quarters of the way through the call. Because the length of conversation can vary between calls, you can apply\n relative time ranges across all calls.

" + "smithy.api#documentation": "

An object that allows percentages to specify the proportion of the call where there was\n a interruption. For example, you can specify the first half of the call. You can also specify the\n period of time between halfway through to three-quarters of the way through the call. \n Because the length of conversation can vary between calls, you can apply relative time \n ranges across all calls.

" } }, "Negate": { @@ -1883,7 +1883,7 @@ } }, "traits": { - "smithy.api#documentation": "

An object that enables you to configure your category to be applied to call analytics jobs where either the \n customer or agent was interrupted.

" + "smithy.api#documentation": "

An object that enables you to configure your category to be applied to call analytics \n jobs where either the customer or agent was interrupted.

" } }, "com.amazonaws.transcribe#JobExecutionSettings": { @@ -1892,13 +1892,13 @@ "AllowDeferredExecution": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether a job should be queued by Amazon Transcribe when the concurrent execution limit is exceeded. When the\n AllowDeferredExecution field is true, jobs are queued and executed when the number of executing\n jobs falls below the concurrent execution limit. If the field is false, Amazon Transcribe returns a \n LimitExceededException exception.

\n

Note that job queuing is enabled by default for call analytics jobs.

\n

If you specify the AllowDeferredExecution field, you must specify the \n DataAccessRoleArn field.

" + "smithy.api#documentation": "

Indicates whether a job should be queued by Amazon Transcribe when the concurrent execution limit \n is exceeded. When the AllowDeferredExecution field is true, jobs are queued\n and executed when the number of executing jobs falls below the concurrent execution limit. If\n the field is false, Amazon Transcribe returns a LimitExceededException exception.

\n

Note that job queuing is enabled by default for call analytics jobs.

\n

If you specify the AllowDeferredExecution field, you must specify the \n DataAccessRoleArn field.

" } }, "DataAccessRoleArn": { "target": "com.amazonaws.transcribe#DataAccessRoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN), in the form\n arn:partition:service:region:account-id:resource-type/resource-id, of a role \n that has access to the S3 bucket that contains the input files. Amazon Transcribe assumes this role to read queued\n media files. If you have specified an output S3 bucket for the transcription results, this role should \n have access to the output bucket as well.

\n

If you specify the AllowDeferredExecution field, you must specify the\n DataAccessRoleArn field.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN), in the form\n arn:partition:service:region:account-id:resource-type/resource-id, of a role \n that has access to the S3 bucket that contains the input files. Amazon Transcribe assumes this role to \n read queued media files. If you have specified an output S3 bucket for the transcription \n results, this role should have access to the output bucket as well.

\n

If you specify the AllowDeferredExecution field, you must specify the\n DataAccessRoleArn field.

" } } }, @@ -2104,24 +2104,24 @@ "VocabularyName": { "target": "com.amazonaws.transcribe#VocabularyName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary you want to use when processing your transcription job. The \n vocabulary you specify must have the same language code as the transcription job; if the languages don't \n match, the vocabulary won't be applied.

" + "smithy.api#documentation": "

The name of the vocabulary you want to use when processing your transcription job. The \n vocabulary you specify must have the same language codes as the transcription job; if the\n languages don't match, the vocabulary isn't applied.

" } }, "VocabularyFilterName": { "target": "com.amazonaws.transcribe#VocabularyFilterName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary filter you want to use when transcribing your audio. The filter you specify \n must have the same language code as the transcription job; if the languages don't match, the vocabulary \n filter won't be applied.

" + "smithy.api#documentation": "

The name of the vocabulary filter you want to use when transcribing your audio. The filter\n you specify must have the same language codes as the transcription job; if the languages \n don't match, the vocabulary filter isn't be applied.

" } }, "LanguageModelName": { "target": "com.amazonaws.transcribe#ModelName", "traits": { - "smithy.api#documentation": "

The name of the language model you want to use when transcribing your audio. The model you specify\n must have the same language code as the transcription job; if the languages don't match, the language model \n won't be applied.

" + "smithy.api#documentation": "

The name of the language model you want to use when transcribing your audio. The \n model you specify must have the same language codes as the transcription job; if the \n languages don't match, the language model isn't be applied.

" } } }, "traits": { - "smithy.api#documentation": "

Language-specific settings that can be specified when language identification is enabled.

" + "smithy.api#documentation": "

Language-specific settings that can be specified when language identification is \n enabled.

" } }, "com.amazonaws.transcribe#LanguageIdSettingsMap": { @@ -2169,19 +2169,19 @@ "BaseModelName": { "target": "com.amazonaws.transcribe#BaseModelName", "traits": { - "smithy.api#documentation": "

The Amazon Transcribe standard language model, or base model used to create the custom language model.

" + "smithy.api#documentation": "

The Amazon Transcribe standard language model, or base model used to create the custom language\n model.

" } }, "ModelStatus": { "target": "com.amazonaws.transcribe#ModelStatus", "traits": { - "smithy.api#documentation": "

The creation status of a custom language model. When the status is COMPLETED the model is \n ready for use.

" + "smithy.api#documentation": "

The creation status of a custom language model. When the status is \n COMPLETED the model is ready for use.

" } }, "UpgradeAvailability": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Whether the base model used for the custom language model is up to date. If this field is true \n then you are running the most up-to-date version of the base model in your custom language model.

" + "smithy.api#documentation": "

Whether the base model used for the custom language model is up to date. If this field \n is true then you are running the most up-to-date version of the base model \n in your custom language model.

" } }, "FailureReason": { @@ -2193,7 +2193,7 @@ "InputDataConfig": { "target": "com.amazonaws.transcribe#InputDataConfig", "traits": { - "smithy.api#documentation": "

The data access role and Amazon S3 prefixes for the input files used to train the custom language model.

" + "smithy.api#documentation": "

The data access role and Amazon S3 prefixes for the input files used to train the custom\n language model.

" } } }, @@ -2220,7 +2220,7 @@ } }, "traits": { - "smithy.api#documentation": "

Either you have sent too many requests or your input file is too long. Wait before you resend your request, or\n use a smaller file and resend the request.

", + "smithy.api#documentation": "

Either you have sent too many requests or your input file is too long. Wait before you\n resend your request, or use a smaller file and resend the request.

", "smithy.api#error": "client", "smithy.api#httpError": 429 } @@ -2245,7 +2245,7 @@ } ], "traits": { - "smithy.api#documentation": "

Provides more information about the call analytics categories that you've created. You \n can use the information in this list to find a specific category. You can then use the\n operation to get more information about it.

", + "smithy.api#documentation": "

Provides more information about the call analytics categories that you've created. You \n can use the information in this list to find a specific category. You can then use the\n operation to get more information about \n it.

", "smithy.api#http": { "method": "GET", "uri": "/callanalyticscategories", @@ -2283,7 +2283,7 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

The operation returns a page of jobs at a time. The\n maximum size of the list is set by the MaxResults parameter. If there are \n more categories in the list than the page size, Amazon Transcribe returns the NextPage \n token. Include the token in the next request to the \n operation to return the next page of analytics categories.

" + "smithy.api#documentation": "

The operation returns a page of jobs at\n a time. The maximum size of the list is set by the MaxResults parameter. If \n there are more categories in the list than the page size, Amazon Transcribe returns the \n NextPage token. Include the token in the next request to the \n operation to return the next page of analytics\n categories.

" } }, "Categories": { @@ -2347,14 +2347,14 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

If you receive a truncated result in the previous request of \n , \n include NextToken to fetch the next set of jobs.

", + "smithy.api#documentation": "

If you receive a truncated result in the previous request of \n , include NextToken to fetch the \n next set of jobs.

", "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.transcribe#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of call analytics jobs to return in each page of results. If there are \n fewer results than the value you specify, only the actual results are returned. If you do not \n specify a value, the default of 5 is used.

", + "smithy.api#documentation": "

The maximum number of call analytics jobs to return in each page of results. If there \n are fewer results than the value you specify, only the actual results are returned. If you do \n not specify a value, the default of 5 is used.

", "smithy.api#httpQuery": "MaxResults" } } @@ -2372,7 +2372,7 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

The operation returns a page of jobs at a time. The \n maximum size of the page is set by the MaxResults parameter. If there are more\n jobs in the list than the page size, Amazon Transcribe returns the NextPage token. Include the \n token in your next request to the operation to return next page of jobs.

" + "smithy.api#documentation": "

The operation returns a page of jobs at a time.\n The maximum size of the page is set by the MaxResults parameter. If there are\n more jobs in the list than the page size, Amazon Transcribe returns the NextPage token. \n Include the token in your next request to the \n operation to return next page of jobs.

" } }, "CallAnalyticsJobSummaries": { @@ -2403,7 +2403,7 @@ } ], "traits": { - "smithy.api#documentation": "

Provides more information about the custom language models you've created. You can use the information in \n this list to find a specific custom language model. You can then use the \n operation to get more information about it.

", + "smithy.api#documentation": "

Provides more information about the custom language models you've created. You can \n use the information in this list to find a specific custom language model. You can then use \n the operation to get more information about \n it.

", "smithy.api#http": { "method": "GET", "uri": "/languagemodels", @@ -2422,28 +2422,28 @@ "StatusEquals": { "target": "com.amazonaws.transcribe#ModelStatus", "traits": { - "smithy.api#documentation": "

When specified, returns only custom language models with the specified status. Language models are ordered\n by creation date, with the newest models first. If you don't specify a status, Amazon Transcribe returns all custom language\n models ordered by date.

", + "smithy.api#documentation": "

When specified, returns only custom language models with the specified status. Language\n models are ordered by creation date, with the newest models first. If you don't specify a \n status, Amazon Transcribe returns all custom language models ordered by date.

", "smithy.api#httpQuery": " StatusEquals" } }, "NameContains": { "target": "com.amazonaws.transcribe#ModelName", "traits": { - "smithy.api#documentation": "

When specified, the custom language model names returned contain the substring you've specified.

", + "smithy.api#documentation": "

When specified, the custom language model names returned contain the substring you've\n specified.

", "smithy.api#httpQuery": "NameContains" } }, "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

When included, fetches the next set of jobs if the result of the previous request was truncated.

", + "smithy.api#documentation": "

When included, fetches the next set of jobs if the result of the previous request was\n truncated.

", "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.transcribe#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of language models to return in each page of results. If there are fewer results than the \n value you specify, only the actual results are returned. If you do not specify a value, the default of 5 is used.

", + "smithy.api#documentation": "

The maximum number of language models to return in each page of results. If there are\n fewer results than the value you specify, only the actual results are returned. If you do not \n specify a value, the default of 5 is used.

", "smithy.api#httpQuery": "MaxResults" } } @@ -2455,7 +2455,7 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

The operation returns a page of jobs at a time. The maximum size\n of the list is set by the MaxResults parameter. If there are more language models in the list than the page size, Amazon Transcribe\n returns the NextPage token. Include the token in the next request to the operation to return the next page of language models.

" + "smithy.api#documentation": "

The operation returns a page of jobs at a \n time. The maximum size of the list is set by the MaxResults parameter. If there are more \n language models in the list than the page size, Amazon Transcribe returns the NextPage \n token. Include the token in the next request to the \n operation to return the next page of language \n models.

" } }, "Models": { @@ -2486,7 +2486,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists medical transcription jobs with a specified status or substring that matches their names.

", + "smithy.api#documentation": "

Lists medical transcription jobs with a specified status or substring that matches their\n names.

", "smithy.api#http": { "method": "GET", "uri": "/medicaltranscriptionjobs", @@ -2505,28 +2505,28 @@ "Status": { "target": "com.amazonaws.transcribe#TranscriptionJobStatus", "traits": { - "smithy.api#documentation": "

When specified, returns only medical transcription jobs with the specified status. Jobs are ordered by creation \n date, with the newest jobs returned first. If you don't specify a status, Amazon Transcribe Medical returns all transcription jobs ordered\n by creation date.

", + "smithy.api#documentation": "

When specified, returns only medical transcription jobs with the specified status. Jobs \n are ordered by creation date, with the newest jobs returned first. If you don't specify a status,\n Amazon Transcribe Medical returns all transcription jobs ordered by creation date.

", "smithy.api#httpQuery": "Status" } }, "JobNameContains": { "target": "com.amazonaws.transcribe#TranscriptionJobName", "traits": { - "smithy.api#documentation": "

When specified, the jobs returned in the list are limited to jobs whose name contains the specified string.

", + "smithy.api#documentation": "

When specified, the jobs returned in the list are limited to jobs whose name contains the \n specified string.

", "smithy.api#httpQuery": "JobNameContains" } }, "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

If you a receive a truncated result in the previous request of ListMedicalTranscriptionJobs, \n include NextToken to fetch the next set of jobs.

", + "smithy.api#documentation": "

If you a receive a truncated result in the previous request of\n ListMedicalTranscriptionJobs, include NextToken to fetch the \n next set of jobs.

", "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.transcribe#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of medical transcription jobs to return in each page of results. If there are fewer \n results than the value you specify, only the actual results are returned. If you do not specify a value, the default of\n 5 is used.

", + "smithy.api#documentation": "

The maximum number of medical transcription jobs to return in each page of results. If \n there are fewer results than the value you specify, only the actual results are returned. If you \n do not specify a value, the default of 5 is used.

", "smithy.api#httpQuery": "MaxResults" } } @@ -2544,7 +2544,7 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

The ListMedicalTranscriptionJobs operation returns a page of jobs at a time. The maximum \n size of the page is set by the MaxResults parameter. If the number of jobs exceeds what can fit on\n a page, Amazon Transcribe Medical returns the NextPage token. Include the token in the next request to the\n ListMedicalTranscriptionJobs operation to return in the next page of jobs.

" + "smithy.api#documentation": "

The ListMedicalTranscriptionJobs operation returns a page of jobs at a\n time. The maximum size of the page is set by the MaxResults parameter. If\n the number of jobs exceeds what can fit on a page, Amazon Transcribe Medical returns the \n NextPage token. Include the token in the next request to the\n ListMedicalTranscriptionJobs operation to return in the next page of \n jobs.

" } }, "MedicalTranscriptionJobSummaries": { @@ -2575,7 +2575,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of vocabularies that match the specified criteria. If you don't enter a value in any of the request\n parameters, returns the entire list of vocabularies.

", + "smithy.api#documentation": "

Returns a list of vocabularies that match the specified criteria. If you don't enter a value in\n any of the request parameters, returns the entire list of vocabularies.

", "smithy.api#http": { "method": "GET", "uri": "/medicalvocabularies", @@ -2594,28 +2594,28 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

If the result of your previous request to ListMedicalVocabularies was truncated, include the \n NextToken to fetch the next set of vocabularies.

", + "smithy.api#documentation": "

If the result of your previous request to ListMedicalVocabularies was\n truncated, include the NextToken to fetch the next set of vocabularies.

", "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.transcribe#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of vocabularies to return in each page of results. If there are fewer results than the \n value you specify, only the actual results are returned. If you do not specify a value, the default of 5 is used.

", + "smithy.api#documentation": "

The maximum number of vocabularies to return in each page of results. If there are fewer \n results than the value you specify, only the actual results are returned. If you do not specify \n a value, the default of 5 is used.

", "smithy.api#httpQuery": "MaxResults" } }, "StateEquals": { "target": "com.amazonaws.transcribe#VocabularyState", "traits": { - "smithy.api#documentation": "

When specified, returns only vocabularies with the VocabularyState equal to the specified \n vocabulary state. Use this field to see which vocabularies are ready for your medical transcription jobs.

", + "smithy.api#documentation": "

When specified, returns only vocabularies with the VocabularyState equal\n to the specified vocabulary state. Use this field to see which vocabularies are ready for your\n medical transcription jobs.

", "smithy.api#httpQuery": "StateEquals" } }, "NameContains": { "target": "com.amazonaws.transcribe#VocabularyName", "traits": { - "smithy.api#documentation": "

Returns vocabularies whose names contain the specified string. The search is not case sensitive.\n ListMedicalVocabularies returns both \"vocabularyname\" and \n \"VocabularyName\".

", + "smithy.api#documentation": "

Returns vocabularies whose names contain the specified string. The search is not case \n sensitive. ListMedicalVocabularies returns both \n \"vocabularyname\" and \"VocabularyName\".

", "smithy.api#httpQuery": "NameContains" } } @@ -2633,7 +2633,7 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

The ListMedicalVocabularies operation returns a page of vocabularies at a time. You set the\n maximum number of vocabularies to return on a page with the MaxResults parameter. If there \n are more jobs in the list will fit on a page, Amazon Transcribe Medical returns the NextPage token. To return the next \n page of vocabularies, include the token in the next request to the ListMedicalVocabularies \n operation .

" + "smithy.api#documentation": "

The ListMedicalVocabularies operation returns a page of vocabularies at a\n time. You set the maximum number of vocabularies to return on a page with the\n MaxResults parameter. If there are more jobs in the list will fit on a page, \n Amazon Transcribe Medical returns the NextPage token. To return the next page of vocabularies, \n include the token in the next request to the ListMedicalVocabularies \n operation .

" } }, "Vocabularies": { @@ -2744,28 +2744,28 @@ "Status": { "target": "com.amazonaws.transcribe#TranscriptionJobStatus", "traits": { - "smithy.api#documentation": "

When specified, returns only transcription jobs with the specified status. Jobs are ordered by creation date, with\n the newest jobs returned first. If you don’t specify a status, Amazon Transcribe returns all transcription jobs ordered by creation \n date.

", + "smithy.api#documentation": "

When specified, returns only transcription jobs with the specified status. Jobs are ordered\n by creation date, with the newest jobs returned first. If you don’t specify a status, Amazon Transcribe \n returns all transcription jobs ordered by creation date.

", "smithy.api#httpQuery": "Status" } }, "JobNameContains": { "target": "com.amazonaws.transcribe#TranscriptionJobName", "traits": { - "smithy.api#documentation": "

When specified, the jobs returned in the list are limited to jobs whose name contains the specified string.

", + "smithy.api#documentation": "

When specified, the jobs returned in the list are limited to jobs whose name contains the\n specified string.

", "smithy.api#httpQuery": "JobNameContains" } }, "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

If the result of the previous request to ListTranscriptionJobs is truncated, include the \n NextToken to fetch the next set of jobs.

", + "smithy.api#documentation": "

If the result of the previous request to ListTranscriptionJobs is truncated, \n include the NextToken to fetch the next set of jobs.

", "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.transcribe#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of jobs to return in each page of results. If there are fewer results than the value you\n specify, only the actual results are returned. If you do not specify a value, the default of 5 is used.

", + "smithy.api#documentation": "

The maximum number of jobs to return in each page of results. If there are fewer results\n than the value you specify, only the actual results are returned. If you do not specify a value,\n the default of 5 is used.

", "smithy.api#httpQuery": "MaxResults" } } @@ -2783,7 +2783,7 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

The ListTranscriptionJobs operation returns a page of jobs at a time. The maximum size of the \n page is set by the MaxResults parameter. If there are more jobs in the list than the page size, Amazon Transcribe \n returns the NextPage token. Include the token in the next request to the \n ListTranscriptionJobs operation to return in the next page of jobs.

" + "smithy.api#documentation": "

The ListTranscriptionJobs operation returns a page of jobs at a time. The\n maximum size of the page is set by the MaxResults parameter. If there are\n more jobs in the list than the page size, Amazon Transcribe returns the NextPage token. \n Include the token in the next request to the ListTranscriptionJobs operation to \n return in the next page of jobs.

" } }, "TranscriptionJobSummaries": { @@ -2814,7 +2814,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of vocabularies that match the specified criteria. If no criteria are specified, returns the entire list \n of vocabularies.

", + "smithy.api#documentation": "

Returns a list of vocabularies that match the specified criteria. If no criteria are specified, \n returns the entire list of vocabularies.

", "smithy.api#http": { "method": "GET", "uri": "/vocabularies", @@ -2833,28 +2833,28 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

If the result of the previous request to ListVocabularies was truncated, include the \n NextToken to fetch the next set of jobs.

", + "smithy.api#documentation": "

If the result of the previous request to ListVocabularies was truncated, \n include the NextToken to fetch the next set of jobs.

", "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.transcribe#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of vocabularies to return in each page of results. If there are fewer results than the \n value you specify, only the actual results are returned. If you do not specify a value, the default of 5 is used.

", + "smithy.api#documentation": "

The maximum number of vocabularies to return in each page of results. If there are fewer \n results than the value you specify, only the actual results are returned. If you do not specify a \n value, the default of 5 is used.

", "smithy.api#httpQuery": "MaxResults" } }, "StateEquals": { "target": "com.amazonaws.transcribe#VocabularyState", "traits": { - "smithy.api#documentation": "

When specified, only returns vocabularies with the VocabularyState field equal to the \n specified state.

", + "smithy.api#documentation": "

When specified, only returns vocabularies with the VocabularyState field \n equal to the specified state.

", "smithy.api#httpQuery": "StateEquals" } }, "NameContains": { "target": "com.amazonaws.transcribe#VocabularyName", "traits": { - "smithy.api#documentation": "

When specified, the vocabularies returned in the list are limited to vocabularies whose name contains the \n specified string. The search is not case sensitive, ListVocabularies returns both \"vocabularyname\" \n and \"VocabularyName\" in the response list.

", + "smithy.api#documentation": "

When specified, the vocabularies returned in the list are limited to vocabularies whose \n name contains the specified string. The search is not case sensitive, \n ListVocabularies returns both \"vocabularyname\" and \"VocabularyName\" in the\n response list.

", "smithy.api#httpQuery": "NameContains" } } @@ -2872,13 +2872,13 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

The ListVocabularies operation returns a page of vocabularies at a time. The maximum size of \n the page is set in the MaxResults parameter. If there are more jobs in the list than will fit on the \n page, Amazon Transcribe returns the NextPage token. To return in the next page of jobs, include the token in the\n next request to the ListVocabularies operation.

" + "smithy.api#documentation": "

The ListVocabularies operation returns a page of vocabularies at a time. \n The maximum size of the page is set in the MaxResults parameter. If there are\n more jobs in the list than will fit on the page, Amazon Transcribe returns the NextPage token.\n To return in the next page of jobs, include the token in the next request to the\n ListVocabularies operation.

" } }, "Vocabularies": { "target": "com.amazonaws.transcribe#Vocabularies", "traits": { - "smithy.api#documentation": "

A list of objects that describe the vocabularies that match the search criteria in the request.

" + "smithy.api#documentation": "

A list of objects that describe the vocabularies that match the search criteria in the\n request.

" } } } @@ -2922,21 +2922,21 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

If the result of the previous request to ListVocabularyFilters was truncated, include the \n NextToken to fetch the next set of collections.

", + "smithy.api#documentation": "

If the result of the previous request to ListVocabularyFilters was truncated, \n include the NextToken to fetch the next set of collections.

", "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.transcribe#MaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of filters to return in each page of results. If there are fewer results than the value you\n specify, only the actual results are returned. If you do not specify a value, the default of 5 is used.

", + "smithy.api#documentation": "

The maximum number of filters to return in each page of results. If there are fewer \n results than the value you specify, only the actual results are returned. If you do not specify \n a value, the default of 5 is used.

", "smithy.api#httpQuery": "MaxResults" } }, "NameContains": { "target": "com.amazonaws.transcribe#VocabularyFilterName", "traits": { - "smithy.api#documentation": "

Filters the response so that it only contains vocabulary filters whose name contains the specified string.

", + "smithy.api#documentation": "

Filters the response so that it only contains vocabulary filters whose name contains the \n specified string.

", "smithy.api#httpQuery": "NameContains" } } @@ -2948,13 +2948,13 @@ "NextToken": { "target": "com.amazonaws.transcribe#NextToken", "traits": { - "smithy.api#documentation": "

The ListVocabularyFilters operation returns a page of collections at a time. The maximum size \n of the page is set by the MaxResults parameter. If there are more jobs in the list than the page size, \n Amazon Transcribe returns the NextPage token. Include the token in the next request to the\n ListVocabularyFilters operation to return in the next page of jobs.

" + "smithy.api#documentation": "

The ListVocabularyFilters operation returns a page of collections at a time.\n The maximum size of the page is set by the MaxResults parameter. If there \n are more jobs in the list than the page size, Amazon Transcribe returns the NextPage token.\n Include the token in the next request to the ListVocabularyFilters operation to \n return in the next page of jobs.

" } }, "VocabularyFilters": { "target": "com.amazonaws.transcribe#VocabularyFilters", "traits": { - "smithy.api#documentation": "

The list of vocabulary filters. It contains at most MaxResults number of filters. If there are more\n filters, call the ListVocabularyFilters operation again with the NextToken parameter \n in the request set to the value of the NextToken field in the response.

" + "smithy.api#documentation": "

The list of vocabulary filters. It contains at most MaxResults number of \n filters. If there are more filters, call the ListVocabularyFilters operation again \n with the NextToken parameter in the request set to the value of the\n NextToken field in the response.

" } } } @@ -2995,13 +2995,13 @@ "MediaFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The S3 object location of the input media file. The URI must be in the same region as the API endpoint that you \n are calling. The general form is:

\n \n

For example:

\n \n \n

For more information about S3 object names, see Object Keys in the Amazon S3 \n Developer Guide.

" + "smithy.api#documentation": "

The S3 object location of the input media file. The URI must be in the same region as \n the API endpoint that you are calling. The general form is:

\n

\n s3:////\n

\n

For example:

\n

\n s3://AWSDOC-EXAMPLE-BUCKET/example.mp4\n

\n

\n s3://AWSDOC-EXAMPLE-BUCKET/mediadocs/example.mp4\n

\n

For more information about S3 object names, see Object Keys in the\n Amazon S3 Developer Guide.

" } }, "RedactedMediaFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The S3 object location for your redacted output media file. This is only supported for call analytics jobs.

" + "smithy.api#documentation": "

The S3 object location for your redacted output media file. This is only supported for \n call analytics jobs.

" } } }, @@ -3071,7 +3071,7 @@ "TranscriptFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The S3 object location of the medical transcript.

\n

Use this URI to access the medical transcript. This URI points to the S3 bucket you created to store the medical\n transcript.

" + "smithy.api#documentation": "

The S3 object location of the medical transcript.

\n

Use this URI to access the medical transcript. This URI points to the S3 bucket you created \n to store the medical transcript.

" } } }, @@ -3097,13 +3097,13 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code for the language spoken in the source audio file. US English (en-US) is the only supported\n language for medical transcriptions. Any other value you enter for language code results in a \n BadRequestException error.

" + "smithy.api#documentation": "

The language code for the language spoken in the source audio file. US English (en-US) \n is the only supported language for medical transcriptions. Any other value you enter for \n language code results in a BadRequestException error.

" } }, "MediaSampleRateHertz": { "target": "com.amazonaws.transcribe#MediaSampleRateHertz", "traits": { - "smithy.api#documentation": "

The sample rate, in Hertz, of the source audio containing medical information.

\n

If you don't specify the sample rate, Amazon Transcribe Medical determines it for you. If you choose to specify the sample rate, it \n must match the rate detected by Amazon Transcribe Medical. In most cases, you should leave the \n MedicalMediaSampleHertz blank and let Amazon Transcribe Medical determine the sample rate.

" + "smithy.api#documentation": "

The sample rate, in Hertz, of the source audio containing medical information.

\n

If you don't specify the sample rate, Amazon Transcribe Medical determines it for you. If you choose to \n specify the sample rate, it must match the rate detected by Amazon Transcribe Medical.

" } }, "MediaFormat": { @@ -3118,7 +3118,7 @@ "Transcript": { "target": "com.amazonaws.transcribe#MedicalTranscript", "traits": { - "smithy.api#documentation": "

An object that contains the MedicalTranscript. The MedicalTranscript contains the\n TranscriptFileUri.

" + "smithy.api#documentation": "

An object that contains the MedicalTranscript. The\n MedicalTranscript contains the TranscriptFileUri.

" } }, "StartTime": { @@ -3142,7 +3142,7 @@ "FailureReason": { "target": "com.amazonaws.transcribe#FailureReason", "traits": { - "smithy.api#documentation": "

If the TranscriptionJobStatus field is FAILED, this field contains information \n about why the job failed.

\n

The FailureReason field contains one of the following values:

\n " + "smithy.api#documentation": "

If the TranscriptionJobStatus field is FAILED, this field \n contains information about why the job failed.

\n

The FailureReason field contains one of the following values:

\n " } }, "Settings": { @@ -3154,19 +3154,19 @@ "ContentIdentificationType": { "target": "com.amazonaws.transcribe#MedicalContentIdentificationType", "traits": { - "smithy.api#documentation": "

Shows the type of content that you've configured Amazon Transcribe Medical to identify in a transcription job. If the value is \n PHI, you've configured the job to identify personal health information (PHI) in the transcription output.

" + "smithy.api#documentation": "

Shows the type of content that you've configured Amazon Transcribe Medical to identify in a transcription\n job. If the value is PHI, you've configured the job to identify personal health\n information (PHI) in the transcription output.

" } }, "Specialty": { "target": "com.amazonaws.transcribe#Specialty", "traits": { - "smithy.api#documentation": "

The medical specialty of any clinicians providing a dictation or having a conversation. Refer to Transcribing a medical conversationfor a \n list of supported specialties.

" + "smithy.api#documentation": "

The medical specialty of any clinicians providing a dictation or having a conversation. \n Refer to Transcribing a medical\n conversationfor a list of supported specialties.

" } }, "Type": { "target": "com.amazonaws.transcribe#Type", "traits": { - "smithy.api#documentation": "

The type of speech in the transcription job. CONVERSATION is generally used for patient-physician\n dialogues. DICTATION is the setting for physicians speaking their notes after seeing a patient. For more\n information, see What is\n Amazon Transcribe Medical?.

" + "smithy.api#documentation": "

The type of speech in the transcription job. CONVERSATION is generally\n used for patient-physician dialogues. DICTATION is the setting for physicians\n speaking their notes after seeing a patient. For more information, see \n What \n is Amazon Transcribe Medical?.

" } }, "Tags": { @@ -3228,25 +3228,25 @@ "FailureReason": { "target": "com.amazonaws.transcribe#FailureReason", "traits": { - "smithy.api#documentation": "

If the TranscriptionJobStatus field is FAILED, a description of the error.

" + "smithy.api#documentation": "

If the TranscriptionJobStatus field is FAILED, a description \n of the error.

" } }, "OutputLocationType": { "target": "com.amazonaws.transcribe#OutputLocationType", "traits": { - "smithy.api#documentation": "

Indicates the location of the transcription job's output. This field must be the path of an S3 bucket; if you don't \n already have an S3 bucket, one is created based on the path you add.

" + "smithy.api#documentation": "

Indicates the location of the transcription job's output. This field must be the path of an\n S3 bucket; if you don't already have an S3 bucket, one is created based on the path you \n add.

" } }, "Specialty": { "target": "com.amazonaws.transcribe#Specialty", "traits": { - "smithy.api#documentation": "

The medical specialty of the transcription job. Refer to Transcribing a medical conversationfor a \n list of supported specialties.

" + "smithy.api#documentation": "

The medical specialty of the transcription job. Refer to Transcribing a medical\n conversationfor a list of supported specialties.

" } }, "ContentIdentificationType": { "target": "com.amazonaws.transcribe#MedicalContentIdentificationType", "traits": { - "smithy.api#documentation": "

Shows the type of information you've configured Amazon Transcribe Medical to identify in a transcription job. If the value is \n PHI, you've configured the transcription job to identify personal health information (PHI).

" + "smithy.api#documentation": "

Shows the type of information you've configured Amazon Transcribe Medical to identify in a transcription job.\n If the value is PHI, you've configured the transcription job to identify personal\n health information (PHI).

" } }, "Type": { @@ -3266,31 +3266,31 @@ "ShowSpeakerLabels": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Determines whether the transcription job uses speaker recognition to identify different speakers in the input \n audio. Speaker recognition labels individual speakers in the audio file. If you set the ShowSpeakerLabels\n field to true, you must also set the maximum number of speaker labels in the MaxSpeakerLabels\n field.

\n

You can't set both ShowSpeakerLabels and ChannelIdentification in the same\n request. If you set both, your request returns a BadRequestException.

" + "smithy.api#documentation": "

Determines whether the transcription job uses speaker recognition to identify different \n speakers in the input audio. Speaker recognition labels individual speakers in the audio file. \n If you set the ShowSpeakerLabels field to true, you must also set the \n maximum number of speaker labels in the MaxSpeakerLabels field.

\n

You can't set both ShowSpeakerLabels and \n ChannelIdentification in the same request. If you set both, your request \n returns a BadRequestException.

" } }, "MaxSpeakerLabels": { "target": "com.amazonaws.transcribe#MaxSpeakers", "traits": { - "smithy.api#documentation": "

The maximum number of speakers to identify in the input audio. If there are more speakers in the audio than this\n number, multiple speakers are identified as a single speaker. If you specify the MaxSpeakerLabels field, \n you must set the ShowSpeakerLabels field to true.

" + "smithy.api#documentation": "

The maximum number of speakers to identify in the input audio. If there are more \n speakers in the audio than this number, multiple speakers are identified as a single speaker. \n If you specify the MaxSpeakerLabels field, you must set the\n ShowSpeakerLabels field to true.

" } }, "ChannelIdentification": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Instructs Amazon Transcribe Medical to process each audio channel separately and then merge the transcription output of each \n channel into a single transcription.

\n

Amazon Transcribe Medical also produces a transcription of each item detected on an audio channel, including the start time and end \n time of the item and alternative transcriptions of item. The alternative transcriptions also come with confidence scores \n provided by Amazon Transcribe Medical.

\n

You can't set both ShowSpeakerLabels and ChannelIdentification in the same \n request. If you set both, your request returns a BadRequestException\n

" + "smithy.api#documentation": "

Instructs Amazon Transcribe Medical to process each audio channel separately and then merge the \n transcription output of each channel into a single transcription.

\n

Amazon Transcribe Medical also produces a transcription of each item detected on an audio channel,\n including the start time and end time of the item and alternative transcriptions of item. \n The alternative transcriptions also come with confidence scores provided by Amazon Transcribe Medical.

\n

You can't set both ShowSpeakerLabels and \n ChannelIdentification in the same request. If you set both, your request \n returns a BadRequestException.

" } }, "ShowAlternatives": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Determines whether alternative transcripts are generated along with the transcript that has the highest confidence. \n If you set ShowAlternatives field to true, you must also set the maximum number of alternatives to\n return in the MaxAlternatives field.

" + "smithy.api#documentation": "

Determines whether alternative transcripts are generated along with the transcript that \n has the highest confidence. If you set ShowAlternatives field to true, you must\n also set the maximum number of alternatives to return in the MaxAlternatives\n field.

" } }, "MaxAlternatives": { "target": "com.amazonaws.transcribe#MaxAlternatives", "traits": { - "smithy.api#documentation": "

The maximum number of alternatives that you tell the service to return. If you specify the\n MaxAlternatives field, you must set the ShowAlternatives field to true.

" + "smithy.api#documentation": "

The maximum number of alternatives that you tell the service to return. If you specify\n the MaxAlternatives field, you must set the ShowAlternatives \n field to true.

" } }, "VocabularyName": { @@ -3301,7 +3301,7 @@ } }, "traits": { - "smithy.api#documentation": "

Optional settings for the StartMedicalTranscriptionJob\n operation.

" + "smithy.api#documentation": "

Optional settings for the StartMedicalTranscriptionJob operation.

" } }, "com.amazonaws.transcribe#ModelName": { @@ -3385,13 +3385,13 @@ "AbsoluteTimeRange": { "target": "com.amazonaws.transcribe#AbsoluteTimeRange", "traits": { - "smithy.api#documentation": "

An object you can use to specify a time range (in milliseconds) for when no one is talking. For example, you \n could specify a time period between the 30,000 millisecond mark and the 45,000 millisecond mark. You could also \n specify the time period as the first 15,000 milliseconds or the last 15,000 milliseconds.

" + "smithy.api#documentation": "

An object you can use to specify a time range (in milliseconds) for when no one is\n talking. For example, you could specify a time period between the 30,000 millisecond mark\n and the 45,000 millisecond mark. You could also specify the time period as the first 15,000\n milliseconds or the last 15,000 milliseconds.

" } }, "RelativeTimeRange": { "target": "com.amazonaws.transcribe#RelativeTimeRange", "traits": { - "smithy.api#documentation": "

An object that allows percentages to specify the proportion of the call where there was silence. For example, you \n can specify the first half of the call. You can also specify the period of time between halfway through to three-quarters \n of the way through the call. Because the length of conversation can vary between calls, you can apply relative time\n ranges across all calls.

" + "smithy.api#documentation": "

An object that allows percentages to specify the proportion of the call where there\n was silence. For example, you can specify the first half of the call. You can also specify \n the period of time between halfway through to three-quarters of the way through the call. \n Because the length of conversation can vary between calls, you can apply relative time\n ranges across all calls.

" } }, "Negate": { @@ -3402,7 +3402,7 @@ } }, "traits": { - "smithy.api#documentation": "

An object that enables you to configure your category to be applied to call analytics jobs where either the\n customer or agent was interrupted.

" + "smithy.api#documentation": "

An object that enables you to configure your category to be applied to call analytics \n jobs where either the customer or agent was interrupted.

" } }, "com.amazonaws.transcribe#NotFoundException": { @@ -3526,30 +3526,30 @@ "StartPercentage": { "target": "com.amazonaws.transcribe#Percentage", "traits": { - "smithy.api#documentation": "

A value that indicates the percentage of the beginning of the time range. To set a relative time range, you must \n specify a start percentage and an end percentage. For example, if you specify the following values:

\n \n

This looks at the time range starting from 10% of the way into the call to 50% of the way through the call. For \n a call that lasts 100,000 milliseconds, this example range would apply from the 10,000 millisecond mark to the\n 50,000 millisecond mark.

" + "smithy.api#documentation": "

A value that indicates the percentage of the beginning of the time range. To set a\n relative time range, you must specify a start percentage and an end percentage. For \n example, if you specify the following values:

\n \n

This looks at the time range starting from 10% of the way into the call to 50% of \n the way through the call. For a call that lasts 100,000 milliseconds, this example range \n would apply from the 10,000 millisecond mark to the 50,000 millisecond mark.

" } }, "EndPercentage": { "target": "com.amazonaws.transcribe#Percentage", "traits": { - "smithy.api#documentation": "

A value that indicates the percentage of the end of the time range. To set a relative time range, you must specify\n a start percentage and an end percentage. For example, if you specify the following values:

\n \n

This looks at the time range starting from 10% of the way into the call to 50% of the way through the call. For a \n call that lasts 100,000 milliseconds, this example range would apply from the 10,000 millisecond mark to the 50,000 \n millisecond mark.

" + "smithy.api#documentation": "

A value that indicates the percentage of the end of the time range. To set a relative\n time range, you must specify a start percentage and an end percentage. For example, if\n you specify the following values:

\n \n

This looks at the time range starting from 10% of the way into the call to 50% of the \n way through the call. For a call that lasts 100,000 milliseconds, this example range would \n apply from the 10,000 millisecond mark to the 50,000 millisecond mark.

" } }, "First": { "target": "com.amazonaws.transcribe#Percentage", "traits": { - "smithy.api#documentation": "

A range that takes the portion of the call up to the time in milliseconds set by the value that you've specified. For \n example, if you specify 120000, the time range is set for the first 120,000 milliseconds of the call.

" + "smithy.api#documentation": "

A range that takes the portion of the call up to the time in milliseconds set by the \n value that you've specified. For example, if you specify 120000, the time \n range is set for the first 120,000 milliseconds of the call.

" } }, "Last": { "target": "com.amazonaws.transcribe#Percentage", "traits": { - "smithy.api#documentation": "

A range that takes the portion of the call from the time in milliseconds set by the value that you've specified to\n the end of the call. For example, if you specify 120000, the time range is set for the last 120,000 \n milliseconds of the call.

" + "smithy.api#documentation": "

A range that takes the portion of the call from the time in milliseconds set by the\n value that you've specified to the end of the call. For example, if you specify \n 120000, the time range is set for the last 120,000 milliseconds of the \n call.

" } } }, "traits": { - "smithy.api#documentation": "

An object that allows percentages to specify the proportion of the call where you would like to apply a filter. For\n example, you can specify the first half of the call. You can also specify the period of time between halfway through to\n three-quarters of the way through the call. Because the length of conversation can vary between calls, you can apply \n relative time ranges across all calls.

" + "smithy.api#documentation": "

An object that allows percentages to specify the proportion of the call where you \n would like to apply a filter. For example, you can specify the first half of the call. You can\n also specify the period of time between halfway through to three-quarters of the way \n through the call. Because the length of conversation can vary between calls, you can apply \n relative time ranges across all calls.

" } }, "com.amazonaws.transcribe#Rule": { @@ -3570,7 +3570,7 @@ "TranscriptFilter": { "target": "com.amazonaws.transcribe#TranscriptFilter", "traits": { - "smithy.api#documentation": "

A condition that catches particular words or phrases based on a exact match. For example, if you set the\n phrase \"I want to speak to the manager\", only that exact phrase will be returned.

" + "smithy.api#documentation": "

A condition that catches particular words or phrases based on a exact match. For \n example, if you set the phrase \"I want to speak to the manager\", only that exact phrase will\n be returned.

" } }, "SentimentFilter": { @@ -3581,7 +3581,7 @@ } }, "traits": { - "smithy.api#documentation": "

A condition in the call between the customer and the agent that you want to filter for.

" + "smithy.api#documentation": "

A condition in the call between the customer and the agent that you want to filter \n for.

" } }, "com.amazonaws.transcribe#RuleList": { @@ -3602,7 +3602,7 @@ "Sentiments": { "target": "com.amazonaws.transcribe#SentimentValueList", "traits": { - "smithy.api#documentation": "

An array that enables you to specify sentiments for the customer or agent. You can specify one or more values.

", + "smithy.api#documentation": "

An array that enables you to specify sentiments for the customer or agent. You can \n specify one or more values.

", "smithy.api#required": {} } }, @@ -3627,12 +3627,12 @@ "Negate": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Set to TRUE to look for sentiments that weren't specified in the request.

" + "smithy.api#documentation": "

Set to TRUE to look for sentiments that weren't specified in the request.

" } } }, "traits": { - "smithy.api#documentation": "

An object that enables you to specify a particular customer or agent sentiment. If at least 50 percent of the \n conversation turns (the back-and-forth between two speakers) in a specified time period match the specified \n sentiment, Amazon Transcribe will consider the sentiment a match.

" + "smithy.api#documentation": "

An object that enables you to specify a particular customer or agent sentiment. If at \n least 50 percent of the conversation turns (the back-and-forth between two speakers) in a \n specified time period match the specified sentiment, Amazon Transcribe will consider the sentiment a\n match.

" } }, "com.amazonaws.transcribe#SentimentValue": { @@ -3681,43 +3681,43 @@ "ShowSpeakerLabels": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Determines whether the transcription job uses speaker recognition to identify different speakers in the input \n audio. Speaker recognition labels individual speakers in the audio file. If you set the ShowSpeakerLabels\n field to true, you must also set the maximum number of speaker labels MaxSpeakerLabels field.

\n

You can't set both ShowSpeakerLabels and ChannelIdentification in the same \n request. If you set both, your request returns a BadRequestException.

" + "smithy.api#documentation": "

Determines whether the transcription job uses speaker recognition to identify different \n speakers in the input audio. Speaker recognition labels individual speakers in the audio file. \n If you set the ShowSpeakerLabels field to true, you must also set the\n maximum number of speaker labels MaxSpeakerLabels field.

\n

You can't set both ShowSpeakerLabels and \n ChannelIdentification in the same request. If you set both, your request returns\n a BadRequestException.

" } }, "MaxSpeakerLabels": { "target": "com.amazonaws.transcribe#MaxSpeakers", "traits": { - "smithy.api#documentation": "

The maximum number of speakers to identify in the input audio. If there are more speakers in the audio than\n this number, multiple speakers are identified as a single speaker. If you specify the MaxSpeakerLabels\n field, you must set the ShowSpeakerLabels field to true.

" + "smithy.api#documentation": "

The maximum number of speakers to identify in the input audio. If there are more \n speakers in the audio than this number, multiple speakers are identified as a single speaker. \n If you specify the MaxSpeakerLabels field, you must set the\n ShowSpeakerLabels field to true.

" } }, "ChannelIdentification": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Instructs Amazon Transcribe to process each audio channel separately and then merge the transcription output of each \n channel into a single transcription.

\n

Amazon Transcribe also produces a transcription of each item detected on an audio channel, including the start time and \n end time of the item and alternative transcriptions of the item including the confidence that Amazon Transcribe has in the\n transcription.

\n

You can't set both ShowSpeakerLabels and ChannelIdentification in the same \n request. If you set both, your request returns a BadRequestException.

" + "smithy.api#documentation": "

Instructs Amazon Transcribe to process each audio channel separately and then merge the \n transcription output of each channel into a single transcription.

\n

Amazon Transcribe also produces a transcription of each item detected on an audio channel, \n including the start time and end time of the item and alternative transcriptions of the item\n including the confidence that Amazon Transcribe has in the transcription.

\n

You can't set both ShowSpeakerLabels and \n ChannelIdentification in the same request. If you set both, your request \n returns a BadRequestException.

" } }, "ShowAlternatives": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Determines whether the transcription contains alternative transcriptions. If you set the \n ShowAlternatives field to true, you must also set the maximum number of alternatives to return in the\n MaxAlternatives field.

" + "smithy.api#documentation": "

Determines whether the transcription contains alternative transcriptions. If you set the \n ShowAlternatives field to true, you must also set the maximum number of\n alternatives to return in the MaxAlternatives field.

" } }, "MaxAlternatives": { "target": "com.amazonaws.transcribe#MaxAlternatives", "traits": { - "smithy.api#documentation": "

The number of alternative transcriptions that the service should return. If you specify the\n MaxAlternatives field, you must set the ShowAlternatives field to true.

" + "smithy.api#documentation": "

The number of alternative transcriptions that the service should return. If you specify \n the MaxAlternatives field, you must set the ShowAlternatives \n field to true.

" } }, "VocabularyFilterName": { "target": "com.amazonaws.transcribe#VocabularyFilterName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary filter to use when transcribing the audio. The filter that you specify must have the\n same language code as the transcription job.

" + "smithy.api#documentation": "

The name of the vocabulary filter to use when transcribing the audio. The filter that you\n specify must have the same language code as the transcription job.

" } }, "VocabularyFilterMethod": { "target": "com.amazonaws.transcribe#VocabularyFilterMethod", "traits": { - "smithy.api#documentation": "

Set to mask to remove filtered text from the transcript and replace it with three asterisks (\"***\") \n as placeholder text. Set to remove to remove filtered text from the transcript without using \n placeholder text. Set to tag to mark the word in the transcription output that matches the\n vocabulary filter. When you set the filter method to tag, the words matching your vocabulary filter \n are not masked or removed.

" + "smithy.api#documentation": "

Set to mask to remove filtered text from the transcript and replace it \n with three asterisks (\"***\") as placeholder text. Set to remove to remove \n filtered text from the transcript without using placeholder text. Set to tag to\n mark the word in the transcription output that matches the vocabulary filter. When you set \n the filter method to tag, the words matching your vocabulary filter are not\n masked or removed.

" } } }, @@ -3759,7 +3759,7 @@ } ], "traits": { - "smithy.api#documentation": "

Starts an asynchronous analytics job that not only transcribes the audio recording of a caller and agent, but \n also returns additional insights. These insights include how quickly or loudly the caller or agent was speaking. To\n retrieve additional insights with your analytics jobs, create categories. A category is a way to classify analytics jobs \n based on attributes, such as a customer's sentiment or a particular phrase being used during the call. For more\n information, see the operation.

", + "smithy.api#documentation": "

Starts an asynchronous analytics job that not only transcribes the audio recording of a \n caller and agent, but also returns additional insights. These insights include how quickly or \n loudly the caller or agent was speaking. To retrieve additional insights with your analytics \n jobs, create categories. A category is a way to classify analytics jobs based on attributes, \n such as a customer's sentiment or a particular phrase being used during the call. For more\n information, see the operation.

", "smithy.api#http": { "method": "PUT", "uri": "/callanalyticsjobs/{CallAnalyticsJobName}", @@ -3773,7 +3773,7 @@ "CallAnalyticsJobName": { "target": "com.amazonaws.transcribe#CallAnalyticsJobName", "traits": { - "smithy.api#documentation": "

The name of the call analytics job. You can't use the string \".\" or \"..\" by themselves as the job name. The name\n must also be unique within an Amazon Web Services account. If you try to create a call analytics job with the same \n name as a previous call analytics job, you get a ConflictException error.

", + "smithy.api#documentation": "

The name of the call analytics job. You can't use the string \".\" or \"..\" by themselves as\n the job name. The name must also be unique within an Amazon Web Services account. If you \n try to create a call analytics job with the same name as a previous call analytics job, you get\n a ConflictException error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3787,32 +3787,32 @@ "OutputLocation": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The Amazon S3 location where the output of the call analytics job is stored. You can provide the following \n location types to store the output of call analytics job:

\n \n

You can specify an Amazon Web Services Key Management Service (KMS) key to encrypt the output of our \n analytics job using the OutputEncryptionKMSKeyId parameter. If you don't specify a KMS key, \n Amazon Transcribe uses the default Amazon S3 key for server-side encryption of the analytics job output that is placed in your\n S3 bucket.

" + "smithy.api#documentation": "

The Amazon S3 location where the output of the call analytics job is stored. You can \n provide the following location types to store the output of call analytics job:

\n \n

You can specify an Amazon Web Services Key Management Service (KMS) key to encrypt \n the output of our analytics job using the OutputEncryptionKMSKeyId parameter. \n If you don't specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for server-side encryption \n of the analytics job output that is placed in your S3 bucket.

" } }, "OutputEncryptionKMSKeyId": { "target": "com.amazonaws.transcribe#KMSKeyId", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Key Management Service key used to encrypt \n the output of the call analytics job. The user calling the operation must\n have permission to use the specified KMS key.

\n

You use either of the following to identify an Amazon Web Services KMS key in the current account:

\n \n

You can use either of the following to identify a KMS key in the current account or another account:

\n \n

If you don't specify an encryption key, the output of the call analytics job is encrypted with the default Amazon \n S3 key (SSE-S3).

\n

If you specify a KMS key to encrypt your output, you must also specify an output location in the \n OutputLocation parameter.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Key Management Service \n key used to encrypt the output of the call analytics job. The user calling the \n operation must have permission to use the \n specified KMS key.

\n

You use either of the following to identify an Amazon Web Services KMS key in the current\n account:

\n \n

You can use either of the following to identify a KMS key in the current account or \n another account:

\n \n

If you don't specify an encryption key, the output of the call analytics job is encrypted \n with the default Amazon S3 key (SSE-S3).

\n

If you specify a KMS key to encrypt your output, you must also specify an output location \n in the OutputLocation parameter.

" } }, "DataAccessRoleArn": { "target": "com.amazonaws.transcribe#DataAccessRoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a role that has access to the S3 bucket that contains your input files. \n Amazon Transcribe assumes this role to read queued audio files. If you have specified an output S3 bucket for your transcription \n results, this role should have access to the output bucket as well.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a role that has access to the S3 bucket that\n contains your input files. Amazon Transcribe assumes this role to read queued audio files. If you have \n specified an output S3 bucket for your transcription results, this role should have access to \n the output bucket as well.

", "smithy.api#required": {} } }, "Settings": { "target": "com.amazonaws.transcribe#CallAnalyticsJobSettings", "traits": { - "smithy.api#documentation": "

A Settings object that provides optional settings for a call analytics job.

" + "smithy.api#documentation": "

A Settings object that provides optional settings for a call analytics \n job.

" } }, "ChannelDefinitions": { "target": "com.amazonaws.transcribe#ChannelDefinitions", "traits": { - "smithy.api#documentation": "

When you start a call analytics job, you must pass an array that maps the agent and the customer to specific \n audio channels. The values you can assign to a channel are 0 and 1. The agent and the customer must each have\n their own channel. You can't assign more than one channel to an agent or customer.

" + "smithy.api#documentation": "

When you start a call analytics job, you must pass an array that maps the agent and the\n customer to specific audio channels. The values you can assign to a channel are 0 and 1. The \n agent and the customer must each have their own channel. You can't assign more than one \n channel to an agent or customer.

" } } } @@ -3865,7 +3865,7 @@ "MedicalTranscriptionJobName": { "target": "com.amazonaws.transcribe#TranscriptionJobName", "traits": { - "smithy.api#documentation": "

The name of the medical transcription job. You can't use the strings \".\" or \"..\" \n by themselves as the job name. The name must also be unique within an Amazon Web Services account. If you try to \n create a medical transcription job with the same name as a previous medical transcription job, you get a\n ConflictException error.

", + "smithy.api#documentation": "

The name of the medical transcription job. You can't use the strings \".\" \n or \"..\" by themselves as the job name. The name must also be unique within an\n Amazon Web Services account. If you try to create a medical transcription job with the same\n name as a previous medical transcription job, you get a ConflictException \n error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3873,14 +3873,14 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code for the language spoken in the input media file. US English (en-US) is the valid value for \n medical transcription jobs. Any other value you enter for language code results in a \n BadRequestException error.

", + "smithy.api#documentation": "

The language code for the language spoken in the input media file. US English (en-US) is \n the valid value for medical transcription jobs. Any other value you enter for language code \n results in a BadRequestException error.

", "smithy.api#required": {} } }, "MediaSampleRateHertz": { "target": "com.amazonaws.transcribe#MediaSampleRateHertz", "traits": { - "smithy.api#documentation": "

The sample rate, in Hertz, of the audio track in the input media file.

\n

If you do not specify the media sample rate, Amazon Transcribe Medical determines the sample rate. If you specify the sample rate, \n it must match the rate detected by Amazon Transcribe Medical. In most cases, you should leave the \n MediaSampleRateHertz field blank and let Amazon Transcribe Medical determine the sample rate.

" + "smithy.api#documentation": "

The sample rate, in Hertz, of the audio track in the input media file.

\n

If you do not specify the media sample rate, Amazon Transcribe Medical determines the sample rate. If you \n specify the sample rate, it must match the rate detected by Amazon Transcribe Medical. In most cases, you\n should leave the MediaSampleRateHertz field blank and let Amazon Transcribe Medical determine\n the sample rate.

" } }, "MediaFormat": { @@ -3898,26 +3898,26 @@ "OutputBucketName": { "target": "com.amazonaws.transcribe#OutputBucketName", "traits": { - "smithy.api#documentation": "

The Amazon S3 location where the transcription is stored.

\n

You must set OutputBucketName for Amazon Transcribe Medical to store the transcription results. Your transcript \n appears in the S3 location you specify. When you call the GetMedicalTranscriptionJob, the operation \n returns this location in the TranscriptFileUri field. The S3 bucket must have permissions that allow\n Amazon Transcribe Medical to put files in the bucket. For more information, see Permissions Required for\n IAM User Roles.

\n

You can specify an Amazon Web Services Key Management Service (KMS) key to encrypt the output of your \n transcription using the OutputEncryptionKMSKeyId parameter. If you don't specify a KMS key, Amazon Transcribe Medical \n uses the default Amazon S3 key for server-side encryption of transcripts that are placed in your S3 bucket.

", + "smithy.api#documentation": "

The Amazon S3 location where the transcription is stored.

\n

You must set OutputBucketName for Amazon Transcribe Medical to store the transcription \n results. Your transcript appears in the S3 location you specify. When you call the \n GetMedicalTranscriptionJob, the operation returns this location in the\n TranscriptFileUri field. The S3 bucket must have permissions that allow\n Amazon Transcribe Medical to put files in the bucket. For more information, see Permissions Required for IAM User Roles.

\n

You can specify an Amazon Web Services Key Management Service (KMS) key to encrypt\n the output of your transcription using the OutputEncryptionKMSKeyId parameter. \n If you don't specify a KMS key, Amazon Transcribe Medical uses the default Amazon S3 key for server-side \n encryption of transcripts that are placed in your S3 bucket.

", "smithy.api#required": {} } }, "OutputKey": { "target": "com.amazonaws.transcribe#OutputKey", "traits": { - "smithy.api#documentation": "

You can specify a location in an Amazon S3 bucket to store the output of your medical transcription job.

\n

If you don't specify an output key, Amazon Transcribe Medical stores the output of your transcription job in the Amazon S3 bucket you \n specified. By default, the object key is \"your-transcription-job-name.json\".

\n

You can use output keys to specify the Amazon S3 prefix and file name of the transcription output. For example, \n specifying the Amazon S3 prefix, \"folder1/folder2/\", as an output key would lead to the output being stored as\n \"folder1/folder2/your-transcription-job-name.json\". If you specify \"my-other-job-name.json\" as the output key, the object\n key is changed to \"my-other-job-name.json\". You can use an output key to change both the prefix and the file name, for\n example \"folder/my-other-job-name.json\".

\n

If you specify an output key, you must also specify an S3 bucket in the OutputBucketName \n parameter.

" + "smithy.api#documentation": "

You can specify a location in an Amazon S3 bucket to store the output of your medical \n transcription job.

\n

If you don't specify an output key, Amazon Transcribe Medical stores the output of your transcription job in\n the Amazon S3 bucket you specified. By default, the object key is \n \"your-transcription-job-name.json\".

\n

You can use output keys to specify the Amazon S3 prefix and file name of the transcription \n output. For example, specifying the Amazon S3 prefix, \"folder1/folder2/\", as an output key would \n lead to the output being stored as \"folder1/folder2/your-transcription-job-name.json\". If you \n specify \"my-other-job-name.json\" as the output key, the object key is changed to\n \"my-other-job-name.json\". You can use an output key to change both the prefix and the file\n name, for example \"folder/my-other-job-name.json\".

\n

If you specify an output key, you must also specify an S3 bucket in the\n OutputBucketName parameter.

" } }, "OutputEncryptionKMSKeyId": { "target": "com.amazonaws.transcribe#KMSKeyId", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Key Management Service (KMS) key used to \n encrypt the output of the transcription job. The user calling the StartMedicalTranscriptionJob \n operation must have permission to use the specified KMS key.

\n

You use either of the following to identify a KMS key in the current account:

\n \n

You can use either of the following to identify a KMS key in the current account or another account:

\n \n

If you don't specify an encryption key, the output of the medical transcription job is encrypted with the default Amazon S3 \n key (SSE-S3).

\n

If you specify a KMS key to encrypt your output, you must also specify an output location in the \n OutputBucketName parameter.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Key Management Service\n (KMS) key used to encrypt the output of the transcription job. The user calling the \n StartMedicalTranscriptionJob operation must have permission to use the \n specified KMS key.

\n

You use either of the following to identify a KMS key in the current account:

\n \n

You can use either of the following to identify a KMS key in the current account or \n another account:

\n \n

If you don't specify an encryption key, the output of the medical transcription job is \n encrypted with the default Amazon S3 key (SSE-S3).

\n

If you specify a KMS key to encrypt your output, you must also specify an output location \n in the OutputBucketName parameter.

" } }, "KMSEncryptionContext": { "target": "com.amazonaws.transcribe#KMSEncryptionContextMap", "traits": { - "smithy.api#documentation": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added\n layer of security for your data.

" + "smithy.api#documentation": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that \n provide an added layer of security for your data.

" } }, "Settings": { @@ -3929,7 +3929,7 @@ "ContentIdentificationType": { "target": "com.amazonaws.transcribe#MedicalContentIdentificationType", "traits": { - "smithy.api#documentation": "

You can configure Amazon Transcribe Medical to label content in the transcription output. If you specify PHI, \n Amazon Transcribe Medical labels the personal health information (PHI) that it identifies in the transcription output.

" + "smithy.api#documentation": "

You can configure Amazon Transcribe Medical to label content in the transcription output. If you specify\n PHI, Amazon Transcribe Medical labels the personal health information (PHI) that it identifies in the\n transcription output.

" } }, "Specialty": { @@ -3942,7 +3942,7 @@ "Type": { "target": "com.amazonaws.transcribe#Type", "traits": { - "smithy.api#documentation": "

The type of speech in the input audio. CONVERSATION refers to conversations between two or\n more speakers, e.g., a conversations between doctors and patients. DICTATION refers to \n single-speaker dictated speech, such as clinical notes.

", + "smithy.api#documentation": "

The type of speech in the input audio. CONVERSATION refers to \n conversations between two or more speakers, e.g., a conversations between doctors and \n patients. DICTATION refers to single-speaker dictated speech, such as clinical\n notes.

", "smithy.api#required": {} } }, @@ -4002,7 +4002,7 @@ "TranscriptionJobName": { "target": "com.amazonaws.transcribe#TranscriptionJobName", "traits": { - "smithy.api#documentation": "

The name of the job. You can't use the strings \".\" or \"..\" by themselves as the\n job name. The name must also be unique within an Amazon Web Services account. If you try to create a transcription\n job with the same name as a previous transcription job, you get a ConflictException error.

", + "smithy.api#documentation": "

The name of the job. You can't use the strings \".\" or \"..\"\n by themselves as the job name. The name must also be unique within an Amazon Web Services\n account. If you try to create a transcription job with the same name as a previous \n transcription job, you get a ConflictException error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -4010,13 +4010,13 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code for the language used in the input media file.

\n

To transcribe speech in Modern Standard Arabic (ar-SA), your audio or video file must be encoded at a sample \n rate of 16,000 Hz or higher.

" + "smithy.api#documentation": "

The language code for the language used in the input media file.

\n

To transcribe speech in Modern Standard Arabic (ar-SA), your audio or video file must \n be encoded at a sample rate of 16,000 Hz or higher.

" } }, "MediaSampleRateHertz": { "target": "com.amazonaws.transcribe#MediaSampleRateHertz", "traits": { - "smithy.api#documentation": "

The sample rate, in Hertz, of the audio track in the input media file.

\n

If you do not specify the media sample rate, Amazon Transcribe determines the sample rate. If you specify the sample rate, it \n must match the sample rate detected by Amazon Transcribe. In most cases, you should leave the \n MediaSampleRateHertz field blank and let Amazon Transcribe determine the sample rate.

" + "smithy.api#documentation": "

The sample rate, in Hertz, of the audio track in the input media file.

\n

If you do not specify the media sample rate, Amazon Transcribe determines the sample rate. If you \n specify the sample rate, it must match the sample rate detected by Amazon Transcribe. In most cases,\n you should leave the MediaSampleRateHertz field blank and let Amazon Transcribe \n determine the sample rate.

" } }, "MediaFormat": { @@ -4035,43 +4035,43 @@ "OutputBucketName": { "target": "com.amazonaws.transcribe#OutputBucketName", "traits": { - "smithy.api#documentation": "

The location where the transcription is stored.

\n

If you set the OutputBucketName, Amazon Transcribe puts the transcript in the specified S3 bucket. When \n you call the GetTranscriptionJob operation, the operation returns this location in the \n TranscriptFileUri field. If you enable content redaction, the redacted transcript appears in\n RedactedTranscriptFileUri. If you enable content redaction and choose to output an unredacted\n transcript, that transcript's location still appears in the TranscriptFileUri. The S3 bucket must have \n permissions that allow Amazon Transcribe to put files in the bucket. For more information, see Permissions Required for \n IAM User Roles.

\n

You can specify an Amazon Web Services Key Management Service (KMS) key to encrypt the output of your \n transcription using the OutputEncryptionKMSKeyId parameter. If you don't specify a KMS key, Amazon Transcribe \n uses the default Amazon S3 key for server-side encryption of transcripts that are placed in your S3 bucket.

\n

If you don't set the OutputBucketName, Amazon Transcribe generates a pre-signed URL, a shareable URL that \n provides secure access to your transcription, and returns it in the TranscriptFileUri field. Use this URL \n to download the transcription.

" + "smithy.api#documentation": "

The location where the transcription is stored.

\n

If you set the OutputBucketName, Amazon Transcribe puts the transcript in the \n specified S3 bucket. When you call the GetTranscriptionJob operation, the\n operation returns this location in the TranscriptFileUri field. If you enable \n content redaction, the redacted transcript appears in\n RedactedTranscriptFileUri. If you enable content redaction and choose to \n output an unredacted transcript, that transcript's location still appears in the\n TranscriptFileUri. The S3 bucket must have permissions that allow Amazon Transcribe to \n put files in the bucket. For more information, see Permissions\n Required for IAM User Roles.

\n

You can specify an Amazon Web Services Key Management Service (KMS) key to encrypt \n the output of your transcription using the OutputEncryptionKMSKeyId \n parameter. If you don't specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for \n server-side encryption of transcripts that are placed in your S3 bucket.

\n

If you don't set the OutputBucketName, Amazon Transcribe generates a pre-signed URL,\n a shareable URL that provides secure access to your transcription, and returns it in the\n TranscriptFileUri field. Use this URL to download the transcription.

" } }, "OutputKey": { "target": "com.amazonaws.transcribe#OutputKey", "traits": { - "smithy.api#documentation": "

You can specify a location in an Amazon S3 bucket to store the output of your transcription job.

\n

If you don't specify an output key, Amazon Transcribe stores the output of your transcription job in the Amazon S3 bucket you\n specified. By default, the object key is \"your-transcription-job-name.json\".

\n

You can use output keys to specify the Amazon S3 prefix and file name of the transcription output. For example, \n specifying the Amazon S3 prefix, \"folder1/folder2/\", as an output key would lead to the output being stored as\n \"folder1/folder2/your-transcription-job-name.json\". If you specify \"my-other-job-name.json\" as the output key, the \n object key is changed to \"my-other-job-name.json\". You can use an output key to change both the prefix and the file \n name, for example \"folder/my-other-job-name.json\".

\n

If you specify an output key, you must also specify an S3 bucket in the OutputBucketName \n parameter.

" + "smithy.api#documentation": "

You can specify a location in an Amazon S3 bucket to store the output of your transcription\n job.

\n

If you don't specify an output key, Amazon Transcribe stores the output of your transcription job in \n the Amazon S3 bucket you specified. By default, the object key is\n \"your-transcription-job-name.json\".

\n

You can use output keys to specify the Amazon S3 prefix and file name of the transcription \n output. For example, specifying the Amazon S3 prefix, \"folder1/folder2/\", as an output key would \n lead to the output being stored as \"folder1/folder2/your-transcription-job-name.json\". If you \n specify \"my-other-job-name.json\" as the output key, the object key is changed to\n \"my-other-job-name.json\". You can use an output key to change both the prefix and the file \n name, for example \"folder/my-other-job-name.json\".

\n

If you specify an output key, you must also specify an S3 bucket in the\n OutputBucketName parameter.

" } }, "OutputEncryptionKMSKeyId": { "target": "com.amazonaws.transcribe#KMSKeyId", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Key Management Service (KMS) key used to \n encrypt the output of the transcription job. The user calling the StartTranscriptionJob \n operation must have permission to use the specified KMS key.

\n

You can use either of the following to identify a KMS key in the current account:

\n \n

You can use either of the following to identify a KMS key in the current account or another account:

\n \n

If you don't specify an encryption key, the output of the transcription job is encrypted with the default \n Amazon S3 key (SSE-S3).

\n

If you specify a KMS key to encrypt your output, you must also specify an output location in the \n OutputBucketName parameter.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Key Management \n Service (KMS) key used to encrypt the output of the transcription job. The user calling the\n StartTranscriptionJob operation must have permission to use the specified\n KMS key.

\n

You can use either of the following to identify a KMS key in the current account:

\n \n

You can use either of the following to identify a KMS key in the current account or \n another account:

\n \n

If you don't specify an encryption key, the output of the transcription job is encrypted \n with the default Amazon S3 key (SSE-S3).

\n

If you specify a KMS key to encrypt your output, you must also specify an output location\n in the OutputBucketName parameter.

" } }, "KMSEncryptionContext": { "target": "com.amazonaws.transcribe#KMSEncryptionContextMap", "traits": { - "smithy.api#documentation": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added\n layer of security for your data.

" + "smithy.api#documentation": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that \n provide an added layer of security for your data.

" } }, "Settings": { "target": "com.amazonaws.transcribe#Settings", "traits": { - "smithy.api#documentation": "

A Settings object that provides optional settings for a transcription job.

" + "smithy.api#documentation": "

A Settings object that provides optional settings for a transcription \n job.

" } }, "ModelSettings": { "target": "com.amazonaws.transcribe#ModelSettings", "traits": { - "smithy.api#documentation": "

Choose the custom language model you use for your transcription job in this parameter.

" + "smithy.api#documentation": "

Choose the custom language model you use for your transcription job in this \n parameter.

" } }, "JobExecutionSettings": { "target": "com.amazonaws.transcribe#JobExecutionSettings", "traits": { - "smithy.api#documentation": "

Provides information about how a transcription job is executed. Use this field to indicate that the job can be \n queued for deferred execution if the concurrency limit is reached and there are no slots available to immediately run \n the job.

" + "smithy.api#documentation": "

Provides information about how a transcription job is executed. Use this field to indicate\n that the job can be queued for deferred execution if the concurrency limit is reached and\n there are no slots available to immediately run the job.

" } }, "ContentRedaction": { @@ -4083,13 +4083,13 @@ "IdentifyLanguage": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

Set this field to true to enable automatic language identification. Automatic language identification \n is disabled by default. You receive a BadRequestException error if you enter a value for a\n LanguageCode.

" + "smithy.api#documentation": "

Set this field to true to enable automatic language identification. \n Automatic language identification is disabled by default. You receive a\n BadRequestException error if you enter a value for a\n LanguageCode.

" } }, "LanguageOptions": { "target": "com.amazonaws.transcribe#LanguageOptions", "traits": { - "smithy.api#documentation": "

An object containing a list of languages that might be present in your collection of audio files. Automatic language\n identification chooses a language that best matches the source audio from that list.

\n

To transcribe speech in Modern Standard Arabic (ar-SA), your audio or video file must be encoded at a sample \n rate of 16,000 Hz or higher.

" + "smithy.api#documentation": "

An object containing a list of languages that might be present in your collection of \n audio files. Automatic language identification chooses a language that best matches the \n source audio from that list.

\n

To transcribe speech in Modern Standard Arabic (ar-SA), your audio or video file must \n be encoded at a sample rate of 16,000 Hz or higher.

" } }, "Subtitles": { @@ -4107,7 +4107,7 @@ "LanguageIdSettings": { "target": "com.amazonaws.transcribe#LanguageIdSettingsMap", "traits": { - "smithy.api#documentation": "

The language identification settings associated with your transcription job. These settings include\n VocabularyName, VocabularyFilterName, and \n LanguageModelName.

" + "smithy.api#documentation": "

The language identification settings associated with your transcription job. These \n settings include VocabularyName, VocabularyFilterName, \n and LanguageModelName.

" } } } @@ -4184,13 +4184,13 @@ "Formats": { "target": "com.amazonaws.transcribe#SubtitleFormats", "traits": { - "smithy.api#documentation": "

Specify the output format for your subtitle file; if you select both SRT and VTT formats, two output files are genereated.

" + "smithy.api#documentation": "

Specify the output format for your subtitle file; if you select both SRT and VTT formats,\n two output files are generated.

" } }, "SubtitleFileUris": { "target": "com.amazonaws.transcribe#SubtitleFileUris", "traits": { - "smithy.api#documentation": "

Choose the output location for your subtitle file. This location must be an S3 bucket.

" + "smithy.api#documentation": "

Choose the output location for your subtitle file. This location must be an S3 \n bucket.

" } } }, @@ -4204,20 +4204,20 @@ "Key": { "target": "com.amazonaws.transcribe#TagKey", "traits": { - "smithy.api#documentation": "

The first part of a key:value pair that forms a tag associated with a given resource. For example, in the tag\n ‘Department’:’Sales’, the key is 'Department'.

", + "smithy.api#documentation": "

The first part of a key:value pair that forms a tag associated with a given resource. For\n example, in the tag ‘Department’:’Sales’, the key is 'Department'.

", "smithy.api#required": {} } }, "Value": { "target": "com.amazonaws.transcribe#TagValue", "traits": { - "smithy.api#documentation": "

The second part of a key:value pair that forms a tag associated with a given resource. For example, in the tag\n ‘Department’:’Sales’, the value is 'Sales'.

", + "smithy.api#documentation": "

The second part of a key:value pair that forms a tag associated with a given resource.\n For example, in the tag ‘Department’:’Sales’, the value is 'Sales'.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

A key:value pair that adds metadata to a resource used by Amazon Transcribe. For example, a tag with the key:value pair \n ‘Department’:’Sales’ might be added to a resource to indicate its use by your organization's sales department.

" + "smithy.api#documentation": "

A key:value pair that adds metadata to a resource used by Amazon Transcribe. For example, a tag \n with the key:value pair ‘Department’:’Sales’ might be added to a resource to indicate its use\n by your organization's sales department.

" } }, "com.amazonaws.transcribe#TagKey": { @@ -4293,7 +4293,7 @@ "ResourceArn": { "target": "com.amazonaws.transcribe#TranscribeArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Transcribe resource you want to tag. ARNs have the format\n arn:partition:service:region:account-id:resource-type/resource-id (for example,\n arn:aws:transcribe:us-east-1:account-id:transcription-job/your-job-name). Valid \n values for resource-type are: transcription-job,\n medical-transcription-job, vocabulary, \n medical-vocabulary, vocabulary-filter, and \n language-model.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Transcribe resource you want to tag. ARNs have \n the format arn:partition:service:region:account-id:resource-type/resource-id \n (for example, \n arn:aws:transcribe:us-east-1:account-id:transcription-job/your-job-name). \n Valid values for resource-type are: transcription-job,\n medical-transcription-job, vocabulary, \n medical-vocabulary, vocabulary-filter, and \n language-model.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -4484,13 +4484,13 @@ "TranscriptFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The S3 object location of the transcript.

\n

Use this URI to access the transcript. If you specified an S3 bucket in the OutputBucketName\n field when you created the job, this is the URI of that bucket. If you chose to store the transcript in Amazon Transcribe, this is a \n shareable URL that provides secure access to that location.

" + "smithy.api#documentation": "

The S3 object location of the transcript.

\n

Use this URI to access the transcript. If you specified an S3 bucket in the\n OutputBucketName field when you created the job, this is the URI of that \n bucket. If you chose to store the transcript in Amazon Transcribe, this is a shareable URL that provides \n secure access to that location.

" } }, "RedactedTranscriptFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The S3 object location of the redacted transcript.

\n

Use this URI to access the redacted transcript. If you specified an S3 bucket in the \n OutputBucketName field when you created the job, this is the URI of that bucket. If you chose to store \n the transcript in Amazon Transcribe, this is a shareable URL that provides secure access to that location.

" + "smithy.api#documentation": "

The S3 object location of the redacted transcript.

\n

Use this URI to access the redacted transcript. If you specified an S3 bucket in the \n OutputBucketName field when you created the job, this is the URI of that \n bucket. If you chose to store the transcript in Amazon Transcribe, this is a shareable URL that provides \n secure access to that location.

" } } }, @@ -4504,7 +4504,7 @@ "TranscriptFilterType": { "target": "com.amazonaws.transcribe#TranscriptFilterType", "traits": { - "smithy.api#documentation": "

Matches the phrase to the transcription output in a word for word fashion.\n For example, if you specify the phrase \"I want to speak to the manager.\" Amazon Transcribe attempts to match that specific \n phrase to the transcription.

", + "smithy.api#documentation": "

Matches the phrase to the transcription output in a word\n for word fashion. For example, if you specify the phrase \"I want to speak to the manager.\"\n Amazon Transcribe attempts to match that specific phrase to the transcription.

", "smithy.api#required": {} } }, @@ -4517,19 +4517,19 @@ "RelativeTimeRange": { "target": "com.amazonaws.transcribe#RelativeTimeRange", "traits": { - "smithy.api#documentation": "

An object that allows percentages to specify the proportion of the call where you would like to apply a filter. For\n example, you can specify the first half of the call. You can also specify the period of time between halfway through to\n three-quarters of the way through the call. Because the length of conversation can vary between calls, you can\n apply relative time ranges across all calls.

" + "smithy.api#documentation": "

An object that allows percentages to specify the proportion of the call where you would \n like to apply a filter. For example, you can specify the first half of the call. You can also \n specify the period of time between halfway through to three-quarters of the way through \n the call. Because the length of conversation can vary between calls, you can apply relative\n time ranges across all calls.

" } }, "ParticipantRole": { "target": "com.amazonaws.transcribe#ParticipantRole", "traits": { - "smithy.api#documentation": "

Determines whether the customer or the agent is speaking the phrases that you've specified.

" + "smithy.api#documentation": "

Determines whether the customer or the agent is speaking the phrases that you've\n specified.

" } }, "Negate": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

If TRUE, the rule that you specify is applied to everything except for the phrases that you\n specify.

" + "smithy.api#documentation": "

If TRUE, the rule that you specify is applied to everything except for the \n phrases that you specify.

" } }, "Targets": { @@ -4541,7 +4541,7 @@ } }, "traits": { - "smithy.api#documentation": "

Matches the output of the transcription to either the specific phrases that you specify, or the intent of the phrases\n that you specify.

" + "smithy.api#documentation": "

Matches the output of the transcription to either the specific phrases that you specify, \n or the intent of the phrases that you specify.

" } }, "com.amazonaws.transcribe#TranscriptFilterType": { @@ -4579,7 +4579,7 @@ "MediaSampleRateHertz": { "target": "com.amazonaws.transcribe#MediaSampleRateHertz", "traits": { - "smithy.api#documentation": "

The sample rate, in Hertz, of the audio track in the input media file.

" + "smithy.api#documentation": "

The sample rate, in Hertz (Hz), of the audio track in the input media file.

" } }, "MediaFormat": { @@ -4621,13 +4621,13 @@ "FailureReason": { "target": "com.amazonaws.transcribe#FailureReason", "traits": { - "smithy.api#documentation": "

If the TranscriptionJobStatus field is FAILED, this field contains information\n about why the job failed.

\n

The FailureReason field can contain one of the following values:

\n " + "smithy.api#documentation": "

If the TranscriptionJobStatus field is FAILED, this field \n contains information about why the job failed.

\n

The FailureReason field can contain one of the following values:

\n " } }, "Settings": { "target": "com.amazonaws.transcribe#Settings", "traits": { - "smithy.api#documentation": "

Optional settings for the transcription job. Use these settings to turn on speaker recognition, to set the \n maximum number of speakers that should be identified and to specify a custom vocabulary to use when processing\n the transcription job.

" + "smithy.api#documentation": "

Optional settings for the transcription job. Use these settings to turn on speaker \n recognition, to set the maximum number of speakers that should be identified and to specify \n a custom vocabulary to use when processing the transcription job.

" } }, "ModelSettings": { @@ -4651,19 +4651,19 @@ "IdentifyLanguage": { "target": "com.amazonaws.transcribe#Boolean", "traits": { - "smithy.api#documentation": "

A value that shows if automatic language identification was enabled for a transcription job.

" + "smithy.api#documentation": "

A value that shows if automatic language identification was enabled for a transcription \n job.

" } }, "LanguageOptions": { "target": "com.amazonaws.transcribe#LanguageOptions", "traits": { - "smithy.api#documentation": "

An object that shows the optional array of languages inputted for transcription jobs with automatic language\n identification enabled.

" + "smithy.api#documentation": "

An object that shows the optional array of languages inputted for transcription jobs with\n automatic language identification enabled.

" } }, "IdentifiedLanguageScore": { "target": "com.amazonaws.transcribe#IdentifiedLanguageScore", "traits": { - "smithy.api#documentation": "

A value between zero and one that Amazon Transcribe assigned to the language that it identified in the source audio. Larger \n values indicate that Amazon Transcribe has higher confidence in the language it identified.

" + "smithy.api#documentation": "

A value between zero and one that Amazon Transcribe assigned to the language that it identified in\n the source audio. Larger values indicate that Amazon Transcribe has higher confidence in the language it\n identified.

" } }, "Tags": { @@ -4681,12 +4681,12 @@ "LanguageIdSettings": { "target": "com.amazonaws.transcribe#LanguageIdSettingsMap", "traits": { - "smithy.api#documentation": "

Language-specific settings that can be specified when language identification is enabled for your transcription \n job. These settings include VocabularyName, VocabularyFilterName, and \n LanguageModelNameLanguageModelName.

" + "smithy.api#documentation": "

Language-specific settings that can be specified when language identification is enabled\n for your transcription job. These settings include VocabularyName,\n VocabularyFilterName, and LanguageModelName.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an asynchronous transcription job that was created with the StartTranscriptionJob \n operation.

" + "smithy.api#documentation": "

Describes an asynchronous transcription job that was created with the \n StartTranscriptionJob operation.

" } }, "com.amazonaws.transcribe#TranscriptionJobName": { @@ -4764,19 +4764,19 @@ "TranscriptionJobStatus": { "target": "com.amazonaws.transcribe#TranscriptionJobStatus", "traits": { - "smithy.api#documentation": "

The status of the transcription job. When the status is COMPLETED, use the\n GetTranscriptionJob operation to get the results of the transcription.

" + "smithy.api#documentation": "

The status of the transcription job. When the status is COMPLETED,\n use the GetTranscriptionJob operation to get the results of the \n transcription.

" } }, "FailureReason": { "target": "com.amazonaws.transcribe#FailureReason", "traits": { - "smithy.api#documentation": "

If the TranscriptionJobStatus field is FAILED, a description of the error.

" + "smithy.api#documentation": "

If the TranscriptionJobStatus field is FAILED, a \n description of the error.

" } }, "OutputLocationType": { "target": "com.amazonaws.transcribe#OutputLocationType", "traits": { - "smithy.api#documentation": "

Indicates the location of the output of the transcription job.

\n

If the value is CUSTOMER_BUCKET then the location is the S3 bucket specified in the\n outputBucketName field when the transcription job was started with the\n StartTranscriptionJob operation.

\n

If the value is SERVICE_BUCKET then the output is stored by Amazon Transcribe and can be retrieved using\n the URI in the GetTranscriptionJob response's TranscriptFileUri field.

" + "smithy.api#documentation": "

Indicates the location of the output of the transcription job.

\n

If the value is CUSTOMER_BUCKET then the location is the S3 bucket\n specified in the outputBucketName field when the transcription job was \n started with the StartTranscriptionJob operation.

\n

If the value is SERVICE_BUCKET then the output is stored by Amazon Transcribe and \n can be retrieved using the URI in the GetTranscriptionJob response's\n TranscriptFileUri field.

" } }, "ContentRedaction": { @@ -4797,7 +4797,7 @@ "IdentifiedLanguageScore": { "target": "com.amazonaws.transcribe#IdentifiedLanguageScore", "traits": { - "smithy.api#documentation": "

A value between zero and one that Amazon Transcribe assigned to the language it identified in the source audio. A higher\n score indicates that Amazon Transcribe is more confident in the language it identified.

" + "smithy.api#documentation": "

A value between zero and one that Amazon Transcribe assigned to the language it identified in \n the source audio. A higher score indicates that Amazon Transcribe is more confident in the language it\n identified.

" } } }, @@ -4860,7 +4860,7 @@ "ResourceArn": { "target": "com.amazonaws.transcribe#TranscribeArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Transcribe resource you want to remove tags from. \n ARNs have the format\n arn:partition:service:region:account-id:resource-type/resource-id (for example,\n arn:aws:transcribe:us-east-1:account-id:transcription-job/your-job-name). Valid \n values for resource-type are: transcription-job,\n medical-transcription-job, vocabulary, \n medical-vocabulary, vocabulary-filter, and \n language-model.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Transcribe resource you want to remove tags\n from. ARNs have the format\n arn:partition:service:region:account-id:resource-type/resource-id (for example,\n arn:aws:transcribe:us-east-1:account-id:transcription-job/your-job-name). \n Valid values for resource-type are: transcription-job,\n medical-transcription-job, vocabulary, \n medical-vocabulary, vocabulary-filter, and \n language-model.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -4904,7 +4904,7 @@ } ], "traits": { - "smithy.api#documentation": "

Updates the call analytics category with new values. The UpdateCallAnalyticsCategory\n operation overwrites all of the existing information with the values that you provide in the request.

", + "smithy.api#documentation": "

Updates the call analytics category with new values. The\n UpdateCallAnalyticsCategory operation overwrites all of the existing \n information with the values that you provide in the request.

", "smithy.api#http": { "method": "PATCH", "uri": "/callanalyticscategories/{CategoryName}", @@ -4918,7 +4918,7 @@ "CategoryName": { "target": "com.amazonaws.transcribe#CategoryName", "traits": { - "smithy.api#documentation": "

The name of the analytics category to update. The name is case sensitive. If you try to update a call analytics\n category with the same name as a previous category you will receive a ConflictException error.

", + "smithy.api#documentation": "

The name of the analytics category to update. The name is case sensitive. If you try\n to update a call analytics category with the same name as a previous category you will \n receive a ConflictException error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -4926,7 +4926,7 @@ "Rules": { "target": "com.amazonaws.transcribe#RuleList", "traits": { - "smithy.api#documentation": "

The rules used for the updated analytics category. The rules that you provide in this field replace the ones\n that are currently being used.

", + "smithy.api#documentation": "

The rules used for the updated analytics category. The rules that you provide in this \n field replace the ones that are currently being used.

", "smithy.api#required": {} } } @@ -4938,7 +4938,7 @@ "CategoryProperties": { "target": "com.amazonaws.transcribe#CategoryProperties", "traits": { - "smithy.api#documentation": "

The attributes describing the analytics category. You can see information such as the rules that you've used \n to update the category and when the category was originally created.

" + "smithy.api#documentation": "

The attributes describing the analytics category. You can see information such as the \n rules that you've used to update the category and when the category was originally \n created.

" } } } @@ -4969,7 +4969,7 @@ } ], "traits": { - "smithy.api#documentation": "

Updates a vocabulary with new values that you provide in a different text file from the one you used to create\n the vocabulary. The UpdateMedicalVocabulary operation overwrites all of the existing information \n with the values that you provide in the request.

", + "smithy.api#documentation": "

Updates a vocabulary with new values that you provide in a different text file from\n the one you used to create the vocabulary. The UpdateMedicalVocabulary \n operation overwrites all of the existing information with the values that you provide in the\n request.

", "smithy.api#http": { "method": "PATCH", "uri": "/medicalvocabularies/{VocabularyName}", @@ -4983,7 +4983,7 @@ "VocabularyName": { "target": "com.amazonaws.transcribe#VocabularyName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary to update. The name is case sensitive. If you try to update a vocabulary with the\n same name as a vocabulary you've already made, you get a ConflictException error.

", + "smithy.api#documentation": "

The name of the vocabulary to update. The name is case sensitive. If you try to update\n a vocabulary with the same name as a vocabulary you've already made, you get a\n ConflictException error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -4991,14 +4991,14 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code of the language used for the entries in the updated vocabulary. US English (en-US) is the \n only valid language code in Amazon Transcribe Medical.

", + "smithy.api#documentation": "

The language code of the language used for the entries in the updated vocabulary. \n U.S. English (en-US) is the only valid language code in Amazon Transcribe Medical.

", "smithy.api#required": {} } }, "VocabularyFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The location in Amazon S3 of the text file that contains your custom vocabulary. The URI must be in the same\n Amazon Web Services Region as the resource that you are calling. The following is the format for a URI:

\n

\n \n https://s3..amazonaws.com///\n \n

\n

For example:

\n

\n https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt\n

\n

For more information about Amazon S3 object names, see Object Keys in the Amazon S3 \n Developer Guide.

\n

For more information about custom vocabularies in Amazon Transcribe Medical, see Medical Custom Vocabularies.

" + "smithy.api#documentation": "

The location in Amazon S3 of the text file that contains your custom vocabulary. The URI must\n be in the same Amazon Web Services Region as the resource that you are calling. The following\n is the format for a URI:

\n

\n https://s3..amazonaws.com/// \n

\n

For example:

\n

\n https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt\n

\n

For more information about Amazon S3 object names, see Object Keys in the\n Amazon S3 Developer Guide.

\n

For more information about custom vocabularies in Amazon Transcribe Medical, see Medical Custom\n Vocabularies.

" } } } @@ -5015,7 +5015,7 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code for the language of the text file used to update the custom vocabulary. US English (en-US) \n is the only language supported in Amazon Transcribe Medical.

" + "smithy.api#documentation": "

The language code for the language of the text file used to update the custom \n vocabulary. US English (en-US) is the only language supported in Amazon Transcribe Medical.

" } }, "LastModifiedTime": { @@ -5027,7 +5027,7 @@ "VocabularyState": { "target": "com.amazonaws.transcribe#VocabularyState", "traits": { - "smithy.api#documentation": "

The processing state of the update to the vocabulary. When the VocabularyState field is \n READY, the vocabulary is ready to be used in a StartMedicalTranscriptionJob \n request.

" + "smithy.api#documentation": "

The processing state of the update to the vocabulary. When the \n VocabularyState field is READY, the vocabulary is ready to \n be used in a StartMedicalTranscriptionJob request.

" } } } @@ -5058,7 +5058,7 @@ } ], "traits": { - "smithy.api#documentation": "

Updates an existing vocabulary with new values. The UpdateVocabulary operation overwrites \n all of the existing information with the values that you provide in the request.

", + "smithy.api#documentation": "

Updates an existing vocabulary with new values. The \n UpdateVocabulary operation overwrites all of the existing information with\n the values that you provide in the request.

", "smithy.api#http": { "method": "PATCH", "uri": "/vocabularies/{VocabularyName}", @@ -5103,7 +5103,7 @@ "VocabularyFilterName": { "target": "com.amazonaws.transcribe#VocabularyFilterName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary filter to update. If you try to update a vocabulary filter with the same name as \n another vocabulary filter, you get a ConflictException error.

", + "smithy.api#documentation": "

The name of the vocabulary filter to update. If you try to update a vocabulary filter with\n the same name as another vocabulary filter, you get a ConflictException \n error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5111,13 +5111,13 @@ "Words": { "target": "com.amazonaws.transcribe#Words", "traits": { - "smithy.api#documentation": "

The words to use in the vocabulary filter. Only use characters from the character set defined for custom \n vocabularies. For a list of character sets, see Character Sets for Custom Vocabularies.

\n

If you provide a list of words in the Words parameter, you can't use the \n VocabularyFilterFileUri parameter.

" + "smithy.api#documentation": "

The words to use in the vocabulary filter. Only use characters from the character \n set defined for custom vocabularies. For a list of character sets, see \n Character\n Sets for Custom Vocabularies.

\n

If you provide a list of words in the Words parameter, you can't use the \n VocabularyFilterFileUri parameter.

" } }, "VocabularyFilterFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The Amazon S3 location of a text file used as input to create the vocabulary filter. Only use characters from \n the character set defined for custom vocabularies. For a list of character sets, see Character Sets for Custom Vocabularies.

\n

The specified file must be less than 50 KB of UTF-8 characters.

\n

If you provide the location of a list of words in the\n VocabularyFilterFileUri parameter, you can't use the Words\n parameter.

" + "smithy.api#documentation": "

The Amazon S3 location of a text file used as input to create the vocabulary filter.\n Only use characters from the character set defined for custom vocabularies. For a list of \n character sets, see Character Sets for Custom\n Vocabularies.

\n

The specified file must be less than 50 KB of UTF-8 characters.

\n

If you provide the location of a list of words in the VocabularyFilterFileUri\n parameter, you can't use the Words parameter.

" } } } @@ -5151,7 +5151,7 @@ "VocabularyName": { "target": "com.amazonaws.transcribe#VocabularyName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary to update. The name is case sensitive. If you try to update a vocabulary with the \n same name as a previous vocabulary you will receive a ConflictException error.

", + "smithy.api#documentation": "

The name of the vocabulary to update. The name is case sensitive. If you try to update\n a vocabulary with the same name as a previous vocabulary you will receive a\n ConflictException error.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5159,7 +5159,7 @@ "LanguageCode": { "target": "com.amazonaws.transcribe#LanguageCode", "traits": { - "smithy.api#documentation": "

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, \n see transcribe-whatis.

", + "smithy.api#documentation": "

The language code of the vocabulary entries. For a list of languages and their \n corresponding language codes, see Supported languages.

", "smithy.api#required": {} } }, @@ -5172,7 +5172,7 @@ "VocabularyFileUri": { "target": "com.amazonaws.transcribe#Uri", "traits": { - "smithy.api#documentation": "

The S3 location of the text file that contains the definition of the custom vocabulary. The URI must be in the \n same region as the API endpoint that you are calling. The general form is

\n \n

For example:

\n \n

For more information about S3 object names, see Object Keys in the Amazon S3 \n Developer Guide.

\n

For more information about custom vocabularies, see Custom Vocabularies.

" + "smithy.api#documentation": "

The S3 location of the text file that contains the definition of the custom vocabulary. \n The URI must be in the same region as the API endpoint that you are calling. The general form\n is:

\n

\n https://s3..amazonaws.com///\n

\n

For example:

\n

\n https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt\n

\n

For more information about S3 object names, see Object Keys in the\n Amazon S3 Developer Guide.

\n

For more information about custom vocabularies, see Custom \n Vocabularies.

" } } } @@ -5201,7 +5201,7 @@ "VocabularyState": { "target": "com.amazonaws.transcribe#VocabularyState", "traits": { - "smithy.api#documentation": "

The processing state of the vocabulary. When the VocabularyState field contains \n READY the vocabulary is ready to be used in a StartTranscriptionJob \n request.

" + "smithy.api#documentation": "

The processing state of the vocabulary. When the VocabularyState \n field contains READY the vocabulary is ready to be used in a\n StartTranscriptionJob request.

" } } } @@ -5228,7 +5228,7 @@ "VocabularyFilterName": { "target": "com.amazonaws.transcribe#VocabularyFilterName", "traits": { - "smithy.api#documentation": "

The name of the vocabulary filter. The name must be unique in the account that holds the filter.

" + "smithy.api#documentation": "

The name of the vocabulary filter. The name must be unique in the account that\n holds the filter.

" } }, "LanguageCode": { @@ -5307,12 +5307,12 @@ "VocabularyState": { "target": "com.amazonaws.transcribe#VocabularyState", "traits": { - "smithy.api#documentation": "

The processing state of the vocabulary. If the state is READY you can use\n the vocabulary in a StartTranscriptionJob request.

" + "smithy.api#documentation": "

The processing state of the vocabulary. If the state is READY you \n can use the vocabulary in a StartTranscriptionJob request.

" } } }, "traits": { - "smithy.api#documentation": "

Provides information about a custom vocabulary.

" + "smithy.api#documentation": "

Provides information about a custom vocabulary.

" } }, "com.amazonaws.transcribe#VocabularyName": { diff --git a/codegen/sdk-codegen/aws-models/workspaces.2015-04-08.json b/codegen/sdk-codegen/aws-models/workspaces.2015-04-08.json index a2a2e8e7ec9..bfbf987ea9b 100644 --- a/codegen/sdk-codegen/aws-models/workspaces.2015-04-08.json +++ b/codegen/sdk-codegen/aws-models/workspaces.2015-04-08.json @@ -112,9 +112,39 @@ "target": "com.amazonaws.workspaces#AccountModification" } }, + "com.amazonaws.workspaces#AddInName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^.*$" + } + }, + "com.amazonaws.workspaces#AddInUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#pattern": "^(http|https)\\://\\S+$" + } + }, "com.amazonaws.workspaces#Alias": { "type": "string" }, + "com.amazonaws.workspaces#AmazonUuid": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 36, + "max": 36 + }, + "smithy.api#pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$" + } + }, "com.amazonaws.workspaces#Application": { "type": "string", "traits": { @@ -469,6 +499,44 @@ "com.amazonaws.workspaces#ComputerName": { "type": "string" }, + "com.amazonaws.workspaces#ConnectClientAddIn": { + "type": "structure", + "members": { + "AddInId": { + "target": "com.amazonaws.workspaces#AmazonUuid", + "traits": { + "smithy.api#documentation": "

The client add-in identifier.

" + } + }, + "ResourceId": { + "target": "com.amazonaws.workspaces#DirectoryId", + "traits": { + "smithy.api#documentation": "

The directory identifier for which the client add-in is configured.

" + } + }, + "Name": { + "target": "com.amazonaws.workspaces#AddInName", + "traits": { + "smithy.api#documentation": "

The name of the client add in.

" + } + }, + "URL": { + "target": "com.amazonaws.workspaces#AddInUrl", + "traits": { + "smithy.api#documentation": "

The endpoint URL of the client add-in.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an Amazon Connect client add-in.

" + } + }, + "com.amazonaws.workspaces#ConnectClientAddInList": { + "type": "list", + "member": { + "target": "com.amazonaws.workspaces#ConnectClientAddIn" + } + }, "com.amazonaws.workspaces#ConnectionAlias": { "type": "structure", "members": { @@ -761,6 +829,72 @@ } } }, + "com.amazonaws.workspaces#CreateConnectClientAddIn": { + "type": "operation", + "input": { + "target": "com.amazonaws.workspaces#CreateConnectClientAddInRequest" + }, + "output": { + "target": "com.amazonaws.workspaces#CreateConnectClientAddInResult" + }, + "errors": [ + { + "target": "com.amazonaws.workspaces#AccessDeniedException" + }, + { + "target": "com.amazonaws.workspaces#InvalidParameterValuesException" + }, + { + "target": "com.amazonaws.workspaces#ResourceAlreadyExistsException" + }, + { + "target": "com.amazonaws.workspaces#ResourceCreationFailedException" + }, + { + "target": "com.amazonaws.workspaces#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a client-add-in for Amazon Connect within a directory. You can create only\n one Amazon Connect client add-in within a directory.

\n \n

This client add-in allows WorkSpaces users to seamlessly connect to Amazon Connect.

" + } + }, + "com.amazonaws.workspaces#CreateConnectClientAddInRequest": { + "type": "structure", + "members": { + "ResourceId": { + "target": "com.amazonaws.workspaces#DirectoryId", + "traits": { + "smithy.api#documentation": "

The directory identifier for which to configure the client add-in.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.workspaces#AddInName", + "traits": { + "smithy.api#documentation": "

The name of the client add-in.

", + "smithy.api#required": {} + } + }, + "URL": { + "target": "com.amazonaws.workspaces#AddInUrl", + "traits": { + "smithy.api#documentation": "

The endpoint URL of the Amazon Connect client add-in.

", + "smithy.api#required": {} + } + } + } + }, + "com.amazonaws.workspaces#CreateConnectClientAddInResult": { + "type": "structure", + "members": { + "AddInId": { + "target": "com.amazonaws.workspaces#AmazonUuid", + "traits": { + "smithy.api#documentation": "

The client add-in identifier.

" + } + } + } + }, "com.amazonaws.workspaces#CreateConnectionAlias": { "type": "operation", "input": { @@ -1256,6 +1390,52 @@ "smithy.api#documentation": "

Describes the default values that are used to create WorkSpaces. For more information, see Update Directory Details for Your WorkSpaces.

" } }, + "com.amazonaws.workspaces#DeleteConnectClientAddIn": { + "type": "operation", + "input": { + "target": "com.amazonaws.workspaces#DeleteConnectClientAddInRequest" + }, + "output": { + "target": "com.amazonaws.workspaces#DeleteConnectClientAddInResult" + }, + "errors": [ + { + "target": "com.amazonaws.workspaces#AccessDeniedException" + }, + { + "target": "com.amazonaws.workspaces#InvalidParameterValuesException" + }, + { + "target": "com.amazonaws.workspaces#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a client-add-in for Amazon Connect that is configured within a\n directory.

" + } + }, + "com.amazonaws.workspaces#DeleteConnectClientAddInRequest": { + "type": "structure", + "members": { + "AddInId": { + "target": "com.amazonaws.workspaces#AmazonUuid", + "traits": { + "smithy.api#documentation": "

The identifier of the client add-in to delete.

", + "smithy.api#required": {} + } + }, + "ResourceId": { + "target": "com.amazonaws.workspaces#DirectoryId", + "traits": { + "smithy.api#documentation": "

The directory identifier for which the client add-in is configured.

", + "smithy.api#required": {} + } + } + } + }, + "com.amazonaws.workspaces#DeleteConnectClientAddInResult": { + "type": "structure", + "members": {} + }, "com.amazonaws.workspaces#DeleteConnectionAlias": { "type": "operation", "input": { @@ -1643,6 +1823,70 @@ } } }, + "com.amazonaws.workspaces#DescribeConnectClientAddIns": { + "type": "operation", + "input": { + "target": "com.amazonaws.workspaces#DescribeConnectClientAddInsRequest" + }, + "output": { + "target": "com.amazonaws.workspaces#DescribeConnectClientAddInsResult" + }, + "errors": [ + { + "target": "com.amazonaws.workspaces#AccessDeniedException" + }, + { + "target": "com.amazonaws.workspaces#InvalidParameterValuesException" + }, + { + "target": "com.amazonaws.workspaces#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves a list of Amazon Connect client add-ins that have been created.

" + } + }, + "com.amazonaws.workspaces#DescribeConnectClientAddInsRequest": { + "type": "structure", + "members": { + "ResourceId": { + "target": "com.amazonaws.workspaces#DirectoryId", + "traits": { + "smithy.api#documentation": "

The directory identifier for which the client add-in is configured.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.workspaces#PaginationToken", + "traits": { + "smithy.api#documentation": "

If you received a NextToken from a previous call that was paginated,\n provide this token to receive the next set of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.workspaces#Limit", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return.

" + } + } + } + }, + "com.amazonaws.workspaces#DescribeConnectClientAddInsResult": { + "type": "structure", + "members": { + "AddIns": { + "target": "com.amazonaws.workspaces#ConnectClientAddInList", + "traits": { + "smithy.api#documentation": "

Information about client add-ins.

" + } + }, + "NextToken": { + "target": "com.amazonaws.workspaces#PaginationToken", + "traits": { + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are\n no more results to return.

" + } + } + } + }, "com.amazonaws.workspaces#DescribeConnectionAliasPermissions": { "type": "operation", "input": { @@ -4254,6 +4498,64 @@ "smithy.api#error": "client" } }, + "com.amazonaws.workspaces#UpdateConnectClientAddIn": { + "type": "operation", + "input": { + "target": "com.amazonaws.workspaces#UpdateConnectClientAddInRequest" + }, + "output": { + "target": "com.amazonaws.workspaces#UpdateConnectClientAddInResult" + }, + "errors": [ + { + "target": "com.amazonaws.workspaces#AccessDeniedException" + }, + { + "target": "com.amazonaws.workspaces#InvalidParameterValuesException" + }, + { + "target": "com.amazonaws.workspaces#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a Amazon Connect client add-in. Use this action to update the name and\n endpoint URL of a Amazon Connect client add-in.

" + } + }, + "com.amazonaws.workspaces#UpdateConnectClientAddInRequest": { + "type": "structure", + "members": { + "AddInId": { + "target": "com.amazonaws.workspaces#AmazonUuid", + "traits": { + "smithy.api#documentation": "

The identifier of the client add-in to update.

", + "smithy.api#required": {} + } + }, + "ResourceId": { + "target": "com.amazonaws.workspaces#DirectoryId", + "traits": { + "smithy.api#documentation": "

The directory identifier for which the client add-in is configured.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.workspaces#AddInName", + "traits": { + "smithy.api#documentation": "

The name of the client add-in.

" + } + }, + "URL": { + "target": "com.amazonaws.workspaces#AddInUrl", + "traits": { + "smithy.api#documentation": "

The endpoint URL of the Amazon Connect client add-in.

" + } + } + } + }, + "com.amazonaws.workspaces#UpdateConnectClientAddInResult": { + "type": "structure", + "members": {} + }, "com.amazonaws.workspaces#UpdateConnectionAliasPermission": { "type": "operation", "input": { @@ -5475,6 +5777,9 @@ { "target": "com.amazonaws.workspaces#CopyWorkspaceImage" }, + { + "target": "com.amazonaws.workspaces#CreateConnectClientAddIn" + }, { "target": "com.amazonaws.workspaces#CreateConnectionAlias" }, @@ -5493,6 +5798,9 @@ { "target": "com.amazonaws.workspaces#CreateWorkspaces" }, + { + "target": "com.amazonaws.workspaces#DeleteConnectClientAddIn" + }, { "target": "com.amazonaws.workspaces#DeleteConnectionAlias" }, @@ -5520,6 +5828,9 @@ { "target": "com.amazonaws.workspaces#DescribeClientProperties" }, + { + "target": "com.amazonaws.workspaces#DescribeConnectClientAddIns" + }, { "target": "com.amazonaws.workspaces#DescribeConnectionAliases" }, @@ -5613,6 +5924,9 @@ { "target": "com.amazonaws.workspaces#TerminateWorkspaces" }, + { + "target": "com.amazonaws.workspaces#UpdateConnectClientAddIn" + }, { "target": "com.amazonaws.workspaces#UpdateConnectionAliasPermission" }, diff --git a/codegen/smithy-aws-go-codegen/src/main/resources/software/amazon/smithy/aws/go/codegen/endpoints.json b/codegen/smithy-aws-go-codegen/src/main/resources/software/amazon/smithy/aws/go/codegen/endpoints.json index 53435844ef6..5d41d51888c 100644 --- a/codegen/smithy-aws-go-codegen/src/main/resources/software/amazon/smithy/aws/go/codegen/endpoints.json +++ b/codegen/smithy-aws-go-codegen/src/main/resources/software/amazon/smithy/aws/go/codegen/endpoints.json @@ -1368,6 +1368,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, @@ -15338,6 +15339,13 @@ } ] }, "endpoints" : { + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "identitystore.us-gov-east-1.amazonaws.com" + }, "fips-us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" @@ -15345,6 +15353,12 @@ "deprecated" : true, "hostname" : "identitystore.us-gov-west-1.amazonaws.com" }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "identitystore.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "us-gov-west-1" : { "variants" : [ { "hostname" : "identitystore.us-gov-west-1.amazonaws.com", @@ -15920,6 +15934,12 @@ }, "portal.sso" : { "endpoints" : { + "us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "hostname" : "portal.sso.us-gov-east-1.amazonaws.com" + }, "us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" @@ -17207,6 +17227,19 @@ }, "deprecated" : true, "hostname" : "dms.us-iso-east-1.c2s.ic.gov" + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "dms.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1-fips" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "dms.us-iso-west-1.c2s.ic.gov" } } }, diff --git a/feature/dynamodbstreams/attributevalue/decode.go b/feature/dynamodbstreams/attributevalue/decode.go index 8d613c3bbd6..368c51936ec 100644 --- a/feature/dynamodbstreams/attributevalue/decode.go +++ b/feature/dynamodbstreams/attributevalue/decode.go @@ -79,6 +79,53 @@ func Unmarshal(av types.AttributeValue, out interface{}) error { return NewDecoder().Decode(av, out) } +// UnmarshalWithOptions will unmarshal AttributeValues to Go value types. +// Both generic interface{} and concrete types are valid unmarshal +// destination types. +// +// Use the `optsFns` functional options to override the default configuration. +// +// UnmarshalWithOptions will allocate maps, slices, and pointers as needed to +// unmarshal the AttributeValue into the provided type value. +// +// When unmarshaling AttributeValues into structs Unmarshal matches +// the field names of the struct to the AttributeValue Map keys. +// Initially it will look for exact field name matching, but will +// fall back to case insensitive if not exact match is found. +// +// With the exception of omitempty, omitemptyelem, binaryset, numberset +// and stringset all struct tags used by Marshal are also used by +// UnmarshalWithOptions. +// +// When decoding AttributeValues to interfaces Unmarshal will use the +// following types. +// +// []byte, AV Binary (B) +// [][]byte, AV Binary Set (BS) +// bool, AV Boolean (BOOL) +// []interface{}, AV List (L) +// map[string]interface{}, AV Map (M) +// float64, AV Number (N) +// Number, AV Number (N) with UseNumber set +// []float64, AV Number Set (NS) +// []Number, AV Number Set (NS) with UseNumber set +// string, AV String (S) +// []string, AV String Set (SS) +// +// If the Decoder option, UseNumber is set numbers will be unmarshaled +// as Number values instead of float64. Use this to maintain the original +// string formating of the number as it was represented in the AttributeValue. +// In addition provides additional opportunities to parse the number +// string based on individual use cases. +// +// When unmarshaling any error that occurs will halt the unmarshal +// and return the error. +// +// The output value provided must be a non-nil pointer +func UnmarshalWithOptions(av types.AttributeValue, out interface{}, optFns ...func(options *DecoderOptions)) error { + return NewDecoder(optFns...).Decode(av, out) +} + // UnmarshalMap is an alias for Unmarshal which unmarshals from // a map of AttributeValues. // @@ -87,6 +134,16 @@ func UnmarshalMap(m map[string]types.AttributeValue, out interface{}) error { return NewDecoder().Decode(&types.AttributeValueMemberM{Value: m}, out) } +// UnmarshalMapWithOptions is an alias for UnmarshalWithOptions which unmarshals from +// a map of AttributeValues. +// +// Use the `optsFns` functional options to override the default configuration. +// +// The output value provided must be a non-nil pointer +func UnmarshalMapWithOptions(m map[string]types.AttributeValue, out interface{}, optFns ...func(options *DecoderOptions)) error { + return NewDecoder(optFns...).Decode(&types.AttributeValueMemberM{Value: m}, out) +} + // UnmarshalList is an alias for Unmarshal func which unmarshals // a slice of AttributeValues. // @@ -95,6 +152,16 @@ func UnmarshalList(l []types.AttributeValue, out interface{}) error { return NewDecoder().Decode(&types.AttributeValueMemberL{Value: l}, out) } +// UnmarshalListWithOptions is an alias for UnmarshalWithOptions func which unmarshals +// a slice of AttributeValues. +// +// Use the `optsFns` functional options to override the default configuration. +// +// The output value provided must be a non-nil pointer +func UnmarshalListWithOptions(l []types.AttributeValue, out interface{}, optFns ...func(options *DecoderOptions)) error { + return NewDecoder(optFns...).Decode(&types.AttributeValueMemberL{Value: l}, out) +} + // UnmarshalListOfMaps is an alias for Unmarshal func which unmarshals a // slice of maps of attribute values. // @@ -111,6 +178,24 @@ func UnmarshalListOfMaps(l []map[string]types.AttributeValue, out interface{}) e return UnmarshalList(items, out) } +// UnmarshalListOfMapsWithOptions is an alias for UnmarshalWithOptions func which unmarshals a +// slice of maps of attribute values. +// +// Use the `optsFns` functional options to override the default configuration. +// +// This is useful for when you need to unmarshal the Items from a Query API +// call. +// +// The output value provided must be a non-nil pointer +func UnmarshalListOfMapsWithOptions(l []map[string]types.AttributeValue, out interface{}, optFns ...func(options *DecoderOptions)) error { + items := make([]types.AttributeValue, len(l)) + for i, m := range l { + items[i] = &types.AttributeValueMemberM{Value: m} + } + + return UnmarshalListWithOptions(items, out, optFns...) +} + // DecoderOptions is a collection of options to configure how the decoder // unmarshalls the value. type DecoderOptions struct { diff --git a/feature/dynamodbstreams/attributevalue/encode.go b/feature/dynamodbstreams/attributevalue/encode.go index 462e4f705d9..66f649f05d4 100644 --- a/feature/dynamodbstreams/attributevalue/encode.go +++ b/feature/dynamodbstreams/attributevalue/encode.go @@ -179,10 +179,115 @@ func Marshal(in interface{}) (types.AttributeValue, error) { return NewEncoder().Encode(in) } +// MarshalWithOptions will serialize the passed in Go value type into a AttributeValue +// type, by using . This value can be used in API operations to simplify marshaling +// your Go value types into AttributeValues. +// +// Use the `optsFns` functional options to override the default configuration. +// +// MarshalWithOptions will recursively transverse the passed in value marshaling its +// contents into a AttributeValue. Marshal supports basic scalars +// (int,uint,float,bool,string), maps, slices, and structs. Anonymous +// nested types are flattened based on Go anonymous type visibility. +// +// Marshaling slices to AttributeValue will default to a List for all +// types except for []byte and [][]byte. []byte will be marshaled as +// Binary data (B), and [][]byte will be marshaled as binary data set +// (BS). +// +// The `time.Time` type is marshaled as `time.RFC3339Nano` format. +// +// `dynamodbav` struct tag can be used to control how the value will be +// marshaled into a AttributeValue. +// +// // Field is ignored +// Field int `dynamodbav:"-"` +// +// // Field AttributeValue map key "myName" +// Field int `dynamodbav:"myName"` +// +// // Field AttributeValue map key "myName", and +// // Field is omitted if the field is a zero value for the type. +// Field int `dynamodbav:"myName,omitempty"` +// +// // Field AttributeValue map key "Field", and +// // Field is omitted if the field is a zero value for the type. +// Field int `dynamodbav:",omitempty"` +// +// // Field's elems will be omitted if the elem's value is empty. +// // only valid for slices, and maps. +// Field []string `dynamodbav:",omitemptyelem"` +// +// // Field AttributeValue map key "Field", and +// // Field is sent as NULL if the field is a zero value for the type. +// Field int `dynamodbav:",nullempty"` +// +// // Field's elems will be sent as NULL if the elem's value a zero value +// // for the type. Only valid for slices, and maps. +// Field []string `dynamodbav:",nullemptyelem"` +// +// // Field will be marshaled as a AttributeValue string +// // only value for number types, (int,uint,float) +// Field int `dynamodbav:",string"` +// +// // Field will be marshaled as a binary set +// Field [][]byte `dynamodbav:",binaryset"` +// +// // Field will be marshaled as a number set +// Field []int `dynamodbav:",numberset"` +// +// // Field will be marshaled as a string set +// Field []string `dynamodbav:",stringset"` +// +// // Field will be marshaled as Unix time number in seconds. +// // This tag is only valid with time.Time typed struct fields. +// // Important to note that zero value time as unixtime is not 0 seconds +// // from January 1, 1970 UTC, but -62135596800. Which is seconds between +// // January 1, 0001 UTC, and January 1, 0001 UTC. +// Field time.Time `dynamodbav:",unixtime"` +// +// The omitempty tag is only used during Marshaling and is ignored for +// Unmarshal. omitempty will skip any member if the Go value of the member is +// zero. The omitemptyelem tag works the same as omitempty except it applies to +// the elements of maps and slices instead of struct fields, and will not be +// included in the marshaled AttributeValue Map, List, or Set. +// +// The nullempty tag is only used during Marshaling and is ignored for +// Unmarshal. nullempty will serialize a AttributeValueMemberNULL for the +// member if the Go value of the member is zero. nullemptyelem tag works the +// same as nullempty except it applies to the elements of maps and slices +// instead of struct fields, and will not be included in the marshaled +// AttributeValue Map, List, or Set. +// +// All struct fields and with anonymous fields, are marshaled unless the +// any of the following conditions are meet. +// +// - the field is not exported +// - json or dynamodbav field tag is "-" +// - json or dynamodbav field tag specifies "omitempty", and is a zero value. +// +// Pointer and interfaces values are encoded as the value pointed to or +// contained in the interface. A nil value encodes as the AttributeValue NULL +// value unless `omitempty` struct tag is provided. +// +// Channel, complex, and function values are not encoded and will be skipped +// when walking the value to be marshaled. +// +// Error that occurs when marshaling will stop the marshal, and return +// the error. +// +// MarshalWithOptions cannot represent cyclic data structures and will not handle them. +// Passing cyclic structures to Marshal will result in an infinite recursion. +func MarshalWithOptions(in interface{}, optFns ...func(*EncoderOptions)) (types.AttributeValue, error) { + return NewEncoder(optFns...).Encode(in) +} + // MarshalMap is an alias for Marshal func which marshals Go value type to a // map of AttributeValues. If the in parameter does not serialize to a map, an // empty AttributeValue map will be returned. // +// Use the `optsFns` functional options to override the default configuration. +// // This is useful for APIs such as PutItem. func MarshalMap(in interface{}) (map[string]types.AttributeValue, error) { av, err := NewEncoder().Encode(in) @@ -195,6 +300,24 @@ func MarshalMap(in interface{}) (map[string]types.AttributeValue, error) { return asMap.Value, nil } +// MarshalMapWithOptions is an alias for MarshalWithOptions func which marshals Go value type to a +// map of AttributeValues. If the in parameter does not serialize to a map, an +// empty AttributeValue map will be returned. +// +// Use the `optsFns` functional options to override the default configuration. +// +// This is useful for APIs such as PutItem. +func MarshalMapWithOptions(in interface{}, optFns ...func(*EncoderOptions)) (map[string]types.AttributeValue, error) { + av, err := NewEncoder(optFns...).Encode(in) + + asMap, ok := av.(*types.AttributeValueMemberM) + if err != nil || av == nil || !ok { + return map[string]types.AttributeValue{}, err + } + + return asMap.Value, nil +} + // MarshalList is an alias for Marshal func which marshals Go value // type to a slice of AttributeValues. If the in parameter does not serialize // to a slice, an empty AttributeValue slice will be returned. @@ -209,6 +332,22 @@ func MarshalList(in interface{}) ([]types.AttributeValue, error) { return asList.Value, nil } +// MarshalListWithOptions is an alias for MarshalWithOptions func which marshals Go value +// type to a slice of AttributeValues. If the in parameter does not serialize +// to a slice, an empty AttributeValue slice will be returned. +// +// Use the `optsFns` functional options to override the default configuration. +func MarshalListWithOptions(in interface{}, optFns ...func(*EncoderOptions)) ([]types.AttributeValue, error) { + av, err := NewEncoder(optFns...).Encode(in) + + asList, ok := av.(*types.AttributeValueMemberL) + if err != nil || av == nil || !ok { + return []types.AttributeValue{}, err + } + + return asList.Value, nil +} + // EncoderOptions is a collection of options shared between marshaling // and unmarshaling type EncoderOptions struct { diff --git a/service/appsync/api_op_CreateFunction.go b/service/appsync/api_op_CreateFunction.go index 3ce3aa9bbc8..ce13a30f46c 100644 --- a/service/appsync/api_op_CreateFunction.go +++ b/service/appsync/api_op_CreateFunction.go @@ -54,6 +54,9 @@ type CreateFunctionInput struct { // The Function description. Description *string + // The maximum batching size for a resolver. + MaxBatchSize int32 + // The Function request mapping template. Functions support only the 2018-05-29 // version of the request mapping template. RequestMappingTemplate *string diff --git a/service/appsync/api_op_CreateResolver.go b/service/appsync/api_op_CreateResolver.go index 3044ea10420..613f17e0d54 100644 --- a/service/appsync/api_op_CreateResolver.go +++ b/service/appsync/api_op_CreateResolver.go @@ -64,6 +64,9 @@ type CreateResolverInput struct { // sources. Kind types.ResolverKind + // The maximum batching size for a resolver. + MaxBatchSize int32 + // The PipelineConfig. PipelineConfig *types.PipelineConfig diff --git a/service/appsync/api_op_UpdateFunction.go b/service/appsync/api_op_UpdateFunction.go index 23f78a7d66a..bb11c7fbb6a 100644 --- a/service/appsync/api_op_UpdateFunction.go +++ b/service/appsync/api_op_UpdateFunction.go @@ -58,6 +58,9 @@ type UpdateFunctionInput struct { // The Function description. Description *string + // The maximum batching size for a resolver. + MaxBatchSize int32 + // The Function request mapping template. Functions support only the 2018-05-29 // version of the request mapping template. RequestMappingTemplate *string diff --git a/service/appsync/api_op_UpdateResolver.go b/service/appsync/api_op_UpdateResolver.go index 2307e484782..0ae13cc9708 100644 --- a/service/appsync/api_op_UpdateResolver.go +++ b/service/appsync/api_op_UpdateResolver.go @@ -62,6 +62,9 @@ type UpdateResolverInput struct { // sources. Kind types.ResolverKind + // The maximum batching size for a resolver. + MaxBatchSize int32 + // The PipelineConfig. PipelineConfig *types.PipelineConfig diff --git a/service/appsync/deserializers.go b/service/appsync/deserializers.go index 72496148ab3..0342d42fe8d 100644 --- a/service/appsync/deserializers.go +++ b/service/appsync/deserializers.go @@ -8764,6 +8764,19 @@ func awsRestjson1_deserializeDocumentFunctionConfiguration(v **types.FunctionCon sv.FunctionVersion = ptr.String(jtv) } + case "maxBatchSize": + if value != nil { + jtv, ok := value.(json.Number) + if !ok { + return fmt.Errorf("expected MaxBatchSize to be json.Number, got %T instead", value) + } + i64, err := jtv.Int64() + if err != nil { + return err + } + sv.MaxBatchSize = int32(i64) + } + case "name": if value != nil { jtv, ok := value.(string) @@ -9805,6 +9818,19 @@ func awsRestjson1_deserializeDocumentResolver(v **types.Resolver, value interfac sv.Kind = types.ResolverKind(jtv) } + case "maxBatchSize": + if value != nil { + jtv, ok := value.(json.Number) + if !ok { + return fmt.Errorf("expected MaxBatchSize to be json.Number, got %T instead", value) + } + i64, err := jtv.Int64() + if err != nil { + return err + } + sv.MaxBatchSize = int32(i64) + } + case "pipelineConfig": if err := awsRestjson1_deserializeDocumentPipelineConfig(&sv.PipelineConfig, value); err != nil { return err diff --git a/service/appsync/serializers.go b/service/appsync/serializers.go index 772abddb760..b057c1e5b16 100644 --- a/service/appsync/serializers.go +++ b/service/appsync/serializers.go @@ -586,6 +586,11 @@ func awsRestjson1_serializeOpDocumentCreateFunctionInput(v *CreateFunctionInput, ok.String(*v.FunctionVersion) } + if v.MaxBatchSize != 0 { + ok := object.Key("maxBatchSize") + ok.Integer(v.MaxBatchSize) + } + if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) @@ -835,6 +840,11 @@ func awsRestjson1_serializeOpDocumentCreateResolverInput(v *CreateResolverInput, ok.String(string(v.Kind)) } + if v.MaxBatchSize != 0 { + ok := object.Key("maxBatchSize") + ok.Integer(v.MaxBatchSize) + } + if v.PipelineConfig != nil { ok := object.Key("pipelineConfig") if err := awsRestjson1_serializeDocumentPipelineConfig(v.PipelineConfig, ok); err != nil { @@ -3543,6 +3553,11 @@ func awsRestjson1_serializeOpDocumentUpdateFunctionInput(v *UpdateFunctionInput, ok.String(*v.FunctionVersion) } + if v.MaxBatchSize != 0 { + ok := object.Key("maxBatchSize") + ok.Integer(v.MaxBatchSize) + } + if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) @@ -3802,6 +3817,11 @@ func awsRestjson1_serializeOpDocumentUpdateResolverInput(v *UpdateResolverInput, ok.String(string(v.Kind)) } + if v.MaxBatchSize != 0 { + ok := object.Key("maxBatchSize") + ok.Integer(v.MaxBatchSize) + } + if v.PipelineConfig != nil { ok := object.Key("pipelineConfig") if err := awsRestjson1_serializeDocumentPipelineConfig(v.PipelineConfig, ok); err != nil { diff --git a/service/appsync/types/types.go b/service/appsync/types/types.go index 6f017cca3c4..a53e6b1bdd9 100644 --- a/service/appsync/types/types.go +++ b/service/appsync/types/types.go @@ -434,6 +434,9 @@ type FunctionConfiguration struct { // version of the template is supported. FunctionVersion *string + // The maximum batching size for a resolver. + MaxBatchSize int32 + // The name of the Function object. Name *string @@ -718,6 +721,9 @@ type Resolver struct { // sources. Kind ResolverKind + // The maximum batching size for a resolver. + MaxBatchSize int32 + // The PipelineConfig. PipelineConfig *PipelineConfig diff --git a/service/autoscalingplans/internal/endpoints/endpoints.go b/service/autoscalingplans/internal/endpoints/endpoints.go index f67ba70a334..28ff7ef1a47 100644 --- a/service/autoscalingplans/internal/endpoints/endpoints.go +++ b/service/autoscalingplans/internal/endpoints/endpoints.go @@ -159,6 +159,9 @@ var defaultPartitions = endpoints.Partitions{ endpoints.EndpointKey{ Region: "ap-southeast-2", }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ap-southeast-3", + }: endpoints.Endpoint{}, endpoints.EndpointKey{ Region: "ca-central-1", }: endpoints.Endpoint{}, diff --git a/service/computeoptimizer/api_op_GetEffectiveRecommendationPreferences.go b/service/computeoptimizer/api_op_GetEffectiveRecommendationPreferences.go index 05c2426d2ca..8c30bb7ae2f 100644 --- a/service/computeoptimizer/api_op_GetEffectiveRecommendationPreferences.go +++ b/service/computeoptimizer/api_op_GetEffectiveRecommendationPreferences.go @@ -50,10 +50,13 @@ type GetEffectiveRecommendationPreferencesOutput struct { // Considers all applicable preferences that you might have set at the resource, // account, and organization level. A status of Active confirms that the preference // is applied in the latest recommendation refresh, and a status of Inactive - // confirms that it's not yet applied. To validate whether the preference is - // applied to your last generated set of recommendations, review the + // confirms that it's not yet applied to recommendations. To validate whether the + // preference is applied to your last generated set of recommendations, review the // effectiveRecommendationPreferences value in the response of the // GetAutoScalingGroupRecommendations and GetEC2InstanceRecommendations actions. + // For more information, see Enhanced infrastructure metrics + // (https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html) + // in the Compute Optimizer User Guide. EnhancedInfrastructureMetrics types.EnhancedInfrastructureMetrics // Metadata pertaining to the operation's result. diff --git a/service/computeoptimizer/api_op_PutRecommendationPreferences.go b/service/computeoptimizer/api_op_PutRecommendationPreferences.go index 26fa5e544e5..a231b03e52d 100644 --- a/service/computeoptimizer/api_op_PutRecommendationPreferences.go +++ b/service/computeoptimizer/api_op_PutRecommendationPreferences.go @@ -42,11 +42,22 @@ type PutRecommendationPreferencesInput struct { ResourceType types.ResourceType // The status of the enhanced infrastructure metrics recommendation preference to - // create or update. A status of Active confirms that the preference is applied in - // the latest recommendation refresh, and a status of Inactive confirms that it's - // not yet applied. + // create or update. Specify the Active status to activate the preference, or + // specify Inactive to deactivate the preference. For more information, see + // Enhanced infrastructure metrics + // (https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html) + // in the Compute Optimizer User Guide. EnhancedInfrastructureMetrics types.EnhancedInfrastructureMetrics + // The status of the inferred workload types recommendation preference to create or + // update. The inferred workload type feature is active by default. To deactivate + // it, create a recommendation preference. Specify the Inactive status to + // deactivate the feature, or specify Active to activate it. For more information, + // see Inferred workload types + // (https://docs.aws.amazon.com/compute-optimizer/latest/ug/inferred-workload-types.html) + // in the Compute Optimizer User Guide. + InferredWorkloadTypes types.InferredWorkloadTypesPreference + // An object that describes the scope of the recommendation preference to create. // You can create recommendation preferences at the organization level (for // management accounts of an organization only), account level, and resource level. @@ -57,8 +68,10 @@ type PutRecommendationPreferencesInput struct { // can create recommendation preferences for Auto Scaling groups only at the // resource level by specifying a scope name of ResourceArn and a scope value of // the Auto Scaling group Amazon Resource Name (ARN). This will configure the - // preference for all instances that are part of the specified the Auto Scaling - // group. + // preference for all instances that are part of the specified Auto Scaling group. + // You also cannot create recommendation preferences at the resource level for + // instances that are part of an Auto Scaling group. You can create recommendation + // preferences at the resource level only for standalone instances. Scope *types.Scope noSmithyDocumentSerde diff --git a/service/computeoptimizer/deserializers.go b/service/computeoptimizer/deserializers.go index e531b536af2..772e1dedfce 100644 --- a/service/computeoptimizer/deserializers.go +++ b/service/computeoptimizer/deserializers.go @@ -2995,6 +2995,11 @@ func awsAwsjson10_deserializeDocumentAutoScalingGroupRecommendation(v **types.Au sv.Finding = types.Finding(jtv) } + case "inferredWorkloadTypes": + if err := awsAwsjson10_deserializeDocumentInferredWorkloadTypes(&sv.InferredWorkloadTypes, value); err != nil { + return err + } + case "lastRefreshTimestamp": if value != nil { switch jtv := value.(type) { @@ -3091,6 +3096,15 @@ func awsAwsjson10_deserializeDocumentAutoScalingGroupRecommendationOption(v **ty return err } + case "migrationEffort": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected MigrationEffort to be of type string, got %T instead", value) + } + sv.MigrationEffort = types.MigrationEffort(jtv) + } + case "performanceRisk": if value != nil { switch jtv := value.(type) { @@ -3497,6 +3511,15 @@ func awsAwsjson10_deserializeDocumentEffectiveRecommendationPreferences(v **type sv.EnhancedInfrastructureMetrics = types.EnhancedInfrastructureMetrics(jtv) } + case "inferredWorkloadTypes": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferredWorkloadTypesPreference to be of type string, got %T instead", value) + } + sv.InferredWorkloadTypes = types.InferredWorkloadTypesPreference(jtv) + } + default: _, _ = key, value @@ -3708,6 +3731,42 @@ func awsAwsjson10_deserializeDocumentGetRecommendationErrors(v *[]types.GetRecom return nil } +func awsAwsjson10_deserializeDocumentInferredWorkloadTypes(v *[]types.InferredWorkloadType, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.InferredWorkloadType + if *v == nil { + cv = []types.InferredWorkloadType{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.InferredWorkloadType + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferredWorkloadType to be of type string, got %T instead", value) + } + col = types.InferredWorkloadType(jtv) + } + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson10_deserializeDocumentInstanceRecommendation(v **types.InstanceRecommendation, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -3776,6 +3835,11 @@ func awsAwsjson10_deserializeDocumentInstanceRecommendation(v **types.InstanceRe return err } + case "inferredWorkloadTypes": + if err := awsAwsjson10_deserializeDocumentInferredWorkloadTypes(&sv.InferredWorkloadTypes, value); err != nil { + return err + } + case "instanceArn": if value != nil { jtv, ok := value.(string) @@ -3935,6 +3999,15 @@ func awsAwsjson10_deserializeDocumentInstanceRecommendationOption(v **types.Inst sv.InstanceType = ptr.String(jtv) } + case "migrationEffort": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected MigrationEffort to be of type string, got %T instead", value) + } + sv.MigrationEffort = types.MigrationEffort(jtv) + } + case "performanceRisk": if value != nil { switch jtv := value.(type) { @@ -5338,6 +5411,15 @@ func awsAwsjson10_deserializeDocumentRecommendationPreferencesDetail(v **types.R sv.EnhancedInfrastructureMetrics = types.EnhancedInfrastructureMetrics(jtv) } + case "inferredWorkloadTypes": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected InferredWorkloadTypesPreference to be of type string, got %T instead", value) + } + sv.InferredWorkloadTypes = types.InferredWorkloadTypesPreference(jtv) + } + case "resourceType": if value != nil { jtv, ok := value.(string) diff --git a/service/computeoptimizer/serializers.go b/service/computeoptimizer/serializers.go index dbd147ebeb9..b3bf6b82e10 100644 --- a/service/computeoptimizer/serializers.go +++ b/service/computeoptimizer/serializers.go @@ -1917,6 +1917,11 @@ func awsAwsjson10_serializeOpDocumentPutRecommendationPreferencesInput(v *PutRec ok.String(string(v.EnhancedInfrastructureMetrics)) } + if len(v.InferredWorkloadTypes) > 0 { + ok := object.Key("inferredWorkloadTypes") + ok.String(string(v.InferredWorkloadTypes)) + } + if len(v.ResourceType) > 0 { ok := object.Key("resourceType") ok.String(string(v.ResourceType)) diff --git a/service/computeoptimizer/types/enums.go b/service/computeoptimizer/types/enums.go index f59d894c761..02d22cffbb0 100644 --- a/service/computeoptimizer/types/enums.go +++ b/service/computeoptimizer/types/enums.go @@ -206,6 +206,9 @@ const ( ExportableAutoScalingGroupFieldRecommendationOptionsEstimatedMonthlySavingsValue ExportableAutoScalingGroupField = "RecommendationOptionsEstimatedMonthlySavingsValue" ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesCpuVendorArchitectures ExportableAutoScalingGroupField = "EffectiveRecommendationPreferencesCpuVendorArchitectures" ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesEnhancedInfrastructureMetrics ExportableAutoScalingGroupField = "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics" + ExportableAutoScalingGroupFieldEffectiveRecommendationPreferencesInferredWorkloadTypes ExportableAutoScalingGroupField = "EffectiveRecommendationPreferencesInferredWorkloadTypes" + ExportableAutoScalingGroupFieldInferredWorkloadTypes ExportableAutoScalingGroupField = "InferredWorkloadTypes" + ExportableAutoScalingGroupFieldRecommendationOptionsMigrationEffort ExportableAutoScalingGroupField = "RecommendationOptionsMigrationEffort" ) // Values returns all known values for ExportableAutoScalingGroupField. Note that @@ -265,6 +268,9 @@ func (ExportableAutoScalingGroupField) Values() []ExportableAutoScalingGroupFiel "RecommendationOptionsEstimatedMonthlySavingsValue", "EffectiveRecommendationPreferencesCpuVendorArchitectures", "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", + "EffectiveRecommendationPreferencesInferredWorkloadTypes", + "InferredWorkloadTypes", + "RecommendationOptionsMigrationEffort", } } @@ -321,6 +327,9 @@ const ( ExportableInstanceFieldRecommendationOptionsEstimatedMonthlySavingsValue ExportableInstanceField = "RecommendationOptionsEstimatedMonthlySavingsValue" ExportableInstanceFieldEffectiveRecommendationPreferencesCpuVendorArchitectures ExportableInstanceField = "EffectiveRecommendationPreferencesCpuVendorArchitectures" ExportableInstanceFieldEffectiveRecommendationPreferencesEnhancedInfrastructureMetrics ExportableInstanceField = "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics" + ExportableInstanceFieldEffectiveRecommendationPreferencesInferredWorkloadTypes ExportableInstanceField = "EffectiveRecommendationPreferencesInferredWorkloadTypes" + ExportableInstanceFieldInferredWorkloadTypes ExportableInstanceField = "InferredWorkloadTypes" + ExportableInstanceFieldRecommendationOptionsMigrationEffort ExportableInstanceField = "RecommendationOptionsMigrationEffort" ) // Values returns all known values for ExportableInstanceField. Note that this can @@ -377,6 +386,9 @@ func (ExportableInstanceField) Values() []ExportableInstanceField { "RecommendationOptionsEstimatedMonthlySavingsValue", "EffectiveRecommendationPreferencesCpuVendorArchitectures", "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", + "EffectiveRecommendationPreferencesInferredWorkloadTypes", + "InferredWorkloadTypes", + "RecommendationOptionsMigrationEffort", } } @@ -593,6 +605,53 @@ func (FindingReasonCode) Values() []FindingReasonCode { } } +type InferredWorkloadType string + +// Enum values for InferredWorkloadType +const ( + InferredWorkloadTypeAmazonEmr InferredWorkloadType = "AmazonEmr" + InferredWorkloadTypeApacheCassandra InferredWorkloadType = "ApacheCassandra" + InferredWorkloadTypeApacheHadoop InferredWorkloadType = "ApacheHadoop" + InferredWorkloadTypeMemcached InferredWorkloadType = "Memcached" + InferredWorkloadTypeNginx InferredWorkloadType = "Nginx" + InferredWorkloadTypePostgreSql InferredWorkloadType = "PostgreSql" + InferredWorkloadTypeRedis InferredWorkloadType = "Redis" +) + +// Values returns all known values for InferredWorkloadType. Note that this can be +// expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (InferredWorkloadType) Values() []InferredWorkloadType { + return []InferredWorkloadType{ + "AmazonEmr", + "ApacheCassandra", + "ApacheHadoop", + "Memcached", + "Nginx", + "PostgreSql", + "Redis", + } +} + +type InferredWorkloadTypesPreference string + +// Enum values for InferredWorkloadTypesPreference +const ( + InferredWorkloadTypesPreferenceActive InferredWorkloadTypesPreference = "Active" + InferredWorkloadTypesPreferenceInactive InferredWorkloadTypesPreference = "Inactive" +) + +// Values returns all known values for InferredWorkloadTypesPreference. Note that +// this can be expanded in the future, and so it is only as up to date as the +// client. The ordering of this slice is not guaranteed to be stable across +// updates. +func (InferredWorkloadTypesPreference) Values() []InferredWorkloadTypesPreference { + return []InferredWorkloadTypesPreference{ + "Active", + "Inactive", + } +} + type InstanceRecommendationFindingReasonCode string // Enum values for InstanceRecommendationFindingReasonCode @@ -878,6 +937,28 @@ func (MetricStatistic) Values() []MetricStatistic { } } +type MigrationEffort string + +// Enum values for MigrationEffort +const ( + MigrationEffortVeryLow MigrationEffort = "VeryLow" + MigrationEffortLow MigrationEffort = "Low" + MigrationEffortMedium MigrationEffort = "Medium" + MigrationEffortHigh MigrationEffort = "High" +) + +// Values returns all known values for MigrationEffort. Note that this can be +// expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (MigrationEffort) Values() []MigrationEffort { + return []MigrationEffort{ + "VeryLow", + "Low", + "Medium", + "High", + } +} + type PlatformDifference string // Enum values for PlatformDifference @@ -909,6 +990,7 @@ type RecommendationPreferenceName string // Enum values for RecommendationPreferenceName const ( RecommendationPreferenceNameEnhancedInfrastructureMetrics RecommendationPreferenceName = "EnhancedInfrastructureMetrics" + RecommendationPreferenceNameInferredWorkloadTypes RecommendationPreferenceName = "InferredWorkloadTypes" ) // Values returns all known values for RecommendationPreferenceName. Note that this @@ -917,6 +999,7 @@ const ( func (RecommendationPreferenceName) Values() []RecommendationPreferenceName { return []RecommendationPreferenceName{ "EnhancedInfrastructureMetrics", + "InferredWorkloadTypes", } } @@ -950,6 +1033,7 @@ const ( ResourceTypeAutoScalingGroup ResourceType = "AutoScalingGroup" ResourceTypeEbsVolume ResourceType = "EbsVolume" ResourceTypeLambdaFunction ResourceType = "LambdaFunction" + ResourceTypeNotApplicable ResourceType = "NotApplicable" ) // Values returns all known values for ResourceType. Note that this can be expanded @@ -961,6 +1045,7 @@ func (ResourceType) Values() []ResourceType { "AutoScalingGroup", "EbsVolume", "LambdaFunction", + "NotApplicable", } } diff --git a/service/computeoptimizer/types/types.go b/service/computeoptimizer/types/types.go index d7b70ac53d0..662490bab4b 100644 --- a/service/computeoptimizer/types/types.go +++ b/service/computeoptimizer/types/types.go @@ -87,6 +87,32 @@ type AutoScalingGroupRecommendation struct { // instance type. Finding Finding + // The applications that might be running on the instances in the Auto Scaling + // group as inferred by Compute Optimizer. Compute Optimizer can infer if one of + // the following applications might be running on the instances: + // + // * AmazonEmr - + // Infers that Amazon EMR might be running on the instances. + // + // * ApacheCassandra - + // Infers that Apache Cassandra might be running on the instances. + // + // * ApacheHadoop + // - Infers that Apache Hadoop might be running on the instances. + // + // * Memcached - + // Infers that Memcached might be running on the instances. + // + // * NGINX - Infers that + // NGINX might be running on the instances. + // + // * PostgreSql - Infers that PostgreSQL + // might be running on the instances. + // + // * Redis - Infers that Redis might be running + // on the instances. + InferredWorkloadTypes []InferredWorkloadType + // The timestamp of when the Auto Scaling group recommendation was last generated. LastRefreshTimestamp *time.Time @@ -111,6 +137,15 @@ type AutoScalingGroupRecommendationOption struct { // An array of objects that describe an Auto Scaling group configuration. Configuration *AutoScalingGroupConfiguration + // The level of effort required to migrate from the current instance type to the + // recommended instance type. For example, the migration effort is Low if Amazon + // EMR is the inferred workload type and an Amazon Web Services Graviton instance + // type is recommended. The migration effort is Medium if a workload type couldn't + // be inferred but an Amazon Web Services Graviton instance type is recommended. + // The migration effort is VeryLow if both the current and recommended instance + // types are of the same CPU architecture. + MigrationEffort MigrationEffort + // The performance risk of the Auto Scaling group configuration recommendation. // Performance risk indicates the likelihood of the recommended instance type not // meeting the resource needs of your workload. Compute Optimizer calculates an @@ -253,9 +288,18 @@ type EffectiveRecommendationPreferences struct { // Describes the activation status of the enhanced infrastructure metrics // preference. A status of Active confirms that the preference is applied in the // latest recommendation refresh, and a status of Inactive confirms that it's not - // yet applied. + // yet applied to recommendations. For more information, see Enhanced + // infrastructure metrics + // (https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html) + // in the Compute Optimizer User Guide. EnhancedInfrastructureMetrics EnhancedInfrastructureMetrics + // Describes the activation status of the inferred workload types preference. A + // status of Active confirms that the preference is applied in the latest + // recommendation refresh. A status of Inactive confirms that it's not yet applied + // to recommendations. + InferredWorkloadTypes InferredWorkloadTypesPreference + noSmithyDocumentSerde } @@ -274,9 +318,10 @@ type EnrollmentFilter struct { noSmithyDocumentSerde } -// Describes the estimated monthly savings amount possible for a given resource -// based on On-Demand instance pricing For more information, see Estimated monthly -// savings and savings opportunities +// Describes the estimated monthly savings amount possible, based on On-Demand +// instance pricing, by adopting Compute Optimizer recommendations for a given +// resource. For more information, see Estimated monthly savings and savings +// opportunities // (https://docs.aws.amazon.com/compute-optimizer/latest/ug/view-ec2-recommendations.html#ec2-savings-calculation) // in the Compute Optimizer User Guide. type EstimatedMonthlySavings struct { @@ -440,8 +485,8 @@ type InstanceRecommendation struct { CurrentInstanceType *string // The risk of the current instance not meeting the performance needs of its - // workloads. The higher the risk, the more likely the current Lambda function - // requires more memory. + // workloads. The higher the risk, the more likely the current instance cannot meet + // the performance requirements of its workload. CurrentPerformanceRisk CurrentPerformanceRisk // An object that describes the effective recommendation preferences for the @@ -590,6 +635,31 @@ type InstanceRecommendation struct { // in the Amazon Elastic Compute Cloud User Guide. FindingReasonCodes []InstanceRecommendationFindingReasonCode + // The applications that might be running on the instance as inferred by Compute + // Optimizer. Compute Optimizer can infer if one of the following applications + // might be running on the instance: + // + // * AmazonEmr - Infers that Amazon EMR might be + // running on the instance. + // + // * ApacheCassandra - Infers that Apache Cassandra might + // be running on the instance. + // + // * ApacheHadoop - Infers that Apache Hadoop might be + // running on the instance. + // + // * Memcached - Infers that Memcached might be running + // on the instance. + // + // * NGINX - Infers that NGINX might be running on the + // instance. + // + // * PostgreSql - Infers that PostgreSQL might be running on the + // instance. + // + // * Redis - Infers that Redis might be running on the instance. + InferredWorkloadTypes []InferredWorkloadType + // The Amazon Resource Name (ARN) of the current instance. InstanceArn *string @@ -620,6 +690,15 @@ type InstanceRecommendationOption struct { // The instance type of the instance recommendation. InstanceType *string + // The level of effort required to migrate from the current instance type to the + // recommended instance type. For example, the migration effort is Low if Amazon + // EMR is the inferred workload type and an Amazon Web Services Graviton instance + // type is recommended. The migration effort is Medium if a workload type couldn't + // be inferred but an Amazon Web Services Graviton instance type is recommended. + // The migration effort is VeryLow if both the current and recommended instance + // types are of the same CPU architecture. + MigrationEffort MigrationEffort + // The performance risk of the instance recommendation option. Performance risk // indicates the likelihood of the recommended instance type not meeting the // resource needs of your workload. Compute Optimizer calculates an individual @@ -825,7 +904,7 @@ type LambdaFunctionRecommendation struct { // The risk of the current Lambda function not meeting the performance needs of its // workloads. The higher the risk, the more likely the current Lambda function - // configuration is underperforming in its workload. + // requires more memory. CurrentPerformanceRisk CurrentPerformanceRisk // The finding classification of the function. Findings for functions include: @@ -1081,9 +1160,18 @@ type RecommendationPreferencesDetail struct { // The status of the enhanced infrastructure metrics recommendation preference. A // status of Active confirms that the preference is applied in the latest // recommendation refresh, and a status of Inactive confirms that it's not yet - // applied. + // applied to recommendations. For more information, see Enhanced infrastructure + // metrics + // (https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html) + // in the Compute Optimizer User Guide. EnhancedInfrastructureMetrics EnhancedInfrastructureMetrics + // The status of the inferred workload types recommendation preference. A status of + // Active confirms that the preference is applied in the latest recommendation + // refresh. A status of Inactive confirms that it's not yet applied to + // recommendations. + InferredWorkloadTypes InferredWorkloadTypesPreference + // The target resource type of the recommendation preference to create. The // Ec2Instance option encompasses standalone instances and instances that are part // of Auto Scaling groups. The AutoScalingGroup option encompasses only instances @@ -1220,11 +1308,13 @@ type S3DestinationConfig struct { // in the Cost Management User Guide. type SavingsOpportunity struct { - // An object that describes the estimated monthly savings amount possible based on - // On-Demand instance pricing. + // An object that describes the estimated monthly savings amount possible, based on + // On-Demand instance pricing, by adopting Compute Optimizer recommendations for a + // given resource. EstimatedMonthlySavings *EstimatedMonthlySavings - // The estimated monthly savings possible as a percentage of monthly cost. + // The estimated monthly savings possible as a percentage of monthly cost by + // adopting Compute Optimizer recommendations for a given resource. SavingsOpportunityPercentage float64 noSmithyDocumentSerde @@ -1240,8 +1330,10 @@ type SavingsOpportunity struct { // can create recommendation preferences for Auto Scaling groups only at the // resource level by specifying a scope name of ResourceArn and a scope value of // the Auto Scaling group Amazon Resource Name (ARN). This will configure the -// preference for all instances that are part of the specified the Auto Scaling -// group. +// preference for all instances that are part of the specified Auto Scaling group. +// You also cannot create recommendation preferences at the resource level for +// instances that are part of an Auto Scaling group. You can create recommendation +// preferences at the resource level only for standalone instances. type Scope struct { // The name of the scope. The following scopes are possible: diff --git a/service/costexplorer/api_op_GetCostAndUsage.go b/service/costexplorer/api_op_GetCostAndUsage.go index f10f370ed47..e51a5cf694c 100644 --- a/service/costexplorer/api_op_GetCostAndUsage.go +++ b/service/costexplorer/api_op_GetCostAndUsage.go @@ -75,6 +75,9 @@ type GetCostAndUsageInput struct { // that account's usage of that service. You can nest Expression objects to define // any combination of dimension filters. For more information, see Expression // (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html). + // The default values are EQUALS and CASE_SENSITIVE. Valid values for MatchOptions + // for Dimensions are EQUALS and CASE_SENSITIVE. Valid values for MatchOptions for + // CostCategories and Tags are EQUALS, ABSENT, and CASE_SENSITIVE. Filter *types.Expression // You can group Amazon Web Services costs using up to two different groups, either diff --git a/service/costexplorer/api_op_GetCostAndUsageWithResources.go b/service/costexplorer/api_op_GetCostAndUsageWithResources.go index f10468bbbae..f27cc68df70 100644 --- a/service/costexplorer/api_op_GetCostAndUsageWithResources.go +++ b/service/costexplorer/api_op_GetCostAndUsageWithResources.go @@ -49,7 +49,10 @@ type GetCostAndUsageWithResourcesInput struct { // The GetCostAndUsageWithResources operation requires that you either group by or // filter by a ResourceId. It requires the Expression // (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)"SERVICE - // = Amazon Elastic Compute Cloud - Compute" in the filter. + // = Amazon Elastic Compute Cloud - Compute" in the filter. The default values are + // EQUALS and CASE_SENSITIVE. Valid values for MatchOptions for Dimensions are + // EQUALS and CASE_SENSITIVE. Valid values for MatchOptions for CostCategories and + // Tags are EQUALS, ABSENT, and CASE_SENSITIVE. // // This member is required. Filter *types.Expression diff --git a/service/costexplorer/api_op_GetDimensionValues.go b/service/costexplorer/api_op_GetDimensionValues.go index 08da0332cac..10d4831fffc 100644 --- a/service/costexplorer/api_op_GetDimensionValues.go +++ b/service/costexplorer/api_op_GetDimensionValues.go @@ -31,7 +31,8 @@ func (c *Client) GetDimensionValues(ctx context.Context, params *GetDimensionVal type GetDimensionValuesInput struct { // The name of the dimension. Each Dimension is available for a different Context. - // For more information, see Context. + // For more information, see Context + // (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetDimensionValues.html#awscostmanagement-GetDimensionValues-request-Context). // // This member is required. Dimension types.Dimension diff --git a/service/costexplorer/api_op_GetReservationCoverage.go b/service/costexplorer/api_op_GetReservationCoverage.go index 9c8bdbb96bf..44c1ff0309c 100644 --- a/service/costexplorer/api_op_GetReservationCoverage.go +++ b/service/costexplorer/api_op_GetReservationCoverage.go @@ -108,9 +108,8 @@ type GetReservationCoverageInput struct { // GetReservationCoverage uses the same Expression // (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension. - // You can nest only one level deep. If there are multiple values for a dimension, - // they are OR'd together. If you don't provide a SERVICE filter, Cost Explorer - // defaults to EC2. Cost category is also supported. + // You can nest only one level deep. If you don't provide a SERVICE filter, Cost + // Explorer defaults to EC2. Cost category is also supported. Filter *types.Expression // The granularity of the Amazon Web Services cost data for the reservation. Valid diff --git a/service/costexplorer/api_op_GetReservationUtilization.go b/service/costexplorer/api_op_GetReservationUtilization.go index bf34c99459b..2d1d727853f 100644 --- a/service/costexplorer/api_op_GetReservationUtilization.go +++ b/service/costexplorer/api_op_GetReservationUtilization.go @@ -70,8 +70,7 @@ type GetReservationUtilizationInput struct { // GetReservationUtilization uses the same Expression // (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension, - // and nesting is supported up to only one level deep. If there are multiple values - // for a dimension, they are OR'd together. + // and nesting is supported up to only one level deep. Filter *types.Expression // If GroupBy is set, Granularity can't be set. If Granularity isn't set, the diff --git a/service/costexplorer/api_op_GetSavingsPlansCoverage.go b/service/costexplorer/api_op_GetSavingsPlansCoverage.go index 3d599089b5a..9f8634e504a 100644 --- a/service/costexplorer/api_op_GetSavingsPlansCoverage.go +++ b/service/costexplorer/api_op_GetSavingsPlansCoverage.go @@ -27,8 +27,12 @@ import ( // // * INSTANCE_FAMILY // -// To determine valid -// values for a dimension, use the GetDimensionValues operation. +// GetSavingsPlansCoverage +// doesn't support filtering by tags. GetSavingsPlansCoverage also doesn't support +// the OR operator between filter dimensions. For the full request syntax with +// supported parameters, see Examples +// (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetSavingsPlansCoverage.html#API_GetSavingsPlansCoverage_Examples). +// To determine valid values for a dimension, use the GetDimensionValues operation. func (c *Client) GetSavingsPlansCoverage(ctx context.Context, params *GetSavingsPlansCoverageInput, optFns ...func(*Options)) (*GetSavingsPlansCoverageOutput, error) { if params == nil { params = &GetSavingsPlansCoverageInput{} @@ -69,8 +73,7 @@ type GetSavingsPlansCoverageInput struct { // Expression // (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension. - // If there are multiple values for a dimension, they are OR'd together. Cost - // category is also supported. + // Cost category is supported. Tags are not supported. Filter *types.Expression // The granularity of the Amazon Web Services cost data for your Savings Plans. diff --git a/service/costexplorer/api_op_GetSavingsPlansUtilization.go b/service/costexplorer/api_op_GetSavingsPlansUtilization.go index 85c8122ad29..21f69abb84f 100644 --- a/service/costexplorer/api_op_GetSavingsPlansUtilization.go +++ b/service/costexplorer/api_op_GetSavingsPlansUtilization.go @@ -15,7 +15,11 @@ import ( // daily or monthly granularity. Management account in an organization have access // to member accounts. You can use GetDimensionValues in SAVINGS_PLANS to determine // the possible dimension values. You cannot group by any dimension values for -// GetSavingsPlansUtilization. +// GetSavingsPlansUtilization. GetSavingsPlansUtilization doesn't support filtering +// by tags. GetSavingsPlansUtilization also doesn't support the OR operator between +// filter dimensions. For the full request syntax with supported parameters, see +// Examples +// (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetSavingsPlansUtilization.html#API_GetSavingsPlansUtilization_Examples). func (c *Client) GetSavingsPlansUtilization(ctx context.Context, params *GetSavingsPlansUtilizationInput, optFns ...func(*Options)) (*GetSavingsPlansUtilizationOutput, error) { if params == nil { params = &GetSavingsPlansUtilizationInput{} @@ -61,6 +65,7 @@ type GetSavingsPlansUtilizationInput struct { // Expression // (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension. + // Filtering by tags isn't supported. Filter *types.Expression // The granularity of the Amazon Web Services utillization data for your Savings diff --git a/service/costexplorer/api_op_GetSavingsPlansUtilizationDetails.go b/service/costexplorer/api_op_GetSavingsPlansUtilizationDetails.go index 6d010074b1e..e0f895b69ad 100644 --- a/service/costexplorer/api_op_GetSavingsPlansUtilizationDetails.go +++ b/service/costexplorer/api_op_GetSavingsPlansUtilizationDetails.go @@ -19,6 +19,11 @@ import ( // GetSavingsPlanUtilizationDetails by providing individual dates. You can use // GetDimensionValues in SAVINGS_PLANS to determine the possible dimension values. // GetSavingsPlanUtilizationDetails internally groups data by SavingsPlansArn. +// GetSavingsPlansUtilizationDetails doesn't support filtering by tags. +// GetSavingsPlansUtilizationDetails also doesn't support the OR operator between +// filter dimensions. For the full request syntax with supported parameters, see +// Examples +// (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetSavingsPlansUtilizationDetails.html#API_GetSavingsPlansUtilizationDetails_Examples). func (c *Client) GetSavingsPlansUtilizationDetails(ctx context.Context, params *GetSavingsPlansUtilizationDetailsInput, optFns ...func(*Options)) (*GetSavingsPlansUtilizationDetailsOutput, error) { if params == nil { params = &GetSavingsPlansUtilizationDetailsInput{} @@ -64,6 +69,7 @@ type GetSavingsPlansUtilizationDetailsInput struct { // GetSavingsPlansUtilizationDetails uses the same Expression // (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension. + // Filtering by tags isn't supported. Filter *types.Expression // The number of items to be returned in a response. The default is 20, with a diff --git a/service/costexplorer/types/types.go b/service/costexplorer/types/types.go index e3c409f21ef..9fbbfc06889 100644 --- a/service/costexplorer/types/types.go +++ b/service/costexplorer/types/types.go @@ -764,8 +764,8 @@ type ElastiCacheInstanceDetails struct { noSmithyDocumentSerde } -// Details about the Amazon ES instances that Amazon Web Services recommends that -// you purchase. +// Details about the Amazon OpenSearch Service instances that Amazon Web Services +// recommends that you purchase. type ESInstanceDetails struct { // Determines whether the recommendation is for a current-generation instance. @@ -906,7 +906,8 @@ type InstanceDetails struct { // The Amazon EC2 instances that Amazon Web Services recommends that you purchase. EC2InstanceDetails *EC2InstanceDetails - // The Amazon ES instances that Amazon Web Services recommends that you purchase. + // The Amazon OpenSearch Service instances that Amazon Web Services recommends that + // you purchase. ESInstanceDetails *ESInstanceDetails // The ElastiCache instances that Amazon Web Services recommends that you purchase. diff --git a/service/databasemigrationservice/internal/endpoints/endpoints.go b/service/databasemigrationservice/internal/endpoints/endpoints.go index f280dc61f2d..deeee5d80ec 100644 --- a/service/databasemigrationservice/internal/endpoints/endpoints.go +++ b/service/databasemigrationservice/internal/endpoints/endpoints.go @@ -399,6 +399,24 @@ var defaultPartitions = endpoints.Partitions{ }, Deprecated: aws.TrueTernary, }, + endpoints.EndpointKey{ + Region: "us-iso-west-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "us-iso-west-1", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "dms.us-iso-west-1.c2s.ic.gov", + }, + endpoints.EndpointKey{ + Region: "us-iso-west-1-fips", + }: endpoints.Endpoint{ + Hostname: "dms.us-iso-west-1.c2s.ic.gov", + CredentialScope: endpoints.CredentialScope{ + Region: "us-iso-west-1", + }, + Deprecated: aws.TrueTernary, + }, }, }, { diff --git a/service/databrew/api_op_CreateProfileJob.go b/service/databrew/api_op_CreateProfileJob.go index d047dc746c4..5906ac3cb62 100644 --- a/service/databrew/api_op_CreateProfileJob.go +++ b/service/databrew/api_op_CreateProfileJob.go @@ -40,8 +40,8 @@ type CreateProfileJobInput struct { // This member is required. Name *string - // Represents an Amazon S3 location (bucket name and object key) where DataBrew can - // read input data, or write output from a job. + // Represents an Amazon S3 location (bucket name, bucket owner, and object key) + // where DataBrew can read input data, or write output from a job. // // This member is required. OutputLocation *types.S3Location diff --git a/service/databrew/api_op_UpdateProfileJob.go b/service/databrew/api_op_UpdateProfileJob.go index 4b7d750c99f..56ebd4252aa 100644 --- a/service/databrew/api_op_UpdateProfileJob.go +++ b/service/databrew/api_op_UpdateProfileJob.go @@ -34,8 +34,8 @@ type UpdateProfileJobInput struct { // This member is required. Name *string - // Represents an Amazon S3 location (bucket name and object key) where DataBrew can - // read input data, or write output from a job. + // Represents an Amazon S3 location (bucket name, bucket owner, and object key) + // where DataBrew can read input data, or write output from a job. // // This member is required. OutputLocation *types.S3Location diff --git a/service/databrew/deserializers.go b/service/databrew/deserializers.go index 2369c3aefde..c671c12372d 100644 --- a/service/databrew/deserializers.go +++ b/service/databrew/deserializers.go @@ -11493,6 +11493,15 @@ func awsRestjson1_deserializeDocumentS3Location(v **types.S3Location, value inte sv.Bucket = ptr.String(jtv) } + case "BucketOwner": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected BucketOwner to be of type string, got %T instead", value) + } + sv.BucketOwner = ptr.String(jtv) + } + case "Key": if value != nil { jtv, ok := value.(string) diff --git a/service/databrew/serializers.go b/service/databrew/serializers.go index d04557d579a..0abb150e18c 100644 --- a/service/databrew/serializers.go +++ b/service/databrew/serializers.go @@ -4361,6 +4361,11 @@ func awsRestjson1_serializeDocumentS3Location(v *types.S3Location, value smithyj ok.String(*v.Bucket) } + if v.BucketOwner != nil { + ok := object.Key("BucketOwner") + ok.String(*v.BucketOwner) + } + if v.Key != nil { ok := object.Key("Key") ok.String(*v.Key) diff --git a/service/databrew/types/types.go b/service/databrew/types/types.go index 82d767e5ec7..24fc72acb79 100644 --- a/service/databrew/types/types.go +++ b/service/databrew/types/types.go @@ -120,8 +120,8 @@ type DatabaseInputDefinition struct { // the input for DataBrew projects and jobs. QueryString *string - // Represents an Amazon S3 location (bucket name and object key) where DataBrew can - // read input data, or write output from a job. + // Represents an Amazon S3 location (bucket name, bucket owner, and object key) + // where DataBrew can read input data, or write output from a job. TempDirectory *S3Location noSmithyDocumentSerde @@ -978,7 +978,8 @@ type Rule struct { // CheckExpression starts with a column reference, then ColumnSelectors in the rule // should be null. If ColumnSelectors has been defined, then there should be no // columnn reference in the left side of a condition, for example, is_between :val1 - // and :val2. + // and :val2. For more information, see Available checks + // (https://docs.aws.amazon.com/databrew/latest/dg/profile.data-quality-available-checks.html) // // This member is required. CheckExpression *string @@ -1056,8 +1057,8 @@ type RulesetItem struct { noSmithyDocumentSerde } -// Represents an Amazon S3 location (bucket name and object key) where DataBrew can -// read input data, or write output from a job. +// Represents an Amazon S3 location (bucket name, bucket owner, and object key) +// where DataBrew can read input data, or write output from a job. type S3Location struct { // The Amazon S3 bucket name. @@ -1065,6 +1066,9 @@ type S3Location struct { // This member is required. Bucket *string + // The Amazon Web Services account ID of the bucket owner. + BucketOwner *string + // The unique name of the object in the bucket. Key *string diff --git a/service/ec2/api_op_CreateCapacityReservation.go b/service/ec2/api_op_CreateCapacityReservation.go index 87d5b293b8a..98333e6d5c5 100644 --- a/service/ec2/api_op_CreateCapacityReservation.go +++ b/service/ec2/api_op_CreateCapacityReservation.go @@ -140,6 +140,13 @@ type CreateCapacityReservationInput struct { // Reservation. OutpostArn *string + // The Amazon Resource Name (ARN) of the cluster placement group in which to create + // the Capacity Reservation. For more information, see Capacity Reservations for + // cluster placement groups + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cr-cpg.html) in the Amazon + // EC2 User Guide. + PlacementGroupArn *string + // The tags to apply to the Capacity Reservation during launch. TagSpecifications []types.TagSpecification diff --git a/service/ec2/api_op_CreateFleet.go b/service/ec2/api_op_CreateFleet.go index 74310d797be..8aafea79191 100644 --- a/service/ec2/api_op_CreateFleet.go +++ b/service/ec2/api_op_CreateFleet.go @@ -107,7 +107,7 @@ type CreateFleetInput struct { // that could not be launched. // // For more information, see EC2 Fleet request types - // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-configuration-strategies.html#ec2-fleet-request-type) + // (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/ec2-fleet-request-type.html) // in the Amazon EC2 User Guide. Type types.FleetType diff --git a/service/ec2/api_op_CreateNetworkInterface.go b/service/ec2/api_op_CreateNetworkInterface.go index b33e45aa6ec..fbbef5bf91d 100644 --- a/service/ec2/api_op_CreateNetworkInterface.go +++ b/service/ec2/api_op_CreateNetworkInterface.go @@ -60,9 +60,7 @@ type CreateNetworkInterfaceInput struct { // (EFA), specify efa. For more information, see Elastic Fabric Adapter // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html) in the Amazon // Elastic Compute Cloud User Guide. To create a trunk network interface, specify - // efa. For more information, see Network interface trunking - // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/eni-trunking.html) in the - // Amazon Elastic Compute Cloud User Guide. + // trunk. InterfaceType types.NetworkInterfaceCreationType // The number of IPv4 prefixes that Amazon Web Services automatically assigns to diff --git a/service/ec2/api_op_DescribeAccountAttributes.go b/service/ec2/api_op_DescribeAccountAttributes.go index c939a076d06..1a50aadaae1 100644 --- a/service/ec2/api_op_DescribeAccountAttributes.go +++ b/service/ec2/api_op_DescribeAccountAttributes.go @@ -11,14 +11,14 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Describes attributes of your AWS account. The following are the supported -// account attributes: +// Describes attributes of your Amazon Web Services account. The following are the +// supported account attributes: // -// * supported-platforms: Indicates whether your account can -// launch instances into EC2-Classic and EC2-VPC, or only into EC2-VPC. +// * supported-platforms: Indicates whether your +// account can launch instances into EC2-Classic and EC2-VPC, or only into +// EC2-VPC. // -// * -// default-vpc: The ID of the default VPC for your account, or none. +// * default-vpc: The ID of the default VPC for your account, or none. // // * // max-instances: This attribute is no longer supported. The returned value does diff --git a/service/ec2/api_op_DescribeCapacityReservations.go b/service/ec2/api_op_DescribeCapacityReservations.go index 0e7f2c9b6f4..1e68143dcd7 100644 --- a/service/ec2/api_op_DescribeCapacityReservations.go +++ b/service/ec2/api_op_DescribeCapacityReservations.go @@ -49,14 +49,11 @@ type DescribeCapacityReservationsInput struct { // * owner-id - The ID of the Amazon Web // Services account that owns the Capacity Reservation. // - // * availability-zone-id - - // The Availability Zone ID of the Capacity Reservation. - // // * instance-platform - The // type of operating system for which the Capacity Reservation reserves // capacity. // - // * availability-zone - The Availability Zone ID of the Capacity + // * availability-zone - The Availability Zone of the Capacity // Reservation. // // * tenancy - Indicates the tenancy of the Capacity Reservation. A diff --git a/service/ec2/api_op_DescribeFastLaunchImages.go b/service/ec2/api_op_DescribeFastLaunchImages.go new file mode 100644 index 00000000000..fab68e5f6e8 --- /dev/null +++ b/service/ec2/api_op_DescribeFastLaunchImages.go @@ -0,0 +1,245 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package ec2 + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/ec2/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Describe details for Windows AMIs that are configured for faster launching. +func (c *Client) DescribeFastLaunchImages(ctx context.Context, params *DescribeFastLaunchImagesInput, optFns ...func(*Options)) (*DescribeFastLaunchImagesOutput, error) { + if params == nil { + params = &DescribeFastLaunchImagesInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DescribeFastLaunchImages", params, optFns, c.addOperationDescribeFastLaunchImagesMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DescribeFastLaunchImagesOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DescribeFastLaunchImagesInput struct { + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have the + // required permissions, the error response is DryRunOperation. Otherwise, it is + // UnauthorizedOperation. + DryRun *bool + + // Use the following filters to streamline results. + // + // * resource-type - The resource + // type for pre-provisioning. + // + // * launch-template - The launch template that is + // associated with the pre-provisioned Windows AMI. + // + // * owner-id - The owner ID for + // the pre-provisioning resource. + // + // * state - The current state of fast launching + // for the Windows AMI. + Filters []types.Filter + + // Details for one or more Windows AMI image IDs. + ImageIds []string + + // The maximum number of results to return in a single call. To retrieve the + // remaining results, make another request with the returned NextToken value. If + // this parameter is not specified, then all results are returned. + MaxResults *int32 + + // The token for the next set of results. + NextToken *string + + noSmithyDocumentSerde +} + +type DescribeFastLaunchImagesOutput struct { + + // A collection of details about the fast-launch enabled Windows images that meet + // the requested criteria. + FastLaunchImages []types.DescribeFastLaunchImagesSuccessItem + + // The token to use for the next set of results. This value is null when there are + // no more results to return. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDescribeFastLaunchImagesMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsEc2query_serializeOpDescribeFastLaunchImages{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsEc2query_deserializeOpDescribeFastLaunchImages{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeFastLaunchImages(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +// DescribeFastLaunchImagesAPIClient is a client that implements the +// DescribeFastLaunchImages operation. +type DescribeFastLaunchImagesAPIClient interface { + DescribeFastLaunchImages(context.Context, *DescribeFastLaunchImagesInput, ...func(*Options)) (*DescribeFastLaunchImagesOutput, error) +} + +var _ DescribeFastLaunchImagesAPIClient = (*Client)(nil) + +// DescribeFastLaunchImagesPaginatorOptions is the paginator options for +// DescribeFastLaunchImages +type DescribeFastLaunchImagesPaginatorOptions struct { + // The maximum number of results to return in a single call. To retrieve the + // remaining results, make another request with the returned NextToken value. If + // this parameter is not specified, then all results are returned. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// DescribeFastLaunchImagesPaginator is a paginator for DescribeFastLaunchImages +type DescribeFastLaunchImagesPaginator struct { + options DescribeFastLaunchImagesPaginatorOptions + client DescribeFastLaunchImagesAPIClient + params *DescribeFastLaunchImagesInput + nextToken *string + firstPage bool +} + +// NewDescribeFastLaunchImagesPaginator returns a new +// DescribeFastLaunchImagesPaginator +func NewDescribeFastLaunchImagesPaginator(client DescribeFastLaunchImagesAPIClient, params *DescribeFastLaunchImagesInput, optFns ...func(*DescribeFastLaunchImagesPaginatorOptions)) *DescribeFastLaunchImagesPaginator { + if params == nil { + params = &DescribeFastLaunchImagesInput{} + } + + options := DescribeFastLaunchImagesPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &DescribeFastLaunchImagesPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *DescribeFastLaunchImagesPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next DescribeFastLaunchImages page. +func (p *DescribeFastLaunchImagesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*DescribeFastLaunchImagesOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.DescribeFastLaunchImages(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +func newServiceMetadataMiddleware_opDescribeFastLaunchImages(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "ec2", + OperationName: "DescribeFastLaunchImages", + } +} diff --git a/service/ec2/api_op_DescribeLaunchTemplateVersions.go b/service/ec2/api_op_DescribeLaunchTemplateVersions.go index fd269ef4e97..be6de09b7a2 100644 --- a/service/ec2/api_op_DescribeLaunchTemplateVersions.go +++ b/service/ec2/api_op_DescribeLaunchTemplateVersions.go @@ -47,21 +47,41 @@ type DescribeLaunchTemplateVersionsInput struct { // * ebs-optimized - A boolean that indicates whether the instance is // optimized for Amazon EBS I/O. // - // * iam-instance-profile - The ARN of the IAM - // instance profile. + // * http-endpoint - Indicates whether the HTTP + // metadata endpoint on your instances is enabled (enabled | disabled). + // + // * + // http-protocol-ipv4 - Indicates whether the IPv4 endpoint for the instance + // metadata service is enabled (enabled | disabled). + // + // * host-resource-group-arn - + // The ARN of the host resource group in which to launch the instances. + // + // * + // http-tokens - The state of token usage for your instance metadata requests + // (optional | required). + // + // * iam-instance-profile - The ARN of the IAM instance + // profile. // // * image-id - The ID of the AMI. // - // * instance-type - The - // instance type. + // * instance-type - The instance + // type. // - // * is-default-version - A boolean that indicates whether the - // launch template version is the default version. + // * is-default-version - A boolean that indicates whether the launch + // template version is the default version. // // * kernel-id - The kernel ID. // // * - // ram-disk-id - The RAM disk ID. + // license-configuration-arn - The ARN of the license configuration. + // + // * + // network-card-index - The index of the network card. + // + // * ram-disk-id - The RAM + // disk ID. Filters []types.Filter // The ID of the launch template. To describe one or more versions of a specified diff --git a/service/ec2/api_op_DescribePlacementGroups.go b/service/ec2/api_op_DescribePlacementGroups.go index 4ab51ca0ff1..b1f67d43ac0 100644 --- a/service/ec2/api_op_DescribePlacementGroups.go +++ b/service/ec2/api_op_DescribePlacementGroups.go @@ -42,22 +42,24 @@ type DescribePlacementGroupsInput struct { // // * group-name - The name of the placement group. // - // * state - The - // state of the placement group (pending | available | deleting | deleted). + // * group-arn - The + // Amazon Resource Name (ARN) of the placement group. // - // * - // strategy - The strategy of the placement group (cluster | spread | - // partition). + // * state - The state of the + // placement group (pending | available | deleting | deleted). // - // * tag: - The key/value combination of a tag assigned to the - // resource. Use the tag key in the filter name and the tag value as the filter - // value. For example, to find all resources that have a tag with the key Owner and - // the value TeamA, specify tag:Owner for the filter name and TeamA for the filter - // value. + // * strategy - The + // strategy of the placement group (cluster | spread | partition). // - // * tag-key - The key of a tag assigned to the resource. Use this filter - // to find all resources that have a tag with a specific key, regardless of the tag - // value. + // * tag: - The + // key/value combination of a tag assigned to the resource. Use the tag key in the + // filter name and the tag value as the filter value. For example, to find all + // resources that have a tag with the key Owner and the value TeamA, specify + // tag:Owner for the filter name and TeamA for the filter value. + // + // * tag-key - The + // key of a tag assigned to the resource. Use this filter to find all resources + // that have a tag with a specific key, regardless of the tag value. Filters []types.Filter // The IDs of the placement groups. diff --git a/service/ec2/api_op_DescribeSnapshotTierStatus.go b/service/ec2/api_op_DescribeSnapshotTierStatus.go index d755a1599ce..8e014eed907 100644 --- a/service/ec2/api_op_DescribeSnapshotTierStatus.go +++ b/service/ec2/api_op_DescribeSnapshotTierStatus.go @@ -44,8 +44,10 @@ type DescribeSnapshotTierStatusInput struct { // volume the snapshot is for. // // * last-tiering-operation - The state of the last - // archive or restore action. (archiving | archival_error | archival_complete | - // restoring | restore_error | restore_complete) + // archive or restore action. (archival-in-progress | archival-completed | + // archival-failed | permanent-restore-in-progress | permanent-restore-completed | + // permanent-restore-failed | temporary-restore-in-progress | + // temporary-restore-completed | temporary-restore-failed) Filters []types.Filter // The maximum number of results to return with a single call. To retrieve the diff --git a/service/ec2/api_op_DescribeStaleSecurityGroups.go b/service/ec2/api_op_DescribeStaleSecurityGroups.go index 21ca1034698..cca1ced2e5f 100644 --- a/service/ec2/api_op_DescribeStaleSecurityGroups.go +++ b/service/ec2/api_op_DescribeStaleSecurityGroups.go @@ -13,9 +13,9 @@ import ( ) // [VPC only] Describes the stale security group rules for security groups in a -// specified VPC. Rules are stale when they reference a deleted security group in a -// peer VPC, or a security group in a peer VPC for which the VPC peering connection -// has been deleted. +// specified VPC. Rules are stale when they reference a deleted security group in +// the same VPC or in a peer VPC, or if they reference a security group in a peer +// VPC for which the VPC peering connection has been deleted. func (c *Client) DescribeStaleSecurityGroups(ctx context.Context, params *DescribeStaleSecurityGroupsInput, optFns ...func(*Options)) (*DescribeStaleSecurityGroupsOutput, error) { if params == nil { params = &DescribeStaleSecurityGroupsInput{} diff --git a/service/ec2/api_op_DisableFastLaunch.go b/service/ec2/api_op_DisableFastLaunch.go new file mode 100644 index 00000000000..67721ca2d97 --- /dev/null +++ b/service/ec2/api_op_DisableFastLaunch.go @@ -0,0 +1,164 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package ec2 + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/ec2/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" + "time" +) + +// Discontinue faster launching for a Windows AMI, and clean up existing +// pre-provisioned snapshots. When you disable faster launching, the AMI uses the +// standard launch process for each instance. All pre-provisioned snapshots must be +// removed before you can enable faster launching again. +func (c *Client) DisableFastLaunch(ctx context.Context, params *DisableFastLaunchInput, optFns ...func(*Options)) (*DisableFastLaunchOutput, error) { + if params == nil { + params = &DisableFastLaunchInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DisableFastLaunch", params, optFns, c.addOperationDisableFastLaunchMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DisableFastLaunchOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DisableFastLaunchInput struct { + + // The ID of the image for which you’re turning off faster launching, and removing + // pre-provisioned snapshots. + // + // This member is required. + ImageId *string + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have the + // required permissions, the error response is DryRunOperation. Otherwise, it is + // UnauthorizedOperation. + DryRun *bool + + // Forces the image settings to turn off faster launching for your Windows AMI. + // This parameter overrides any errors that are encountered while cleaning up + // resources in your account. + Force *bool + + noSmithyDocumentSerde +} + +type DisableFastLaunchOutput struct { + + // The ID of the image for which faster-launching has been turned off. + ImageId *string + + // The launch template that was used to launch Windows instances from + // pre-provisioned snapshots. + LaunchTemplate *types.FastLaunchLaunchTemplateSpecificationResponse + + // The maximum number of parallel instances to launch for creating resources. + MaxParallelLaunches *int32 + + // The owner of the Windows AMI for which faster launching was turned off. + OwnerId *string + + // The pre-provisioning resource type that must be cleaned after turning off faster + // launching for the Windows AMI. Supported values include: snapshot. + ResourceType types.FastLaunchResourceType + + // Parameters that were used for faster launching for the Windows AMI before faster + // launching was turned off. This informs the clean-up process. + SnapshotConfiguration *types.FastLaunchSnapshotConfigurationResponse + + // The current state of faster launching for the specified Windows AMI. + State types.FastLaunchStateCode + + // The reason that the state changed for faster launching for the Windows AMI. + StateTransitionReason *string + + // The time that the state changed for faster launching for the Windows AMI. + StateTransitionTime *time.Time + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDisableFastLaunchMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsEc2query_serializeOpDisableFastLaunch{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsEc2query_deserializeOpDisableFastLaunch{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpDisableFastLaunchValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDisableFastLaunch(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opDisableFastLaunch(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "ec2", + OperationName: "DisableFastLaunch", + } +} diff --git a/service/ec2/api_op_EnableFastLaunch.go b/service/ec2/api_op_EnableFastLaunch.go new file mode 100644 index 00000000000..640e970e666 --- /dev/null +++ b/service/ec2/api_op_EnableFastLaunch.go @@ -0,0 +1,179 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package ec2 + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/ec2/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" + "time" +) + +// When you enable faster launching for a Windows AMI, images are pre-provisioned, +// using snapshots to launch instances up to 65% faster. To create the optimized +// Windows image, Amazon EC2 launches an instance and runs through Sysprep steps, +// rebooting as required. Then it creates a set of reserved snapshots that are used +// for subsequent launches. The reserved snapshots are automatically replenished as +// they are used, depending on your settings for launch frequency. +func (c *Client) EnableFastLaunch(ctx context.Context, params *EnableFastLaunchInput, optFns ...func(*Options)) (*EnableFastLaunchOutput, error) { + if params == nil { + params = &EnableFastLaunchInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "EnableFastLaunch", params, optFns, c.addOperationEnableFastLaunchMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*EnableFastLaunchOutput) + out.ResultMetadata = metadata + return out, nil +} + +type EnableFastLaunchInput struct { + + // The ID of the image for which you’re enabling faster launching. + // + // This member is required. + ImageId *string + + // Checks whether you have the required permissions for the action, without + // actually making the request, and provides an error response. If you have the + // required permissions, the error response is DryRunOperation. Otherwise, it is + // UnauthorizedOperation. + DryRun *bool + + // The launch template to use when launching Windows instances from pre-provisioned + // snapshots. Launch template parameters can include either the name or ID of the + // launch template, but not both. + LaunchTemplate *types.FastLaunchLaunchTemplateSpecificationRequest + + // The maximum number of parallel instances to launch for creating resources. + MaxParallelLaunches *int32 + + // The type of resource to use for pre-provisioning the Windows AMI for faster + // launching. Supported values include: snapshot, which is the default value. + ResourceType *string + + // Configuration settings for creating and managing the snapshots that are used for + // pre-provisioning the Windows AMI for faster launching. The associated + // ResourceType must be snapshot. + SnapshotConfiguration *types.FastLaunchSnapshotConfigurationRequest + + noSmithyDocumentSerde +} + +type EnableFastLaunchOutput struct { + + // The image ID that identifies the Windows AMI for which faster launching was + // enabled. + ImageId *string + + // The launch template that is used when launching Windows instances from + // pre-provisioned snapshots. + LaunchTemplate *types.FastLaunchLaunchTemplateSpecificationResponse + + // The maximum number of parallel instances to launch for creating resources. + MaxParallelLaunches *int32 + + // The owner ID for the Windows AMI for which faster launching was enabled. + OwnerId *string + + // The type of resource that was defined for pre-provisioning the Windows AMI for + // faster launching. + ResourceType types.FastLaunchResourceType + + // The configuration settings that were defined for creating and managing the + // pre-provisioned snapshots for faster launching of the Windows AMI. This property + // is returned when the associated resourceType is snapshot. + SnapshotConfiguration *types.FastLaunchSnapshotConfigurationResponse + + // The current state of faster launching for the specified Windows AMI. + State types.FastLaunchStateCode + + // The reason that the state changed for faster launching for the Windows AMI. + StateTransitionReason *string + + // The time that the state changed for faster launching for the Windows AMI. + StateTransitionTime *time.Time + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationEnableFastLaunchMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsEc2query_serializeOpEnableFastLaunch{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsEc2query_deserializeOpEnableFastLaunch{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpEnableFastLaunchValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opEnableFastLaunch(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opEnableFastLaunch(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "ec2", + OperationName: "EnableFastLaunch", + } +} diff --git a/service/ec2/api_op_ImportImage.go b/service/ec2/api_op_ImportImage.go index 5950f308b6b..c1412387a5f 100644 --- a/service/ec2/api_op_ImportImage.go +++ b/service/ec2/api_op_ImportImage.go @@ -33,7 +33,7 @@ func (c *Client) ImportImage(ctx context.Context, params *ImportImageInput, optF type ImportImageInput struct { - // The architecture of the virtual machine. Valid values: i386 | x86_64 | arm64 + // The architecture of the virtual machine. Valid values: i386 | x86_64 Architecture *string // The boot mode of the virtual machine. diff --git a/service/ec2/api_op_ModifyInstanceMetadataOptions.go b/service/ec2/api_op_ModifyInstanceMetadataOptions.go index 200e0ab46f7..2c662f063d2 100644 --- a/service/ec2/api_op_ModifyInstanceMetadataOptions.go +++ b/service/ec2/api_op_ModifyInstanceMetadataOptions.go @@ -48,7 +48,7 @@ type ModifyInstanceMetadataOptionsInput struct { // UnauthorizedOperation. DryRun *bool - // Enables or disables the HTTP metadata endpoint on your instances. If the + // Enables or disables the HTTP metadata endpoint on your instances. If this // parameter is not specified, the existing state is maintained. If you specify a // value of disabled, you cannot access your instance metadata. HttpEndpoint types.InstanceMetadataEndpointState @@ -75,6 +75,13 @@ type ModifyInstanceMetadataOptionsInput struct { // credentials are not available. HttpTokens types.HttpTokensState + // Set to enabled to allow access to instance tags from the instance metadata. Set + // to disabled to turn off access to instance tags from the instance metadata. For + // more information, see Work with instance tags using the instance metadata + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS). + // Default: disabled + InstanceMetadataTags types.InstanceMetadataTagsState + noSmithyDocumentSerde } diff --git a/service/ec2/api_op_MoveByoipCidrToIpam.go b/service/ec2/api_op_MoveByoipCidrToIpam.go index 027ceab893b..bb807d7909f 100644 --- a/service/ec2/api_op_MoveByoipCidrToIpam.go +++ b/service/ec2/api_op_MoveByoipCidrToIpam.go @@ -30,20 +30,26 @@ func (c *Client) MoveByoipCidrToIpam(ctx context.Context, params *MoveByoipCidrT type MoveByoipCidrToIpamInput struct { // The BYOIP CIDR. + // + // This member is required. Cidr *string - // A check for whether you have the required permissions for the action without - // actually making the request and provides an error response. If you have the - // required permissions, the error response is DryRunOperation. Otherwise, it is - // UnauthorizedOperation. - DryRun *bool - // The IPAM pool ID. + // + // This member is required. IpamPoolId *string // The Amazon Web Services account ID of the owner of the IPAM pool. + // + // This member is required. IpamPoolOwner *string + // A check for whether you have the required permissions for the action without + // actually making the request and provides an error response. If you have the + // required permissions, the error response is DryRunOperation. Otherwise, it is + // UnauthorizedOperation. + DryRun *bool + noSmithyDocumentSerde } @@ -104,6 +110,9 @@ func (c *Client) addOperationMoveByoipCidrToIpamMiddlewares(stack *middleware.St if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { return err } + if err = addOpMoveByoipCidrToIpamValidationMiddleware(stack); err != nil { + return err + } if err = stack.Initialize.Add(newServiceMetadataMiddleware_opMoveByoipCidrToIpam(options.Region), middleware.Before); err != nil { return err } diff --git a/service/ec2/deserializers.go b/service/ec2/deserializers.go index 2d7742b711e..58232ad94f6 100644 --- a/service/ec2/deserializers.go +++ b/service/ec2/deserializers.go @@ -18490,6 +18490,97 @@ func awsEc2query_deserializeOpErrorDescribeExportTasks(response *smithyhttp.Resp } } +type awsEc2query_deserializeOpDescribeFastLaunchImages struct { +} + +func (*awsEc2query_deserializeOpDescribeFastLaunchImages) ID() string { + return "OperationDeserializer" +} + +func (m *awsEc2query_deserializeOpDescribeFastLaunchImages) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsEc2query_deserializeOpErrorDescribeFastLaunchImages(response, &metadata) + } + output := &DescribeFastLaunchImagesOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(response.Body, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return out, metadata, nil + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + err = awsEc2query_deserializeOpDocumentDescribeFastLaunchImagesOutput(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsEc2query_deserializeOpErrorDescribeFastLaunchImages(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + errorComponents, err := ec2query.GetErrorResponseComponents(errorBody) + if err != nil { + return err + } + awsmiddleware.SetRequestIDMetadata(metadata, errorComponents.RequestID) + if len(errorComponents.Code) != 0 { + errorCode = errorComponents.Code + } + if len(errorComponents.Message) != 0 { + errorMessage = errorComponents.Message + } + errorBody.Seek(0, io.SeekStart) + switch { + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsEc2query_deserializeOpDescribeFastSnapshotRestores struct { } @@ -28795,6 +28886,97 @@ func awsEc2query_deserializeOpErrorDisableEbsEncryptionByDefault(response *smith } } +type awsEc2query_deserializeOpDisableFastLaunch struct { +} + +func (*awsEc2query_deserializeOpDisableFastLaunch) ID() string { + return "OperationDeserializer" +} + +func (m *awsEc2query_deserializeOpDisableFastLaunch) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsEc2query_deserializeOpErrorDisableFastLaunch(response, &metadata) + } + output := &DisableFastLaunchOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(response.Body, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return out, metadata, nil + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + err = awsEc2query_deserializeOpDocumentDisableFastLaunchOutput(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsEc2query_deserializeOpErrorDisableFastLaunch(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + errorComponents, err := ec2query.GetErrorResponseComponents(errorBody) + if err != nil { + return err + } + awsmiddleware.SetRequestIDMetadata(metadata, errorComponents.RequestID) + if len(errorComponents.Code) != 0 { + errorCode = errorComponents.Code + } + if len(errorComponents.Message) != 0 { + errorMessage = errorComponents.Message + } + errorBody.Seek(0, io.SeekStart) + switch { + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsEc2query_deserializeOpDisableFastSnapshotRestores struct { } @@ -30546,6 +30728,97 @@ func awsEc2query_deserializeOpErrorEnableEbsEncryptionByDefault(response *smithy } } +type awsEc2query_deserializeOpEnableFastLaunch struct { +} + +func (*awsEc2query_deserializeOpEnableFastLaunch) ID() string { + return "OperationDeserializer" +} + +func (m *awsEc2query_deserializeOpEnableFastLaunch) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsEc2query_deserializeOpErrorEnableFastLaunch(response, &metadata) + } + output := &EnableFastLaunchOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(response.Body, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return out, metadata, nil + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + err = awsEc2query_deserializeOpDocumentEnableFastLaunchOutput(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsEc2query_deserializeOpErrorEnableFastLaunch(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + errorComponents, err := ec2query.GetErrorResponseComponents(errorBody) + if err != nil { + return err + } + awsmiddleware.SetRequestIDMetadata(metadata, errorComponents.RequestID) + if len(errorComponents.Code) != 0 { + errorCode = errorComponents.Code + } + if len(errorComponents.Message) != 0 { + errorMessage = errorComponents.Message + } + errorBody.Seek(0, io.SeekStart) + switch { + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsEc2query_deserializeOpEnableFastSnapshotRestores struct { } @@ -51060,6 +51333,19 @@ func awsEc2query_deserializeDocumentCapacityReservation(v **types.CapacityReserv sv.OwnerId = ptr.String(xtv) } + case strings.EqualFold("placementGroupArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.PlacementGroupArn = ptr.String(xtv) + } + case strings.EqualFold("startDate", t.Name.Local): val, err := decoder.Value() if err != nil { @@ -56572,6 +56858,221 @@ func awsEc2query_deserializeDocumentDescribeConversionTaskListUnwrapped(v *[]typ *v = sv return nil } +func awsEc2query_deserializeDocumentDescribeFastLaunchImagesSuccessItem(v **types.DescribeFastLaunchImagesSuccessItem, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.DescribeFastLaunchImagesSuccessItem + if *v == nil { + sv = &types.DescribeFastLaunchImagesSuccessItem{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("imageId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.ImageId = ptr.String(xtv) + } + + case strings.EqualFold("launchTemplate", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsEc2query_deserializeDocumentFastLaunchLaunchTemplateSpecificationResponse(&sv.LaunchTemplate, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("maxParallelLaunches", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + i64, err := strconv.ParseInt(xtv, 10, 64) + if err != nil { + return err + } + sv.MaxParallelLaunches = ptr.Int32(int32(i64)) + } + + case strings.EqualFold("ownerId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.OwnerId = ptr.String(xtv) + } + + case strings.EqualFold("resourceType", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.ResourceType = types.FastLaunchResourceType(xtv) + } + + case strings.EqualFold("snapshotConfiguration", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsEc2query_deserializeDocumentFastLaunchSnapshotConfigurationResponse(&sv.SnapshotConfiguration, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("state", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.State = types.FastLaunchStateCode(xtv) + } + + case strings.EqualFold("stateTransitionReason", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.StateTransitionReason = ptr.String(xtv) + } + + case strings.EqualFold("stateTransitionTime", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + t, err := smithytime.ParseDateTime(xtv) + if err != nil { + return err + } + sv.StateTransitionTime = ptr.Time(t) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsEc2query_deserializeDocumentDescribeFastLaunchImagesSuccessSet(v *[]types.DescribeFastLaunchImagesSuccessItem, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv []types.DescribeFastLaunchImagesSuccessItem + if *v == nil { + sv = make([]types.DescribeFastLaunchImagesSuccessItem, 0) + } else { + sv = *v + } + + originalDecoder := decoder + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + switch { + case strings.EqualFold("item", t.Name.Local): + var col types.DescribeFastLaunchImagesSuccessItem + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + destAddr := &col + if err := awsEc2query_deserializeDocumentDescribeFastLaunchImagesSuccessItem(&destAddr, nodeDecoder); err != nil { + return err + } + col = *destAddr + sv = append(sv, col) + + default: + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsEc2query_deserializeDocumentDescribeFastLaunchImagesSuccessSetUnwrapped(v *[]types.DescribeFastLaunchImagesSuccessItem, decoder smithyxml.NodeDecoder) error { + var sv []types.DescribeFastLaunchImagesSuccessItem + if *v == nil { + sv = make([]types.DescribeFastLaunchImagesSuccessItem, 0) + } else { + sv = *v + } + + switch { + default: + var mv types.DescribeFastLaunchImagesSuccessItem + t := decoder.StartEl + _ = t + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + destAddr := &mv + if err := awsEc2query_deserializeDocumentDescribeFastLaunchImagesSuccessItem(&destAddr, nodeDecoder); err != nil { + return err + } + mv = *destAddr + sv = append(sv, mv) + } + *v = sv + return nil +} func awsEc2query_deserializeDocumentDescribeFastSnapshotRestoreSuccessItem(v **types.DescribeFastSnapshotRestoreSuccessItem, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -62088,6 +62589,134 @@ func awsEc2query_deserializeDocumentFailedQueuedPurchaseDeletionSetUnwrapped(v * *v = sv return nil } +func awsEc2query_deserializeDocumentFastLaunchLaunchTemplateSpecificationResponse(v **types.FastLaunchLaunchTemplateSpecificationResponse, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.FastLaunchLaunchTemplateSpecificationResponse + if *v == nil { + sv = &types.FastLaunchLaunchTemplateSpecificationResponse{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("launchTemplateId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.LaunchTemplateId = ptr.String(xtv) + } + + case strings.EqualFold("launchTemplateName", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.LaunchTemplateName = ptr.String(xtv) + } + + case strings.EqualFold("version", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Version = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsEc2query_deserializeDocumentFastLaunchSnapshotConfigurationResponse(v **types.FastLaunchSnapshotConfigurationResponse, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.FastLaunchSnapshotConfigurationResponse + if *v == nil { + sv = &types.FastLaunchSnapshotConfigurationResponse{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("targetResourceCount", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + i64, err := strconv.ParseInt(xtv, 10, 64) + if err != nil { + return err + } + sv.TargetResourceCount = ptr.Int32(int32(i64)) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + func awsEc2query_deserializeDocumentFederatedAuthentication(v **types.FederatedAuthentication, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -70949,6 +71578,19 @@ func awsEc2query_deserializeDocumentInstanceMetadataOptionsResponse(v **types.In sv.HttpTokens = types.HttpTokensState(xtv) } + case strings.EqualFold("instanceMetadataTags", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.InstanceMetadataTags = types.InstanceMetadataTagsState(xtv) + } + case strings.EqualFold("state", t.Name.Local): val, err := decoder.Value() if err != nil { @@ -80046,6 +80688,19 @@ func awsEc2query_deserializeDocumentLaunchTemplateInstanceMetadataOptions(v **ty sv.HttpTokens = types.LaunchTemplateHttpTokensState(xtv) } + case strings.EqualFold("instanceMetadataTags", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.InstanceMetadataTags = types.LaunchTemplateInstanceMetadataTagsState(xtv) + } + case strings.EqualFold("state", t.Name.Local): val, err := decoder.Value() if err != nil { @@ -89124,6 +89779,19 @@ func awsEc2query_deserializeDocumentPlacementGroup(v **types.PlacementGroup, dec originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { + case strings.EqualFold("groupArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.GroupArn = ptr.String(xtv) + } + case strings.EqualFold("groupId", t.Name.Local): val, err := decoder.Value() if err != nil { @@ -126218,6 +126886,61 @@ func awsEc2query_deserializeOpDocumentDescribeExportTasksOutput(v **DescribeExpo return nil } +func awsEc2query_deserializeOpDocumentDescribeFastLaunchImagesOutput(v **DescribeFastLaunchImagesOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *DescribeFastLaunchImagesOutput + if *v == nil { + sv = &DescribeFastLaunchImagesOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("fastLaunchImageSet", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsEc2query_deserializeDocumentDescribeFastLaunchImagesSuccessSet(&sv.FastLaunchImages, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("nextToken", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.NextToken = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + func awsEc2query_deserializeOpDocumentDescribeFastSnapshotRestoresOutput(v **DescribeFastSnapshotRestoresOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -132476,6 +133199,153 @@ func awsEc2query_deserializeOpDocumentDisableEbsEncryptionByDefaultOutput(v **Di return nil } +func awsEc2query_deserializeOpDocumentDisableFastLaunchOutput(v **DisableFastLaunchOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *DisableFastLaunchOutput + if *v == nil { + sv = &DisableFastLaunchOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("imageId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.ImageId = ptr.String(xtv) + } + + case strings.EqualFold("launchTemplate", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsEc2query_deserializeDocumentFastLaunchLaunchTemplateSpecificationResponse(&sv.LaunchTemplate, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("maxParallelLaunches", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + i64, err := strconv.ParseInt(xtv, 10, 64) + if err != nil { + return err + } + sv.MaxParallelLaunches = ptr.Int32(int32(i64)) + } + + case strings.EqualFold("ownerId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.OwnerId = ptr.String(xtv) + } + + case strings.EqualFold("resourceType", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.ResourceType = types.FastLaunchResourceType(xtv) + } + + case strings.EqualFold("snapshotConfiguration", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsEc2query_deserializeDocumentFastLaunchSnapshotConfigurationResponse(&sv.SnapshotConfiguration, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("state", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.State = types.FastLaunchStateCode(xtv) + } + + case strings.EqualFold("stateTransitionReason", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.StateTransitionReason = ptr.String(xtv) + } + + case strings.EqualFold("stateTransitionTime", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + t, err := smithytime.ParseDateTime(xtv) + if err != nil { + return err + } + sv.StateTransitionTime = ptr.Time(t) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + func awsEc2query_deserializeOpDocumentDisableFastSnapshotRestoresOutput(v **DisableFastSnapshotRestoresOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -133334,6 +134204,153 @@ func awsEc2query_deserializeOpDocumentEnableEbsEncryptionByDefaultOutput(v **Ena return nil } +func awsEc2query_deserializeOpDocumentEnableFastLaunchOutput(v **EnableFastLaunchOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *EnableFastLaunchOutput + if *v == nil { + sv = &EnableFastLaunchOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("imageId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.ImageId = ptr.String(xtv) + } + + case strings.EqualFold("launchTemplate", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsEc2query_deserializeDocumentFastLaunchLaunchTemplateSpecificationResponse(&sv.LaunchTemplate, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("maxParallelLaunches", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + i64, err := strconv.ParseInt(xtv, 10, 64) + if err != nil { + return err + } + sv.MaxParallelLaunches = ptr.Int32(int32(i64)) + } + + case strings.EqualFold("ownerId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.OwnerId = ptr.String(xtv) + } + + case strings.EqualFold("resourceType", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.ResourceType = types.FastLaunchResourceType(xtv) + } + + case strings.EqualFold("snapshotConfiguration", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsEc2query_deserializeDocumentFastLaunchSnapshotConfigurationResponse(&sv.SnapshotConfiguration, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("state", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.State = types.FastLaunchStateCode(xtv) + } + + case strings.EqualFold("stateTransitionReason", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.StateTransitionReason = ptr.String(xtv) + } + + case strings.EqualFold("stateTransitionTime", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + t, err := smithytime.ParseDateTime(xtv) + if err != nil { + return err + } + sv.StateTransitionTime = ptr.Time(t) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + func awsEc2query_deserializeOpDocumentEnableFastSnapshotRestoresOutput(v **EnableFastSnapshotRestoresOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/ec2/doc.go b/service/ec2/doc.go index 6ebd4aafc70..b2e5a639ef0 100644 --- a/service/ec2/doc.go +++ b/service/ec2/doc.go @@ -4,31 +4,31 @@ // Elastic Compute Cloud. // // Amazon Elastic Compute Cloud Amazon Elastic Compute Cloud (Amazon EC2) provides -// secure and resizable computing capacity in the AWS Cloud. Using Amazon EC2 -// eliminates the need to invest in hardware up front, so you can develop and -// deploy applications faster. Amazon Virtual Private Cloud (Amazon VPC) enables -// you to provision a logically isolated section of the AWS Cloud where you can -// launch AWS resources in a virtual network that you've defined. Amazon Elastic -// Block Store (Amazon EBS) provides block level storage volumes for use with EC2 -// instances. EBS volumes are highly available +// secure and resizable computing capacity in the Amazon Web Services Cloud. Using +// Amazon EC2 eliminates the need to invest in hardware up front, so you can +// develop and deploy applications faster. Amazon Virtual Private Cloud (Amazon +// VPC) enables you to provision a logically isolated section of the Amazon Web +// Services Cloud where you can launch Amazon Web Services resources in a virtual +// network that you've defined. Amazon Elastic Block Store (Amazon EBS) provides +// block level storage volumes for use with EC2 instances. EBS volumes are highly +// available // -// and reliable storage volumes that -// can be attached to any running instance and used like a hard drive. To learn -// more, see the following resources: +// and reliable storage volumes that can be attached to any running +// instance and used like a hard drive. To learn more, see the following +// resources: // -// * Amazon EC2: AmazonEC2 product page -// (http://aws.amazon.com/ec2), Amazon EC2 documentation -// (http://aws.amazon.com/documentation/ec2) +// * Amazon EC2: AmazonEC2 product page (http://aws.amazon.com/ec2), +// Amazon EC2 documentation (http://aws.amazon.com/documentation/ec2) // -// * Amazon EBS: Amazon EBS product page -// (http://aws.amazon.com/ebs), Amazon EBS documentation -// (http://aws.amazon.com/documentation/ebs) +// * Amazon +// EBS: Amazon EBS product page (http://aws.amazon.com/ebs), Amazon EBS +// documentation (http://aws.amazon.com/documentation/ebs) // -// * Amazon VPC: Amazon VPC product page -// (http://aws.amazon.com/vpc), Amazon VPC documentation +// * Amazon VPC: Amazon +// VPC product page (http://aws.amazon.com/vpc), Amazon VPC documentation // (http://aws.amazon.com/documentation/vpc) // -// * AWS VPN: AWS VPN product page -// (http://aws.amazon.com/vpn), AWS VPN documentation -// (http://aws.amazon.com/documentation/vpn) +// * Amazon Web Services VPN: Amazon Web +// Services VPN product page (http://aws.amazon.com/vpn), Amazon Web Services VPN +// documentation (http://aws.amazon.com/documentation/vpn) package ec2 diff --git a/service/ec2/generated.json b/service/ec2/generated.json index a816a2c6322..d1c6b306660 100644 --- a/service/ec2/generated.json +++ b/service/ec2/generated.json @@ -220,6 +220,7 @@ "api_op_DescribeElasticGpus.go", "api_op_DescribeExportImageTasks.go", "api_op_DescribeExportTasks.go", + "api_op_DescribeFastLaunchImages.go", "api_op_DescribeFastSnapshotRestores.go", "api_op_DescribeFleetHistory.go", "api_op_DescribeFleetInstances.go", @@ -334,6 +335,7 @@ "api_op_DetachVolume.go", "api_op_DetachVpnGateway.go", "api_op_DisableEbsEncryptionByDefault.go", + "api_op_DisableFastLaunch.go", "api_op_DisableFastSnapshotRestores.go", "api_op_DisableImageDeprecation.go", "api_op_DisableIpamOrganizationAdminAccount.go", @@ -354,6 +356,7 @@ "api_op_DisassociateTrunkInterface.go", "api_op_DisassociateVpcCidrBlock.go", "api_op_EnableEbsEncryptionByDefault.go", + "api_op_EnableFastLaunch.go", "api_op_EnableFastSnapshotRestores.go", "api_op_EnableImageDeprecation.go", "api_op_EnableIpamOrganizationAdminAccount.go", diff --git a/service/ec2/serializers.go b/service/ec2/serializers.go index 856ead65bed..c7e3ef8137c 100644 --- a/service/ec2/serializers.go +++ b/service/ec2/serializers.go @@ -13457,6 +13457,70 @@ func (m *awsEc2query_serializeOpDescribeExportTasks) HandleSerialize(ctx context return next.HandleSerialize(ctx, in) } +type awsEc2query_serializeOpDescribeFastLaunchImages struct { +} + +func (*awsEc2query_serializeOpDescribeFastLaunchImages) ID() string { + return "OperationSerializer" +} + +func (m *awsEc2query_serializeOpDescribeFastLaunchImages) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DescribeFastLaunchImagesInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-www-form-urlencoded") + + bodyWriter := bytes.NewBuffer(nil) + bodyEncoder := query.NewEncoder(bodyWriter) + body := bodyEncoder.Object() + body.Key("Action").String("DescribeFastLaunchImages") + body.Key("Version").String("2016-11-15") + + if err := awsEc2query_serializeOpDocumentDescribeFastLaunchImagesInput(input, bodyEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + err = bodyEncoder.Encode() + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(bodyWriter.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + type awsEc2query_serializeOpDescribeFastSnapshotRestores struct { } @@ -20753,6 +20817,70 @@ func (m *awsEc2query_serializeOpDisableEbsEncryptionByDefault) HandleSerialize(c return next.HandleSerialize(ctx, in) } +type awsEc2query_serializeOpDisableFastLaunch struct { +} + +func (*awsEc2query_serializeOpDisableFastLaunch) ID() string { + return "OperationSerializer" +} + +func (m *awsEc2query_serializeOpDisableFastLaunch) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DisableFastLaunchInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-www-form-urlencoded") + + bodyWriter := bytes.NewBuffer(nil) + bodyEncoder := query.NewEncoder(bodyWriter) + body := bodyEncoder.Object() + body.Key("Action").String("DisableFastLaunch") + body.Key("Version").String("2016-11-15") + + if err := awsEc2query_serializeOpDocumentDisableFastLaunchInput(input, bodyEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + err = bodyEncoder.Encode() + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(bodyWriter.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + type awsEc2query_serializeOpDisableFastSnapshotRestores struct { } @@ -22033,6 +22161,70 @@ func (m *awsEc2query_serializeOpEnableEbsEncryptionByDefault) HandleSerialize(ct return next.HandleSerialize(ctx, in) } +type awsEc2query_serializeOpEnableFastLaunch struct { +} + +func (*awsEc2query_serializeOpEnableFastLaunch) ID() string { + return "OperationSerializer" +} + +func (m *awsEc2query_serializeOpEnableFastLaunch) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*EnableFastLaunchInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-www-form-urlencoded") + + bodyWriter := bytes.NewBuffer(nil) + bodyEncoder := query.NewEncoder(bodyWriter) + body := bodyEncoder.Object() + body.Key("Action").String("EnableFastLaunch") + body.Key("Version").String("2016-11-15") + + if err := awsEc2query_serializeOpDocumentEnableFastLaunchInput(input, bodyEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + err = bodyEncoder.Encode() + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(bodyWriter.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + type awsEc2query_serializeOpEnableFastSnapshotRestores struct { } @@ -34501,6 +34693,53 @@ func awsEc2query_serializeDocumentExportToS3TaskSpecification(v *types.ExportToS return nil } +func awsEc2query_serializeDocumentFastLaunchImageIdList(v []string, value query.Value) error { + if len(v) == 0 { + return nil + } + array := value.Array("ImageId") + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + +func awsEc2query_serializeDocumentFastLaunchLaunchTemplateSpecificationRequest(v *types.FastLaunchLaunchTemplateSpecificationRequest, value query.Value) error { + object := value.Object() + _ = object + + if v.LaunchTemplateId != nil { + objectKey := object.Key("LaunchTemplateId") + objectKey.String(*v.LaunchTemplateId) + } + + if v.LaunchTemplateName != nil { + objectKey := object.Key("LaunchTemplateName") + objectKey.String(*v.LaunchTemplateName) + } + + if v.Version != nil { + objectKey := object.Key("Version") + objectKey.String(*v.Version) + } + + return nil +} + +func awsEc2query_serializeDocumentFastLaunchSnapshotConfigurationRequest(v *types.FastLaunchSnapshotConfigurationRequest, value query.Value) error { + object := value.Object() + _ = object + + if v.TargetResourceCount != nil { + objectKey := object.Key("TargetResourceCount") + objectKey.Integer(*v.TargetResourceCount) + } + + return nil +} + func awsEc2query_serializeDocumentFederatedAuthenticationRequest(v *types.FederatedAuthenticationRequest, value query.Value) error { object := value.Object() _ = object @@ -35503,6 +35742,11 @@ func awsEc2query_serializeDocumentInstanceMetadataOptionsRequest(v *types.Instan objectKey.String(string(v.HttpTokens)) } + if len(v.InstanceMetadataTags) > 0 { + objectKey := object.Key("InstanceMetadataTags") + objectKey.String(string(v.InstanceMetadataTags)) + } + return nil } @@ -36676,6 +36920,11 @@ func awsEc2query_serializeDocumentLaunchTemplateInstanceMetadataOptionsRequest(v objectKey.String(string(v.HttpTokens)) } + if len(v.InstanceMetadataTags) > 0 { + objectKey := object.Key("InstanceMetadataTags") + objectKey.String(string(v.InstanceMetadataTags)) + } + return nil } @@ -43183,6 +43432,11 @@ func awsEc2query_serializeOpDocumentCreateCapacityReservationInput(v *CreateCapa objectKey.String(*v.OutpostArn) } + if v.PlacementGroupArn != nil { + objectKey := object.Key("PlacementGroupArn") + objectKey.String(*v.PlacementGroupArn) + } + if v.TagSpecifications != nil { objectKey := object.FlatKey("TagSpecifications") if err := awsEc2query_serializeDocumentTagSpecificationList(v.TagSpecifications, objectKey); err != nil { @@ -48120,6 +48374,42 @@ func awsEc2query_serializeOpDocumentDescribeExportTasksInput(v *DescribeExportTa return nil } +func awsEc2query_serializeOpDocumentDescribeFastLaunchImagesInput(v *DescribeFastLaunchImagesInput, value query.Value) error { + object := value.Object() + _ = object + + if v.DryRun != nil { + objectKey := object.Key("DryRun") + objectKey.Boolean(*v.DryRun) + } + + if v.Filters != nil { + objectKey := object.FlatKey("Filter") + if err := awsEc2query_serializeDocumentFilterList(v.Filters, objectKey); err != nil { + return err + } + } + + if v.ImageIds != nil { + objectKey := object.FlatKey("ImageId") + if err := awsEc2query_serializeDocumentFastLaunchImageIdList(v.ImageIds, objectKey); err != nil { + return err + } + } + + if v.MaxResults != nil { + objectKey := object.Key("MaxResults") + objectKey.Integer(*v.MaxResults) + } + + if v.NextToken != nil { + objectKey := object.Key("NextToken") + objectKey.String(*v.NextToken) + } + + return nil +} + func awsEc2query_serializeOpDocumentDescribeFastSnapshotRestoresInput(v *DescribeFastSnapshotRestoresInput, value query.Value) error { object := value.Object() _ = object @@ -51966,6 +52256,28 @@ func awsEc2query_serializeOpDocumentDisableEbsEncryptionByDefaultInput(v *Disabl return nil } +func awsEc2query_serializeOpDocumentDisableFastLaunchInput(v *DisableFastLaunchInput, value query.Value) error { + object := value.Object() + _ = object + + if v.DryRun != nil { + objectKey := object.Key("DryRun") + objectKey.Boolean(*v.DryRun) + } + + if v.Force != nil { + objectKey := object.Key("Force") + objectKey.Boolean(*v.Force) + } + + if v.ImageId != nil { + objectKey := object.Key("ImageId") + objectKey.String(*v.ImageId) + } + + return nil +} + func awsEc2query_serializeOpDocumentDisableFastSnapshotRestoresInput(v *DisableFastSnapshotRestoresInput, value query.Value) error { object := value.Object() _ = object @@ -52339,6 +52651,47 @@ func awsEc2query_serializeOpDocumentEnableEbsEncryptionByDefaultInput(v *EnableE return nil } +func awsEc2query_serializeOpDocumentEnableFastLaunchInput(v *EnableFastLaunchInput, value query.Value) error { + object := value.Object() + _ = object + + if v.DryRun != nil { + objectKey := object.Key("DryRun") + objectKey.Boolean(*v.DryRun) + } + + if v.ImageId != nil { + objectKey := object.Key("ImageId") + objectKey.String(*v.ImageId) + } + + if v.LaunchTemplate != nil { + objectKey := object.Key("LaunchTemplate") + if err := awsEc2query_serializeDocumentFastLaunchLaunchTemplateSpecificationRequest(v.LaunchTemplate, objectKey); err != nil { + return err + } + } + + if v.MaxParallelLaunches != nil { + objectKey := object.Key("MaxParallelLaunches") + objectKey.Integer(*v.MaxParallelLaunches) + } + + if v.ResourceType != nil { + objectKey := object.Key("ResourceType") + objectKey.String(*v.ResourceType) + } + + if v.SnapshotConfiguration != nil { + objectKey := object.Key("SnapshotConfiguration") + if err := awsEc2query_serializeDocumentFastLaunchSnapshotConfigurationRequest(v.SnapshotConfiguration, objectKey); err != nil { + return err + } + } + + return nil +} + func awsEc2query_serializeOpDocumentEnableFastSnapshotRestoresInput(v *EnableFastSnapshotRestoresInput, value query.Value) error { object := value.Object() _ = object @@ -54646,6 +54999,11 @@ func awsEc2query_serializeOpDocumentModifyInstanceMetadataOptionsInput(v *Modify objectKey.String(*v.InstanceId) } + if len(v.InstanceMetadataTags) > 0 { + objectKey := object.Key("InstanceMetadataTags") + objectKey.String(string(v.InstanceMetadataTags)) + } + return nil } diff --git a/service/ec2/types/enums.go b/service/ec2/types/enums.go index e53a0fc17d6..1f886ee7dbf 100644 --- a/service/ec2/types/enums.go +++ b/service/ec2/types/enums.go @@ -736,17 +736,23 @@ type CapacityReservationInstancePlatform string // Enum values for CapacityReservationInstancePlatform const ( - CapacityReservationInstancePlatformLinuxUnix CapacityReservationInstancePlatform = "Linux/UNIX" - CapacityReservationInstancePlatformRedHatEnterpriseLinux CapacityReservationInstancePlatform = "Red Hat Enterprise Linux" - CapacityReservationInstancePlatformSuseLinux CapacityReservationInstancePlatform = "SUSE Linux" - CapacityReservationInstancePlatformWindows CapacityReservationInstancePlatform = "Windows" - CapacityReservationInstancePlatformWindowsWithSqlServer CapacityReservationInstancePlatform = "Windows with SQL Server" - CapacityReservationInstancePlatformWindowsWithSqlServerEnterprise CapacityReservationInstancePlatform = "Windows with SQL Server Enterprise" - CapacityReservationInstancePlatformWindowsWithSqlServerStandard CapacityReservationInstancePlatform = "Windows with SQL Server Standard" - CapacityReservationInstancePlatformWindowsWithSqlServerWeb CapacityReservationInstancePlatform = "Windows with SQL Server Web" - CapacityReservationInstancePlatformLinuxWithSqlServerStandard CapacityReservationInstancePlatform = "Linux with SQL Server Standard" - CapacityReservationInstancePlatformLinuxWithSqlServerWeb CapacityReservationInstancePlatform = "Linux with SQL Server Web" - CapacityReservationInstancePlatformLinuxWithSqlServerEnterprise CapacityReservationInstancePlatform = "Linux with SQL Server Enterprise" + CapacityReservationInstancePlatformLinuxUnix CapacityReservationInstancePlatform = "Linux/UNIX" + CapacityReservationInstancePlatformRedHatEnterpriseLinux CapacityReservationInstancePlatform = "Red Hat Enterprise Linux" + CapacityReservationInstancePlatformSuseLinux CapacityReservationInstancePlatform = "SUSE Linux" + CapacityReservationInstancePlatformWindows CapacityReservationInstancePlatform = "Windows" + CapacityReservationInstancePlatformWindowsWithSqlServer CapacityReservationInstancePlatform = "Windows with SQL Server" + CapacityReservationInstancePlatformWindowsWithSqlServerEnterprise CapacityReservationInstancePlatform = "Windows with SQL Server Enterprise" + CapacityReservationInstancePlatformWindowsWithSqlServerStandard CapacityReservationInstancePlatform = "Windows with SQL Server Standard" + CapacityReservationInstancePlatformWindowsWithSqlServerWeb CapacityReservationInstancePlatform = "Windows with SQL Server Web" + CapacityReservationInstancePlatformLinuxWithSqlServerStandard CapacityReservationInstancePlatform = "Linux with SQL Server Standard" + CapacityReservationInstancePlatformLinuxWithSqlServerWeb CapacityReservationInstancePlatform = "Linux with SQL Server Web" + CapacityReservationInstancePlatformLinuxWithSqlServerEnterprise CapacityReservationInstancePlatform = "Linux with SQL Server Enterprise" + CapacityReservationInstancePlatformRhelWithSqlServerStandard CapacityReservationInstancePlatform = "RHEL with SQL Server Standard" + CapacityReservationInstancePlatformRhelWithSqlServerEnterprise CapacityReservationInstancePlatform = "RHEL with SQL Server Enterprise" + CapacityReservationInstancePlatformRhelWithSqlServerWeb CapacityReservationInstancePlatform = "RHEL with SQL Server Web" + CapacityReservationInstancePlatformRhelWithHa CapacityReservationInstancePlatform = "RHEL with HA" + CapacityReservationInstancePlatformRhelWithHaAndSqlServerStandard CapacityReservationInstancePlatform = "RHEL with HA and SQL Server Standard" + CapacityReservationInstancePlatformRhelWithHaAndSqlServerEnterprise CapacityReservationInstancePlatform = "RHEL with HA and SQL Server Enterprise" ) // Values returns all known values for CapacityReservationInstancePlatform. Note @@ -766,6 +772,12 @@ func (CapacityReservationInstancePlatform) Values() []CapacityReservationInstanc "Linux with SQL Server Standard", "Linux with SQL Server Web", "Linux with SQL Server Enterprise", + "RHEL with SQL Server Standard", + "RHEL with SQL Server Enterprise", + "RHEL with SQL Server Web", + "RHEL with HA", + "RHEL with HA and SQL Server Standard", + "RHEL with HA and SQL Server Enterprise", } } @@ -1646,6 +1658,48 @@ func (ExportTaskState) Values() []ExportTaskState { } } +type FastLaunchResourceType string + +// Enum values for FastLaunchResourceType +const ( + FastLaunchResourceTypeSnapshot FastLaunchResourceType = "snapshot" +) + +// Values returns all known values for FastLaunchResourceType. Note that this can +// be expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (FastLaunchResourceType) Values() []FastLaunchResourceType { + return []FastLaunchResourceType{ + "snapshot", + } +} + +type FastLaunchStateCode string + +// Enum values for FastLaunchStateCode +const ( + FastLaunchStateCodeEnabling FastLaunchStateCode = "enabling" + FastLaunchStateCodeEnablingFailed FastLaunchStateCode = "enabling-failed" + FastLaunchStateCodeEnabled FastLaunchStateCode = "enabled" + FastLaunchStateCodeEnabledFailed FastLaunchStateCode = "enabled-failed" + FastLaunchStateCodeDisabling FastLaunchStateCode = "disabling" + FastLaunchStateCodeDisablingFailed FastLaunchStateCode = "disabling-failed" +) + +// Values returns all known values for FastLaunchStateCode. Note that this can be +// expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (FastLaunchStateCode) Values() []FastLaunchStateCode { + return []FastLaunchStateCode{ + "enabling", + "enabling-failed", + "enabled", + "enabled-failed", + "disabling", + "disabling-failed", + } +} + type FastSnapshotRestoreStateCode string // Enum values for FastSnapshotRestoreStateCode @@ -2429,6 +2483,24 @@ func (InstanceMetadataProtocolState) Values() []InstanceMetadataProtocolState { } } +type InstanceMetadataTagsState string + +// Enum values for InstanceMetadataTagsState +const ( + InstanceMetadataTagsStateDisabled InstanceMetadataTagsState = "disabled" + InstanceMetadataTagsStateEnabled InstanceMetadataTagsState = "enabled" +) + +// Values returns all known values for InstanceMetadataTagsState. Note that this +// can be expanded in the future, and so it is only as up to date as the client. +// The ordering of this slice is not guaranteed to be stable across updates. +func (InstanceMetadataTagsState) Values() []InstanceMetadataTagsState { + return []InstanceMetadataTagsState{ + "disabled", + "enabled", + } +} + type InstanceStateName string // Enum values for InstanceStateName @@ -2478,154 +2550,12 @@ type InstanceType string // Enum values for InstanceType const ( - InstanceTypeT1Micro InstanceType = "t1.micro" - InstanceTypeT2Nano InstanceType = "t2.nano" - InstanceTypeT2Micro InstanceType = "t2.micro" - InstanceTypeT2Small InstanceType = "t2.small" - InstanceTypeT2Medium InstanceType = "t2.medium" - InstanceTypeT2Large InstanceType = "t2.large" - InstanceTypeT2Xlarge InstanceType = "t2.xlarge" - InstanceTypeT22xlarge InstanceType = "t2.2xlarge" - InstanceTypeT3Nano InstanceType = "t3.nano" - InstanceTypeT3Micro InstanceType = "t3.micro" - InstanceTypeT3Small InstanceType = "t3.small" - InstanceTypeT3Medium InstanceType = "t3.medium" - InstanceTypeT3Large InstanceType = "t3.large" - InstanceTypeT3Xlarge InstanceType = "t3.xlarge" - InstanceTypeT32xlarge InstanceType = "t3.2xlarge" - InstanceTypeT3aNano InstanceType = "t3a.nano" - InstanceTypeT3aMicro InstanceType = "t3a.micro" - InstanceTypeT3aSmall InstanceType = "t3a.small" - InstanceTypeT3aMedium InstanceType = "t3a.medium" - InstanceTypeT3aLarge InstanceType = "t3a.large" - InstanceTypeT3aXlarge InstanceType = "t3a.xlarge" - InstanceTypeT3a2xlarge InstanceType = "t3a.2xlarge" - InstanceTypeT4gNano InstanceType = "t4g.nano" - InstanceTypeT4gMicro InstanceType = "t4g.micro" - InstanceTypeT4gSmall InstanceType = "t4g.small" - InstanceTypeT4gMedium InstanceType = "t4g.medium" - InstanceTypeT4gLarge InstanceType = "t4g.large" - InstanceTypeT4gXlarge InstanceType = "t4g.xlarge" - InstanceTypeT4g2xlarge InstanceType = "t4g.2xlarge" - InstanceTypeM1Small InstanceType = "m1.small" - InstanceTypeM1Medium InstanceType = "m1.medium" - InstanceTypeM1Large InstanceType = "m1.large" - InstanceTypeM1Xlarge InstanceType = "m1.xlarge" - InstanceTypeM3Medium InstanceType = "m3.medium" - InstanceTypeM3Large InstanceType = "m3.large" - InstanceTypeM3Xlarge InstanceType = "m3.xlarge" - InstanceTypeM32xlarge InstanceType = "m3.2xlarge" - InstanceTypeM4Large InstanceType = "m4.large" - InstanceTypeM4Xlarge InstanceType = "m4.xlarge" - InstanceTypeM42xlarge InstanceType = "m4.2xlarge" - InstanceTypeM44xlarge InstanceType = "m4.4xlarge" - InstanceTypeM410xlarge InstanceType = "m4.10xlarge" - InstanceTypeM416xlarge InstanceType = "m4.16xlarge" - InstanceTypeM2Xlarge InstanceType = "m2.xlarge" - InstanceTypeM22xlarge InstanceType = "m2.2xlarge" - InstanceTypeM24xlarge InstanceType = "m2.4xlarge" - InstanceTypeCr18xlarge InstanceType = "cr1.8xlarge" - InstanceTypeR3Large InstanceType = "r3.large" - InstanceTypeR3Xlarge InstanceType = "r3.xlarge" - InstanceTypeR32xlarge InstanceType = "r3.2xlarge" - InstanceTypeR34xlarge InstanceType = "r3.4xlarge" - InstanceTypeR38xlarge InstanceType = "r3.8xlarge" - InstanceTypeR4Large InstanceType = "r4.large" - InstanceTypeR4Xlarge InstanceType = "r4.xlarge" - InstanceTypeR42xlarge InstanceType = "r4.2xlarge" - InstanceTypeR44xlarge InstanceType = "r4.4xlarge" - InstanceTypeR48xlarge InstanceType = "r4.8xlarge" - InstanceTypeR416xlarge InstanceType = "r4.16xlarge" - InstanceTypeR5Large InstanceType = "r5.large" - InstanceTypeR5Xlarge InstanceType = "r5.xlarge" - InstanceTypeR52xlarge InstanceType = "r5.2xlarge" - InstanceTypeR54xlarge InstanceType = "r5.4xlarge" - InstanceTypeR58xlarge InstanceType = "r5.8xlarge" - InstanceTypeR512xlarge InstanceType = "r5.12xlarge" - InstanceTypeR516xlarge InstanceType = "r5.16xlarge" - InstanceTypeR524xlarge InstanceType = "r5.24xlarge" - InstanceTypeR5Metal InstanceType = "r5.metal" - InstanceTypeR5aLarge InstanceType = "r5a.large" - InstanceTypeR5aXlarge InstanceType = "r5a.xlarge" - InstanceTypeR5a2xlarge InstanceType = "r5a.2xlarge" - InstanceTypeR5a4xlarge InstanceType = "r5a.4xlarge" - InstanceTypeR5a8xlarge InstanceType = "r5a.8xlarge" - InstanceTypeR5a12xlarge InstanceType = "r5a.12xlarge" - InstanceTypeR5a16xlarge InstanceType = "r5a.16xlarge" - InstanceTypeR5a24xlarge InstanceType = "r5a.24xlarge" - InstanceTypeR5bLarge InstanceType = "r5b.large" - InstanceTypeR5bXlarge InstanceType = "r5b.xlarge" - InstanceTypeR5b2xlarge InstanceType = "r5b.2xlarge" - InstanceTypeR5b4xlarge InstanceType = "r5b.4xlarge" - InstanceTypeR5b8xlarge InstanceType = "r5b.8xlarge" - InstanceTypeR5b12xlarge InstanceType = "r5b.12xlarge" - InstanceTypeR5b16xlarge InstanceType = "r5b.16xlarge" - InstanceTypeR5b24xlarge InstanceType = "r5b.24xlarge" - InstanceTypeR5bMetal InstanceType = "r5b.metal" - InstanceTypeR5dLarge InstanceType = "r5d.large" - InstanceTypeR5dXlarge InstanceType = "r5d.xlarge" - InstanceTypeR5d2xlarge InstanceType = "r5d.2xlarge" - InstanceTypeR5d4xlarge InstanceType = "r5d.4xlarge" - InstanceTypeR5d8xlarge InstanceType = "r5d.8xlarge" - InstanceTypeR5d12xlarge InstanceType = "r5d.12xlarge" - InstanceTypeR5d16xlarge InstanceType = "r5d.16xlarge" - InstanceTypeR5d24xlarge InstanceType = "r5d.24xlarge" - InstanceTypeR5dMetal InstanceType = "r5d.metal" - InstanceTypeR5adLarge InstanceType = "r5ad.large" - InstanceTypeR5adXlarge InstanceType = "r5ad.xlarge" - InstanceTypeR5ad2xlarge InstanceType = "r5ad.2xlarge" - InstanceTypeR5ad4xlarge InstanceType = "r5ad.4xlarge" - InstanceTypeR5ad8xlarge InstanceType = "r5ad.8xlarge" - InstanceTypeR5ad12xlarge InstanceType = "r5ad.12xlarge" - InstanceTypeR5ad16xlarge InstanceType = "r5ad.16xlarge" - InstanceTypeR5ad24xlarge InstanceType = "r5ad.24xlarge" - InstanceTypeR6gMetal InstanceType = "r6g.metal" - InstanceTypeR6gMedium InstanceType = "r6g.medium" - InstanceTypeR6gLarge InstanceType = "r6g.large" - InstanceTypeR6gXlarge InstanceType = "r6g.xlarge" - InstanceTypeR6g2xlarge InstanceType = "r6g.2xlarge" - InstanceTypeR6g4xlarge InstanceType = "r6g.4xlarge" - InstanceTypeR6g8xlarge InstanceType = "r6g.8xlarge" - InstanceTypeR6g12xlarge InstanceType = "r6g.12xlarge" - InstanceTypeR6g16xlarge InstanceType = "r6g.16xlarge" - InstanceTypeR6gdMetal InstanceType = "r6gd.metal" - InstanceTypeR6gdMedium InstanceType = "r6gd.medium" - InstanceTypeR6gdLarge InstanceType = "r6gd.large" - InstanceTypeR6gdXlarge InstanceType = "r6gd.xlarge" - InstanceTypeR6gd2xlarge InstanceType = "r6gd.2xlarge" - InstanceTypeR6gd4xlarge InstanceType = "r6gd.4xlarge" - InstanceTypeR6gd8xlarge InstanceType = "r6gd.8xlarge" - InstanceTypeR6gd12xlarge InstanceType = "r6gd.12xlarge" - InstanceTypeR6gd16xlarge InstanceType = "r6gd.16xlarge" - InstanceTypeX116xlarge InstanceType = "x1.16xlarge" - InstanceTypeX132xlarge InstanceType = "x1.32xlarge" - InstanceTypeX1eXlarge InstanceType = "x1e.xlarge" - InstanceTypeX1e2xlarge InstanceType = "x1e.2xlarge" - InstanceTypeX1e4xlarge InstanceType = "x1e.4xlarge" - InstanceTypeX1e8xlarge InstanceType = "x1e.8xlarge" - InstanceTypeX1e16xlarge InstanceType = "x1e.16xlarge" - InstanceTypeX1e32xlarge InstanceType = "x1e.32xlarge" - InstanceTypeI2Xlarge InstanceType = "i2.xlarge" - InstanceTypeI22xlarge InstanceType = "i2.2xlarge" - InstanceTypeI24xlarge InstanceType = "i2.4xlarge" - InstanceTypeI28xlarge InstanceType = "i2.8xlarge" - InstanceTypeI3Large InstanceType = "i3.large" - InstanceTypeI3Xlarge InstanceType = "i3.xlarge" - InstanceTypeI32xlarge InstanceType = "i3.2xlarge" - InstanceTypeI34xlarge InstanceType = "i3.4xlarge" - InstanceTypeI38xlarge InstanceType = "i3.8xlarge" - InstanceTypeI316xlarge InstanceType = "i3.16xlarge" - InstanceTypeI3Metal InstanceType = "i3.metal" - InstanceTypeI3enLarge InstanceType = "i3en.large" - InstanceTypeI3enXlarge InstanceType = "i3en.xlarge" - InstanceTypeI3en2xlarge InstanceType = "i3en.2xlarge" - InstanceTypeI3en3xlarge InstanceType = "i3en.3xlarge" - InstanceTypeI3en6xlarge InstanceType = "i3en.6xlarge" - InstanceTypeI3en12xlarge InstanceType = "i3en.12xlarge" - InstanceTypeI3en24xlarge InstanceType = "i3en.24xlarge" - InstanceTypeI3enMetal InstanceType = "i3en.metal" - InstanceTypeHi14xlarge InstanceType = "hi1.4xlarge" - InstanceTypeHs18xlarge InstanceType = "hs1.8xlarge" + InstanceTypeA1Medium InstanceType = "a1.medium" + InstanceTypeA1Large InstanceType = "a1.large" + InstanceTypeA1Xlarge InstanceType = "a1.xlarge" + InstanceTypeA12xlarge InstanceType = "a1.2xlarge" + InstanceTypeA14xlarge InstanceType = "a1.4xlarge" + InstanceTypeA1Metal InstanceType = "a1.metal" InstanceTypeC1Medium InstanceType = "c1.medium" InstanceTypeC1Xlarge InstanceType = "c1.xlarge" InstanceTypeC3Large InstanceType = "c3.large" @@ -2679,7 +2609,6 @@ const ( InstanceTypeC5n9xlarge InstanceType = "c5n.9xlarge" InstanceTypeC5n18xlarge InstanceType = "c5n.18xlarge" InstanceTypeC5nMetal InstanceType = "c5n.metal" - InstanceTypeC6gMetal InstanceType = "c6g.metal" InstanceTypeC6gMedium InstanceType = "c6g.medium" InstanceTypeC6gLarge InstanceType = "c6g.large" InstanceTypeC6gXlarge InstanceType = "c6g.xlarge" @@ -2688,7 +2617,7 @@ const ( InstanceTypeC6g8xlarge InstanceType = "c6g.8xlarge" InstanceTypeC6g12xlarge InstanceType = "c6g.12xlarge" InstanceTypeC6g16xlarge InstanceType = "c6g.16xlarge" - InstanceTypeC6gdMetal InstanceType = "c6gd.metal" + InstanceTypeC6gMetal InstanceType = "c6g.metal" InstanceTypeC6gdMedium InstanceType = "c6gd.medium" InstanceTypeC6gdLarge InstanceType = "c6gd.large" InstanceTypeC6gdXlarge InstanceType = "c6gd.xlarge" @@ -2697,6 +2626,7 @@ const ( InstanceTypeC6gd8xlarge InstanceType = "c6gd.8xlarge" InstanceTypeC6gd12xlarge InstanceType = "c6gd.12xlarge" InstanceTypeC6gd16xlarge InstanceType = "c6gd.16xlarge" + InstanceTypeC6gdMetal InstanceType = "c6gd.metal" InstanceTypeC6gnMedium InstanceType = "c6gn.medium" InstanceTypeC6gnLarge InstanceType = "c6gn.large" InstanceTypeC6gnXlarge InstanceType = "c6gn.xlarge" @@ -2716,33 +2646,8 @@ const ( InstanceTypeC6i32xlarge InstanceType = "c6i.32xlarge" InstanceTypeCc14xlarge InstanceType = "cc1.4xlarge" InstanceTypeCc28xlarge InstanceType = "cc2.8xlarge" - InstanceTypeG22xlarge InstanceType = "g2.2xlarge" - InstanceTypeG28xlarge InstanceType = "g2.8xlarge" - InstanceTypeG34xlarge InstanceType = "g3.4xlarge" - InstanceTypeG38xlarge InstanceType = "g3.8xlarge" - InstanceTypeG316xlarge InstanceType = "g3.16xlarge" - InstanceTypeG3sXlarge InstanceType = "g3s.xlarge" - InstanceTypeG4adXlarge InstanceType = "g4ad.xlarge" - InstanceTypeG4ad2xlarge InstanceType = "g4ad.2xlarge" - InstanceTypeG4ad4xlarge InstanceType = "g4ad.4xlarge" - InstanceTypeG4ad8xlarge InstanceType = "g4ad.8xlarge" - InstanceTypeG4ad16xlarge InstanceType = "g4ad.16xlarge" - InstanceTypeG4dnXlarge InstanceType = "g4dn.xlarge" - InstanceTypeG4dn2xlarge InstanceType = "g4dn.2xlarge" - InstanceTypeG4dn4xlarge InstanceType = "g4dn.4xlarge" - InstanceTypeG4dn8xlarge InstanceType = "g4dn.8xlarge" - InstanceTypeG4dn12xlarge InstanceType = "g4dn.12xlarge" - InstanceTypeG4dn16xlarge InstanceType = "g4dn.16xlarge" - InstanceTypeG4dnMetal InstanceType = "g4dn.metal" InstanceTypeCg14xlarge InstanceType = "cg1.4xlarge" - InstanceTypeP2Xlarge InstanceType = "p2.xlarge" - InstanceTypeP28xlarge InstanceType = "p2.8xlarge" - InstanceTypeP216xlarge InstanceType = "p2.16xlarge" - InstanceTypeP32xlarge InstanceType = "p3.2xlarge" - InstanceTypeP38xlarge InstanceType = "p3.8xlarge" - InstanceTypeP316xlarge InstanceType = "p3.16xlarge" - InstanceTypeP3dn24xlarge InstanceType = "p3dn.24xlarge" - InstanceTypeP4d24xlarge InstanceType = "p4d.24xlarge" + InstanceTypeCr18xlarge InstanceType = "cr1.8xlarge" InstanceTypeD2Xlarge InstanceType = "d2.xlarge" InstanceTypeD22xlarge InstanceType = "d2.2xlarge" InstanceTypeD24xlarge InstanceType = "d2.4xlarge" @@ -2761,73 +2666,131 @@ const ( InstanceTypeF12xlarge InstanceType = "f1.2xlarge" InstanceTypeF14xlarge InstanceType = "f1.4xlarge" InstanceTypeF116xlarge InstanceType = "f1.16xlarge" - InstanceTypeM5Large InstanceType = "m5.large" - InstanceTypeM5Xlarge InstanceType = "m5.xlarge" - InstanceTypeM52xlarge InstanceType = "m5.2xlarge" - InstanceTypeM54xlarge InstanceType = "m5.4xlarge" - InstanceTypeM58xlarge InstanceType = "m5.8xlarge" - InstanceTypeM512xlarge InstanceType = "m5.12xlarge" - InstanceTypeM516xlarge InstanceType = "m5.16xlarge" - InstanceTypeM524xlarge InstanceType = "m5.24xlarge" - InstanceTypeM5Metal InstanceType = "m5.metal" - InstanceTypeM5aLarge InstanceType = "m5a.large" - InstanceTypeM5aXlarge InstanceType = "m5a.xlarge" - InstanceTypeM5a2xlarge InstanceType = "m5a.2xlarge" - InstanceTypeM5a4xlarge InstanceType = "m5a.4xlarge" - InstanceTypeM5a8xlarge InstanceType = "m5a.8xlarge" - InstanceTypeM5a12xlarge InstanceType = "m5a.12xlarge" - InstanceTypeM5a16xlarge InstanceType = "m5a.16xlarge" - InstanceTypeM5a24xlarge InstanceType = "m5a.24xlarge" - InstanceTypeM5dLarge InstanceType = "m5d.large" - InstanceTypeM5dXlarge InstanceType = "m5d.xlarge" - InstanceTypeM5d2xlarge InstanceType = "m5d.2xlarge" - InstanceTypeM5d4xlarge InstanceType = "m5d.4xlarge" - InstanceTypeM5d8xlarge InstanceType = "m5d.8xlarge" - InstanceTypeM5d12xlarge InstanceType = "m5d.12xlarge" - InstanceTypeM5d16xlarge InstanceType = "m5d.16xlarge" - InstanceTypeM5d24xlarge InstanceType = "m5d.24xlarge" - InstanceTypeM5dMetal InstanceType = "m5d.metal" - InstanceTypeM5adLarge InstanceType = "m5ad.large" - InstanceTypeM5adXlarge InstanceType = "m5ad.xlarge" - InstanceTypeM5ad2xlarge InstanceType = "m5ad.2xlarge" - InstanceTypeM5ad4xlarge InstanceType = "m5ad.4xlarge" - InstanceTypeM5ad8xlarge InstanceType = "m5ad.8xlarge" - InstanceTypeM5ad12xlarge InstanceType = "m5ad.12xlarge" - InstanceTypeM5ad16xlarge InstanceType = "m5ad.16xlarge" - InstanceTypeM5ad24xlarge InstanceType = "m5ad.24xlarge" - InstanceTypeM5znLarge InstanceType = "m5zn.large" - InstanceTypeM5znXlarge InstanceType = "m5zn.xlarge" - InstanceTypeM5zn2xlarge InstanceType = "m5zn.2xlarge" - InstanceTypeM5zn3xlarge InstanceType = "m5zn.3xlarge" - InstanceTypeM5zn6xlarge InstanceType = "m5zn.6xlarge" - InstanceTypeM5zn12xlarge InstanceType = "m5zn.12xlarge" - InstanceTypeM5znMetal InstanceType = "m5zn.metal" + InstanceTypeG22xlarge InstanceType = "g2.2xlarge" + InstanceTypeG28xlarge InstanceType = "g2.8xlarge" + InstanceTypeG34xlarge InstanceType = "g3.4xlarge" + InstanceTypeG38xlarge InstanceType = "g3.8xlarge" + InstanceTypeG316xlarge InstanceType = "g3.16xlarge" + InstanceTypeG3sXlarge InstanceType = "g3s.xlarge" + InstanceTypeG4adXlarge InstanceType = "g4ad.xlarge" + InstanceTypeG4ad2xlarge InstanceType = "g4ad.2xlarge" + InstanceTypeG4ad4xlarge InstanceType = "g4ad.4xlarge" + InstanceTypeG4ad8xlarge InstanceType = "g4ad.8xlarge" + InstanceTypeG4ad16xlarge InstanceType = "g4ad.16xlarge" + InstanceTypeG4dnXlarge InstanceType = "g4dn.xlarge" + InstanceTypeG4dn2xlarge InstanceType = "g4dn.2xlarge" + InstanceTypeG4dn4xlarge InstanceType = "g4dn.4xlarge" + InstanceTypeG4dn8xlarge InstanceType = "g4dn.8xlarge" + InstanceTypeG4dn12xlarge InstanceType = "g4dn.12xlarge" + InstanceTypeG4dn16xlarge InstanceType = "g4dn.16xlarge" + InstanceTypeG4dnMetal InstanceType = "g4dn.metal" + InstanceTypeG5Xlarge InstanceType = "g5.xlarge" + InstanceTypeG52xlarge InstanceType = "g5.2xlarge" + InstanceTypeG54xlarge InstanceType = "g5.4xlarge" + InstanceTypeG58xlarge InstanceType = "g5.8xlarge" + InstanceTypeG512xlarge InstanceType = "g5.12xlarge" + InstanceTypeG516xlarge InstanceType = "g5.16xlarge" + InstanceTypeG524xlarge InstanceType = "g5.24xlarge" + InstanceTypeG548xlarge InstanceType = "g5.48xlarge" + InstanceTypeG5gXlarge InstanceType = "g5g.xlarge" + InstanceTypeG5g2xlarge InstanceType = "g5g.2xlarge" + InstanceTypeG5g4xlarge InstanceType = "g5g.4xlarge" + InstanceTypeG5g8xlarge InstanceType = "g5g.8xlarge" + InstanceTypeG5g16xlarge InstanceType = "g5g.16xlarge" + InstanceTypeG5gMetal InstanceType = "g5g.metal" + InstanceTypeHi14xlarge InstanceType = "hi1.4xlarge" + InstanceTypeHpc6a48xlarge InstanceType = "hpc6a.48xlarge" + InstanceTypeHs18xlarge InstanceType = "hs1.8xlarge" InstanceTypeH12xlarge InstanceType = "h1.2xlarge" InstanceTypeH14xlarge InstanceType = "h1.4xlarge" InstanceTypeH18xlarge InstanceType = "h1.8xlarge" InstanceTypeH116xlarge InstanceType = "h1.16xlarge" - InstanceTypeZ1dLarge InstanceType = "z1d.large" - InstanceTypeZ1dXlarge InstanceType = "z1d.xlarge" - InstanceTypeZ1d2xlarge InstanceType = "z1d.2xlarge" - InstanceTypeZ1d3xlarge InstanceType = "z1d.3xlarge" - InstanceTypeZ1d6xlarge InstanceType = "z1d.6xlarge" - InstanceTypeZ1d12xlarge InstanceType = "z1d.12xlarge" - InstanceTypeZ1dMetal InstanceType = "z1d.metal" - InstanceTypeU6tb156xlarge InstanceType = "u-6tb1.56xlarge" - InstanceTypeU6tb1112xlarge InstanceType = "u-6tb1.112xlarge" - InstanceTypeU9tb1112xlarge InstanceType = "u-9tb1.112xlarge" - InstanceTypeU12tb1112xlarge InstanceType = "u-12tb1.112xlarge" - InstanceTypeU6tb1Metal InstanceType = "u-6tb1.metal" - InstanceTypeU9tb1Metal InstanceType = "u-9tb1.metal" - InstanceTypeU12tb1Metal InstanceType = "u-12tb1.metal" - InstanceTypeU18tb1Metal InstanceType = "u-18tb1.metal" - InstanceTypeU24tb1Metal InstanceType = "u-24tb1.metal" - InstanceTypeA1Medium InstanceType = "a1.medium" - InstanceTypeA1Large InstanceType = "a1.large" - InstanceTypeA1Xlarge InstanceType = "a1.xlarge" - InstanceTypeA12xlarge InstanceType = "a1.2xlarge" - InstanceTypeA14xlarge InstanceType = "a1.4xlarge" - InstanceTypeA1Metal InstanceType = "a1.metal" + InstanceTypeI2Xlarge InstanceType = "i2.xlarge" + InstanceTypeI22xlarge InstanceType = "i2.2xlarge" + InstanceTypeI24xlarge InstanceType = "i2.4xlarge" + InstanceTypeI28xlarge InstanceType = "i2.8xlarge" + InstanceTypeI3Large InstanceType = "i3.large" + InstanceTypeI3Xlarge InstanceType = "i3.xlarge" + InstanceTypeI32xlarge InstanceType = "i3.2xlarge" + InstanceTypeI34xlarge InstanceType = "i3.4xlarge" + InstanceTypeI38xlarge InstanceType = "i3.8xlarge" + InstanceTypeI316xlarge InstanceType = "i3.16xlarge" + InstanceTypeI3Metal InstanceType = "i3.metal" + InstanceTypeI3enLarge InstanceType = "i3en.large" + InstanceTypeI3enXlarge InstanceType = "i3en.xlarge" + InstanceTypeI3en2xlarge InstanceType = "i3en.2xlarge" + InstanceTypeI3en3xlarge InstanceType = "i3en.3xlarge" + InstanceTypeI3en6xlarge InstanceType = "i3en.6xlarge" + InstanceTypeI3en12xlarge InstanceType = "i3en.12xlarge" + InstanceTypeI3en24xlarge InstanceType = "i3en.24xlarge" + InstanceTypeI3enMetal InstanceType = "i3en.metal" + InstanceTypeIm4gnLarge InstanceType = "im4gn.large" + InstanceTypeIm4gnXlarge InstanceType = "im4gn.xlarge" + InstanceTypeIm4gn2xlarge InstanceType = "im4gn.2xlarge" + InstanceTypeIm4gn4xlarge InstanceType = "im4gn.4xlarge" + InstanceTypeIm4gn8xlarge InstanceType = "im4gn.8xlarge" + InstanceTypeIm4gn16xlarge InstanceType = "im4gn.16xlarge" + InstanceTypeInf1Xlarge InstanceType = "inf1.xlarge" + InstanceTypeInf12xlarge InstanceType = "inf1.2xlarge" + InstanceTypeInf16xlarge InstanceType = "inf1.6xlarge" + InstanceTypeInf124xlarge InstanceType = "inf1.24xlarge" + InstanceTypeIs4genMedium InstanceType = "is4gen.medium" + InstanceTypeIs4genLarge InstanceType = "is4gen.large" + InstanceTypeIs4genXlarge InstanceType = "is4gen.xlarge" + InstanceTypeIs4gen2xlarge InstanceType = "is4gen.2xlarge" + InstanceTypeIs4gen4xlarge InstanceType = "is4gen.4xlarge" + InstanceTypeIs4gen8xlarge InstanceType = "is4gen.8xlarge" + InstanceTypeM1Small InstanceType = "m1.small" + InstanceTypeM1Medium InstanceType = "m1.medium" + InstanceTypeM1Large InstanceType = "m1.large" + InstanceTypeM1Xlarge InstanceType = "m1.xlarge" + InstanceTypeM2Xlarge InstanceType = "m2.xlarge" + InstanceTypeM22xlarge InstanceType = "m2.2xlarge" + InstanceTypeM24xlarge InstanceType = "m2.4xlarge" + InstanceTypeM3Medium InstanceType = "m3.medium" + InstanceTypeM3Large InstanceType = "m3.large" + InstanceTypeM3Xlarge InstanceType = "m3.xlarge" + InstanceTypeM32xlarge InstanceType = "m3.2xlarge" + InstanceTypeM4Large InstanceType = "m4.large" + InstanceTypeM4Xlarge InstanceType = "m4.xlarge" + InstanceTypeM42xlarge InstanceType = "m4.2xlarge" + InstanceTypeM44xlarge InstanceType = "m4.4xlarge" + InstanceTypeM410xlarge InstanceType = "m4.10xlarge" + InstanceTypeM416xlarge InstanceType = "m4.16xlarge" + InstanceTypeM5Large InstanceType = "m5.large" + InstanceTypeM5Xlarge InstanceType = "m5.xlarge" + InstanceTypeM52xlarge InstanceType = "m5.2xlarge" + InstanceTypeM54xlarge InstanceType = "m5.4xlarge" + InstanceTypeM58xlarge InstanceType = "m5.8xlarge" + InstanceTypeM512xlarge InstanceType = "m5.12xlarge" + InstanceTypeM516xlarge InstanceType = "m5.16xlarge" + InstanceTypeM524xlarge InstanceType = "m5.24xlarge" + InstanceTypeM5Metal InstanceType = "m5.metal" + InstanceTypeM5aLarge InstanceType = "m5a.large" + InstanceTypeM5aXlarge InstanceType = "m5a.xlarge" + InstanceTypeM5a2xlarge InstanceType = "m5a.2xlarge" + InstanceTypeM5a4xlarge InstanceType = "m5a.4xlarge" + InstanceTypeM5a8xlarge InstanceType = "m5a.8xlarge" + InstanceTypeM5a12xlarge InstanceType = "m5a.12xlarge" + InstanceTypeM5a16xlarge InstanceType = "m5a.16xlarge" + InstanceTypeM5a24xlarge InstanceType = "m5a.24xlarge" + InstanceTypeM5adLarge InstanceType = "m5ad.large" + InstanceTypeM5adXlarge InstanceType = "m5ad.xlarge" + InstanceTypeM5ad2xlarge InstanceType = "m5ad.2xlarge" + InstanceTypeM5ad4xlarge InstanceType = "m5ad.4xlarge" + InstanceTypeM5ad8xlarge InstanceType = "m5ad.8xlarge" + InstanceTypeM5ad12xlarge InstanceType = "m5ad.12xlarge" + InstanceTypeM5ad16xlarge InstanceType = "m5ad.16xlarge" + InstanceTypeM5ad24xlarge InstanceType = "m5ad.24xlarge" + InstanceTypeM5dLarge InstanceType = "m5d.large" + InstanceTypeM5dXlarge InstanceType = "m5d.xlarge" + InstanceTypeM5d2xlarge InstanceType = "m5d.2xlarge" + InstanceTypeM5d4xlarge InstanceType = "m5d.4xlarge" + InstanceTypeM5d8xlarge InstanceType = "m5d.8xlarge" + InstanceTypeM5d12xlarge InstanceType = "m5d.12xlarge" + InstanceTypeM5d16xlarge InstanceType = "m5d.16xlarge" + InstanceTypeM5d24xlarge InstanceType = "m5d.24xlarge" + InstanceTypeM5dMetal InstanceType = "m5d.metal" InstanceTypeM5dnLarge InstanceType = "m5dn.large" InstanceTypeM5dnXlarge InstanceType = "m5dn.xlarge" InstanceTypeM5dn2xlarge InstanceType = "m5dn.2xlarge" @@ -2846,28 +2809,23 @@ const ( InstanceTypeM5n16xlarge InstanceType = "m5n.16xlarge" InstanceTypeM5n24xlarge InstanceType = "m5n.24xlarge" InstanceTypeM5nMetal InstanceType = "m5n.metal" - InstanceTypeR5dnLarge InstanceType = "r5dn.large" - InstanceTypeR5dnXlarge InstanceType = "r5dn.xlarge" - InstanceTypeR5dn2xlarge InstanceType = "r5dn.2xlarge" - InstanceTypeR5dn4xlarge InstanceType = "r5dn.4xlarge" - InstanceTypeR5dn8xlarge InstanceType = "r5dn.8xlarge" - InstanceTypeR5dn12xlarge InstanceType = "r5dn.12xlarge" - InstanceTypeR5dn16xlarge InstanceType = "r5dn.16xlarge" - InstanceTypeR5dn24xlarge InstanceType = "r5dn.24xlarge" - InstanceTypeR5dnMetal InstanceType = "r5dn.metal" - InstanceTypeR5nLarge InstanceType = "r5n.large" - InstanceTypeR5nXlarge InstanceType = "r5n.xlarge" - InstanceTypeR5n2xlarge InstanceType = "r5n.2xlarge" - InstanceTypeR5n4xlarge InstanceType = "r5n.4xlarge" - InstanceTypeR5n8xlarge InstanceType = "r5n.8xlarge" - InstanceTypeR5n12xlarge InstanceType = "r5n.12xlarge" - InstanceTypeR5n16xlarge InstanceType = "r5n.16xlarge" - InstanceTypeR5n24xlarge InstanceType = "r5n.24xlarge" - InstanceTypeR5nMetal InstanceType = "r5n.metal" - InstanceTypeInf1Xlarge InstanceType = "inf1.xlarge" - InstanceTypeInf12xlarge InstanceType = "inf1.2xlarge" - InstanceTypeInf16xlarge InstanceType = "inf1.6xlarge" - InstanceTypeInf124xlarge InstanceType = "inf1.24xlarge" + InstanceTypeM5znLarge InstanceType = "m5zn.large" + InstanceTypeM5znXlarge InstanceType = "m5zn.xlarge" + InstanceTypeM5zn2xlarge InstanceType = "m5zn.2xlarge" + InstanceTypeM5zn3xlarge InstanceType = "m5zn.3xlarge" + InstanceTypeM5zn6xlarge InstanceType = "m5zn.6xlarge" + InstanceTypeM5zn12xlarge InstanceType = "m5zn.12xlarge" + InstanceTypeM5znMetal InstanceType = "m5zn.metal" + InstanceTypeM6aLarge InstanceType = "m6a.large" + InstanceTypeM6aXlarge InstanceType = "m6a.xlarge" + InstanceTypeM6a2xlarge InstanceType = "m6a.2xlarge" + InstanceTypeM6a4xlarge InstanceType = "m6a.4xlarge" + InstanceTypeM6a8xlarge InstanceType = "m6a.8xlarge" + InstanceTypeM6a12xlarge InstanceType = "m6a.12xlarge" + InstanceTypeM6a16xlarge InstanceType = "m6a.16xlarge" + InstanceTypeM6a24xlarge InstanceType = "m6a.24xlarge" + InstanceTypeM6a32xlarge InstanceType = "m6a.32xlarge" + InstanceTypeM6a48xlarge InstanceType = "m6a.48xlarge" InstanceTypeM6gMetal InstanceType = "m6g.metal" InstanceTypeM6gMedium InstanceType = "m6g.medium" InstanceTypeM6gLarge InstanceType = "m6g.large" @@ -2886,16 +2844,6 @@ const ( InstanceTypeM6gd8xlarge InstanceType = "m6gd.8xlarge" InstanceTypeM6gd12xlarge InstanceType = "m6gd.12xlarge" InstanceTypeM6gd16xlarge InstanceType = "m6gd.16xlarge" - InstanceTypeM6aLarge InstanceType = "m6a.large" - InstanceTypeM6aXlarge InstanceType = "m6a.xlarge" - InstanceTypeM6a2xlarge InstanceType = "m6a.2xlarge" - InstanceTypeM6a4xlarge InstanceType = "m6a.4xlarge" - InstanceTypeM6a8xlarge InstanceType = "m6a.8xlarge" - InstanceTypeM6a12xlarge InstanceType = "m6a.12xlarge" - InstanceTypeM6a16xlarge InstanceType = "m6a.16xlarge" - InstanceTypeM6a24xlarge InstanceType = "m6a.24xlarge" - InstanceTypeM6a32xlarge InstanceType = "m6a.32xlarge" - InstanceTypeM6a48xlarge InstanceType = "m6a.48xlarge" InstanceTypeM6iLarge InstanceType = "m6i.large" InstanceTypeM6iXlarge InstanceType = "m6i.xlarge" InstanceTypeM6i2xlarge InstanceType = "m6i.2xlarge" @@ -2906,199 +2854,182 @@ const ( InstanceTypeM6i24xlarge InstanceType = "m6i.24xlarge" InstanceTypeM6i32xlarge InstanceType = "m6i.32xlarge" InstanceTypeMac1Metal InstanceType = "mac1.metal" - InstanceTypeX2gdMedium InstanceType = "x2gd.medium" - InstanceTypeX2gdLarge InstanceType = "x2gd.large" - InstanceTypeX2gdXlarge InstanceType = "x2gd.xlarge" - InstanceTypeX2gd2xlarge InstanceType = "x2gd.2xlarge" - InstanceTypeX2gd4xlarge InstanceType = "x2gd.4xlarge" - InstanceTypeX2gd8xlarge InstanceType = "x2gd.8xlarge" - InstanceTypeX2gd12xlarge InstanceType = "x2gd.12xlarge" - InstanceTypeX2gd16xlarge InstanceType = "x2gd.16xlarge" - InstanceTypeX2gdMetal InstanceType = "x2gd.metal" - InstanceTypeVt13xlarge InstanceType = "vt1.3xlarge" - InstanceTypeVt16xlarge InstanceType = "vt1.6xlarge" - InstanceTypeVt124xlarge InstanceType = "vt1.24xlarge" - InstanceTypeIm4gn16xlarge InstanceType = "im4gn.16xlarge" - InstanceTypeIm4gn2xlarge InstanceType = "im4gn.2xlarge" - InstanceTypeIm4gn4xlarge InstanceType = "im4gn.4xlarge" - InstanceTypeIm4gn8xlarge InstanceType = "im4gn.8xlarge" - InstanceTypeIm4gnLarge InstanceType = "im4gn.large" - InstanceTypeIm4gnXlarge InstanceType = "im4gn.xlarge" - InstanceTypeIs4gen2xlarge InstanceType = "is4gen.2xlarge" - InstanceTypeIs4gen4xlarge InstanceType = "is4gen.4xlarge" - InstanceTypeIs4gen8xlarge InstanceType = "is4gen.8xlarge" - InstanceTypeIs4genLarge InstanceType = "is4gen.large" - InstanceTypeIs4genMedium InstanceType = "is4gen.medium" - InstanceTypeIs4genXlarge InstanceType = "is4gen.xlarge" - InstanceTypeG5gXlarge InstanceType = "g5g.xlarge" - InstanceTypeG5g2xlarge InstanceType = "g5g.2xlarge" - InstanceTypeG5g4xlarge InstanceType = "g5g.4xlarge" - InstanceTypeG5g8xlarge InstanceType = "g5g.8xlarge" - InstanceTypeG5g16xlarge InstanceType = "g5g.16xlarge" - InstanceTypeG5gMetal InstanceType = "g5g.metal" - InstanceTypeG5Xlarge InstanceType = "g5.xlarge" - InstanceTypeG52xlarge InstanceType = "g5.2xlarge" - InstanceTypeG54xlarge InstanceType = "g5.4xlarge" - InstanceTypeG58xlarge InstanceType = "g5.8xlarge" - InstanceTypeG512xlarge InstanceType = "g5.12xlarge" - InstanceTypeG516xlarge InstanceType = "g5.16xlarge" - InstanceTypeG524xlarge InstanceType = "g5.24xlarge" - InstanceTypeG548xlarge InstanceType = "g5.48xlarge" -) - -// Values returns all known values for InstanceType. Note that this can be expanded -// in the future, and so it is only as up to date as the client. The ordering of -// this slice is not guaranteed to be stable across updates. -func (InstanceType) Values() []InstanceType { - return []InstanceType{ - "t1.micro", - "t2.nano", - "t2.micro", - "t2.small", - "t2.medium", - "t2.large", - "t2.xlarge", - "t2.2xlarge", - "t3.nano", - "t3.micro", - "t3.small", - "t3.medium", - "t3.large", - "t3.xlarge", - "t3.2xlarge", - "t3a.nano", - "t3a.micro", - "t3a.small", - "t3a.medium", - "t3a.large", - "t3a.xlarge", - "t3a.2xlarge", - "t4g.nano", - "t4g.micro", - "t4g.small", - "t4g.medium", - "t4g.large", - "t4g.xlarge", - "t4g.2xlarge", - "m1.small", - "m1.medium", - "m1.large", - "m1.xlarge", - "m3.medium", - "m3.large", - "m3.xlarge", - "m3.2xlarge", - "m4.large", - "m4.xlarge", - "m4.2xlarge", - "m4.4xlarge", - "m4.10xlarge", - "m4.16xlarge", - "m2.xlarge", - "m2.2xlarge", - "m2.4xlarge", - "cr1.8xlarge", - "r3.large", - "r3.xlarge", - "r3.2xlarge", - "r3.4xlarge", - "r3.8xlarge", - "r4.large", - "r4.xlarge", - "r4.2xlarge", - "r4.4xlarge", - "r4.8xlarge", - "r4.16xlarge", - "r5.large", - "r5.xlarge", - "r5.2xlarge", - "r5.4xlarge", - "r5.8xlarge", - "r5.12xlarge", - "r5.16xlarge", - "r5.24xlarge", - "r5.metal", - "r5a.large", - "r5a.xlarge", - "r5a.2xlarge", - "r5a.4xlarge", - "r5a.8xlarge", - "r5a.12xlarge", - "r5a.16xlarge", - "r5a.24xlarge", - "r5b.large", - "r5b.xlarge", - "r5b.2xlarge", - "r5b.4xlarge", - "r5b.8xlarge", - "r5b.12xlarge", - "r5b.16xlarge", - "r5b.24xlarge", - "r5b.metal", - "r5d.large", - "r5d.xlarge", - "r5d.2xlarge", - "r5d.4xlarge", - "r5d.8xlarge", - "r5d.12xlarge", - "r5d.16xlarge", - "r5d.24xlarge", - "r5d.metal", - "r5ad.large", - "r5ad.xlarge", - "r5ad.2xlarge", - "r5ad.4xlarge", - "r5ad.8xlarge", - "r5ad.12xlarge", - "r5ad.16xlarge", - "r5ad.24xlarge", - "r6g.metal", - "r6g.medium", - "r6g.large", - "r6g.xlarge", - "r6g.2xlarge", - "r6g.4xlarge", - "r6g.8xlarge", - "r6g.12xlarge", - "r6g.16xlarge", - "r6gd.metal", - "r6gd.medium", - "r6gd.large", - "r6gd.xlarge", - "r6gd.2xlarge", - "r6gd.4xlarge", - "r6gd.8xlarge", - "r6gd.12xlarge", - "r6gd.16xlarge", - "x1.16xlarge", - "x1.32xlarge", - "x1e.xlarge", - "x1e.2xlarge", - "x1e.4xlarge", - "x1e.8xlarge", - "x1e.16xlarge", - "x1e.32xlarge", - "i2.xlarge", - "i2.2xlarge", - "i2.4xlarge", - "i2.8xlarge", - "i3.large", - "i3.xlarge", - "i3.2xlarge", - "i3.4xlarge", - "i3.8xlarge", - "i3.16xlarge", - "i3.metal", - "i3en.large", - "i3en.xlarge", - "i3en.2xlarge", - "i3en.3xlarge", - "i3en.6xlarge", - "i3en.12xlarge", - "i3en.24xlarge", - "i3en.metal", - "hi1.4xlarge", - "hs1.8xlarge", + InstanceTypeP2Xlarge InstanceType = "p2.xlarge" + InstanceTypeP28xlarge InstanceType = "p2.8xlarge" + InstanceTypeP216xlarge InstanceType = "p2.16xlarge" + InstanceTypeP32xlarge InstanceType = "p3.2xlarge" + InstanceTypeP38xlarge InstanceType = "p3.8xlarge" + InstanceTypeP316xlarge InstanceType = "p3.16xlarge" + InstanceTypeP3dn24xlarge InstanceType = "p3dn.24xlarge" + InstanceTypeP4d24xlarge InstanceType = "p4d.24xlarge" + InstanceTypeR3Large InstanceType = "r3.large" + InstanceTypeR3Xlarge InstanceType = "r3.xlarge" + InstanceTypeR32xlarge InstanceType = "r3.2xlarge" + InstanceTypeR34xlarge InstanceType = "r3.4xlarge" + InstanceTypeR38xlarge InstanceType = "r3.8xlarge" + InstanceTypeR4Large InstanceType = "r4.large" + InstanceTypeR4Xlarge InstanceType = "r4.xlarge" + InstanceTypeR42xlarge InstanceType = "r4.2xlarge" + InstanceTypeR44xlarge InstanceType = "r4.4xlarge" + InstanceTypeR48xlarge InstanceType = "r4.8xlarge" + InstanceTypeR416xlarge InstanceType = "r4.16xlarge" + InstanceTypeR5Large InstanceType = "r5.large" + InstanceTypeR5Xlarge InstanceType = "r5.xlarge" + InstanceTypeR52xlarge InstanceType = "r5.2xlarge" + InstanceTypeR54xlarge InstanceType = "r5.4xlarge" + InstanceTypeR58xlarge InstanceType = "r5.8xlarge" + InstanceTypeR512xlarge InstanceType = "r5.12xlarge" + InstanceTypeR516xlarge InstanceType = "r5.16xlarge" + InstanceTypeR524xlarge InstanceType = "r5.24xlarge" + InstanceTypeR5Metal InstanceType = "r5.metal" + InstanceTypeR5aLarge InstanceType = "r5a.large" + InstanceTypeR5aXlarge InstanceType = "r5a.xlarge" + InstanceTypeR5a2xlarge InstanceType = "r5a.2xlarge" + InstanceTypeR5a4xlarge InstanceType = "r5a.4xlarge" + InstanceTypeR5a8xlarge InstanceType = "r5a.8xlarge" + InstanceTypeR5a12xlarge InstanceType = "r5a.12xlarge" + InstanceTypeR5a16xlarge InstanceType = "r5a.16xlarge" + InstanceTypeR5a24xlarge InstanceType = "r5a.24xlarge" + InstanceTypeR5adLarge InstanceType = "r5ad.large" + InstanceTypeR5adXlarge InstanceType = "r5ad.xlarge" + InstanceTypeR5ad2xlarge InstanceType = "r5ad.2xlarge" + InstanceTypeR5ad4xlarge InstanceType = "r5ad.4xlarge" + InstanceTypeR5ad8xlarge InstanceType = "r5ad.8xlarge" + InstanceTypeR5ad12xlarge InstanceType = "r5ad.12xlarge" + InstanceTypeR5ad16xlarge InstanceType = "r5ad.16xlarge" + InstanceTypeR5ad24xlarge InstanceType = "r5ad.24xlarge" + InstanceTypeR5bLarge InstanceType = "r5b.large" + InstanceTypeR5bXlarge InstanceType = "r5b.xlarge" + InstanceTypeR5b2xlarge InstanceType = "r5b.2xlarge" + InstanceTypeR5b4xlarge InstanceType = "r5b.4xlarge" + InstanceTypeR5b8xlarge InstanceType = "r5b.8xlarge" + InstanceTypeR5b12xlarge InstanceType = "r5b.12xlarge" + InstanceTypeR5b16xlarge InstanceType = "r5b.16xlarge" + InstanceTypeR5b24xlarge InstanceType = "r5b.24xlarge" + InstanceTypeR5bMetal InstanceType = "r5b.metal" + InstanceTypeR5dLarge InstanceType = "r5d.large" + InstanceTypeR5dXlarge InstanceType = "r5d.xlarge" + InstanceTypeR5d2xlarge InstanceType = "r5d.2xlarge" + InstanceTypeR5d4xlarge InstanceType = "r5d.4xlarge" + InstanceTypeR5d8xlarge InstanceType = "r5d.8xlarge" + InstanceTypeR5d12xlarge InstanceType = "r5d.12xlarge" + InstanceTypeR5d16xlarge InstanceType = "r5d.16xlarge" + InstanceTypeR5d24xlarge InstanceType = "r5d.24xlarge" + InstanceTypeR5dMetal InstanceType = "r5d.metal" + InstanceTypeR5dnLarge InstanceType = "r5dn.large" + InstanceTypeR5dnXlarge InstanceType = "r5dn.xlarge" + InstanceTypeR5dn2xlarge InstanceType = "r5dn.2xlarge" + InstanceTypeR5dn4xlarge InstanceType = "r5dn.4xlarge" + InstanceTypeR5dn8xlarge InstanceType = "r5dn.8xlarge" + InstanceTypeR5dn12xlarge InstanceType = "r5dn.12xlarge" + InstanceTypeR5dn16xlarge InstanceType = "r5dn.16xlarge" + InstanceTypeR5dn24xlarge InstanceType = "r5dn.24xlarge" + InstanceTypeR5dnMetal InstanceType = "r5dn.metal" + InstanceTypeR5nLarge InstanceType = "r5n.large" + InstanceTypeR5nXlarge InstanceType = "r5n.xlarge" + InstanceTypeR5n2xlarge InstanceType = "r5n.2xlarge" + InstanceTypeR5n4xlarge InstanceType = "r5n.4xlarge" + InstanceTypeR5n8xlarge InstanceType = "r5n.8xlarge" + InstanceTypeR5n12xlarge InstanceType = "r5n.12xlarge" + InstanceTypeR5n16xlarge InstanceType = "r5n.16xlarge" + InstanceTypeR5n24xlarge InstanceType = "r5n.24xlarge" + InstanceTypeR5nMetal InstanceType = "r5n.metal" + InstanceTypeR6gMedium InstanceType = "r6g.medium" + InstanceTypeR6gLarge InstanceType = "r6g.large" + InstanceTypeR6gXlarge InstanceType = "r6g.xlarge" + InstanceTypeR6g2xlarge InstanceType = "r6g.2xlarge" + InstanceTypeR6g4xlarge InstanceType = "r6g.4xlarge" + InstanceTypeR6g8xlarge InstanceType = "r6g.8xlarge" + InstanceTypeR6g12xlarge InstanceType = "r6g.12xlarge" + InstanceTypeR6g16xlarge InstanceType = "r6g.16xlarge" + InstanceTypeR6gMetal InstanceType = "r6g.metal" + InstanceTypeR6gdMedium InstanceType = "r6gd.medium" + InstanceTypeR6gdLarge InstanceType = "r6gd.large" + InstanceTypeR6gdXlarge InstanceType = "r6gd.xlarge" + InstanceTypeR6gd2xlarge InstanceType = "r6gd.2xlarge" + InstanceTypeR6gd4xlarge InstanceType = "r6gd.4xlarge" + InstanceTypeR6gd8xlarge InstanceType = "r6gd.8xlarge" + InstanceTypeR6gd12xlarge InstanceType = "r6gd.12xlarge" + InstanceTypeR6gd16xlarge InstanceType = "r6gd.16xlarge" + InstanceTypeR6gdMetal InstanceType = "r6gd.metal" + InstanceTypeT1Micro InstanceType = "t1.micro" + InstanceTypeT2Nano InstanceType = "t2.nano" + InstanceTypeT2Micro InstanceType = "t2.micro" + InstanceTypeT2Small InstanceType = "t2.small" + InstanceTypeT2Medium InstanceType = "t2.medium" + InstanceTypeT2Large InstanceType = "t2.large" + InstanceTypeT2Xlarge InstanceType = "t2.xlarge" + InstanceTypeT22xlarge InstanceType = "t2.2xlarge" + InstanceTypeT3Nano InstanceType = "t3.nano" + InstanceTypeT3Micro InstanceType = "t3.micro" + InstanceTypeT3Small InstanceType = "t3.small" + InstanceTypeT3Medium InstanceType = "t3.medium" + InstanceTypeT3Large InstanceType = "t3.large" + InstanceTypeT3Xlarge InstanceType = "t3.xlarge" + InstanceTypeT32xlarge InstanceType = "t3.2xlarge" + InstanceTypeT3aNano InstanceType = "t3a.nano" + InstanceTypeT3aMicro InstanceType = "t3a.micro" + InstanceTypeT3aSmall InstanceType = "t3a.small" + InstanceTypeT3aMedium InstanceType = "t3a.medium" + InstanceTypeT3aLarge InstanceType = "t3a.large" + InstanceTypeT3aXlarge InstanceType = "t3a.xlarge" + InstanceTypeT3a2xlarge InstanceType = "t3a.2xlarge" + InstanceTypeT4gNano InstanceType = "t4g.nano" + InstanceTypeT4gMicro InstanceType = "t4g.micro" + InstanceTypeT4gSmall InstanceType = "t4g.small" + InstanceTypeT4gMedium InstanceType = "t4g.medium" + InstanceTypeT4gLarge InstanceType = "t4g.large" + InstanceTypeT4gXlarge InstanceType = "t4g.xlarge" + InstanceTypeT4g2xlarge InstanceType = "t4g.2xlarge" + InstanceTypeU6tb156xlarge InstanceType = "u-6tb1.56xlarge" + InstanceTypeU6tb1112xlarge InstanceType = "u-6tb1.112xlarge" + InstanceTypeU9tb1112xlarge InstanceType = "u-9tb1.112xlarge" + InstanceTypeU12tb1112xlarge InstanceType = "u-12tb1.112xlarge" + InstanceTypeU6tb1Metal InstanceType = "u-6tb1.metal" + InstanceTypeU9tb1Metal InstanceType = "u-9tb1.metal" + InstanceTypeU12tb1Metal InstanceType = "u-12tb1.metal" + InstanceTypeU18tb1Metal InstanceType = "u-18tb1.metal" + InstanceTypeU24tb1Metal InstanceType = "u-24tb1.metal" + InstanceTypeVt13xlarge InstanceType = "vt1.3xlarge" + InstanceTypeVt16xlarge InstanceType = "vt1.6xlarge" + InstanceTypeVt124xlarge InstanceType = "vt1.24xlarge" + InstanceTypeX116xlarge InstanceType = "x1.16xlarge" + InstanceTypeX132xlarge InstanceType = "x1.32xlarge" + InstanceTypeX1eXlarge InstanceType = "x1e.xlarge" + InstanceTypeX1e2xlarge InstanceType = "x1e.2xlarge" + InstanceTypeX1e4xlarge InstanceType = "x1e.4xlarge" + InstanceTypeX1e8xlarge InstanceType = "x1e.8xlarge" + InstanceTypeX1e16xlarge InstanceType = "x1e.16xlarge" + InstanceTypeX1e32xlarge InstanceType = "x1e.32xlarge" + InstanceTypeX2gdMedium InstanceType = "x2gd.medium" + InstanceTypeX2gdLarge InstanceType = "x2gd.large" + InstanceTypeX2gdXlarge InstanceType = "x2gd.xlarge" + InstanceTypeX2gd2xlarge InstanceType = "x2gd.2xlarge" + InstanceTypeX2gd4xlarge InstanceType = "x2gd.4xlarge" + InstanceTypeX2gd8xlarge InstanceType = "x2gd.8xlarge" + InstanceTypeX2gd12xlarge InstanceType = "x2gd.12xlarge" + InstanceTypeX2gd16xlarge InstanceType = "x2gd.16xlarge" + InstanceTypeX2gdMetal InstanceType = "x2gd.metal" + InstanceTypeZ1dLarge InstanceType = "z1d.large" + InstanceTypeZ1dXlarge InstanceType = "z1d.xlarge" + InstanceTypeZ1d2xlarge InstanceType = "z1d.2xlarge" + InstanceTypeZ1d3xlarge InstanceType = "z1d.3xlarge" + InstanceTypeZ1d6xlarge InstanceType = "z1d.6xlarge" + InstanceTypeZ1d12xlarge InstanceType = "z1d.12xlarge" + InstanceTypeZ1dMetal InstanceType = "z1d.metal" +) + +// Values returns all known values for InstanceType. Note that this can be expanded +// in the future, and so it is only as up to date as the client. The ordering of +// this slice is not guaranteed to be stable across updates. +func (InstanceType) Values() []InstanceType { + return []InstanceType{ + "a1.medium", + "a1.large", + "a1.xlarge", + "a1.2xlarge", + "a1.4xlarge", + "a1.metal", "c1.medium", "c1.xlarge", "c3.large", @@ -3152,7 +3083,6 @@ func (InstanceType) Values() []InstanceType { "c5n.9xlarge", "c5n.18xlarge", "c5n.metal", - "c6g.metal", "c6g.medium", "c6g.large", "c6g.xlarge", @@ -3161,7 +3091,7 @@ func (InstanceType) Values() []InstanceType { "c6g.8xlarge", "c6g.12xlarge", "c6g.16xlarge", - "c6gd.metal", + "c6g.metal", "c6gd.medium", "c6gd.large", "c6gd.xlarge", @@ -3170,6 +3100,7 @@ func (InstanceType) Values() []InstanceType { "c6gd.8xlarge", "c6gd.12xlarge", "c6gd.16xlarge", + "c6gd.metal", "c6gn.medium", "c6gn.large", "c6gn.xlarge", @@ -3189,33 +3120,8 @@ func (InstanceType) Values() []InstanceType { "c6i.32xlarge", "cc1.4xlarge", "cc2.8xlarge", - "g2.2xlarge", - "g2.8xlarge", - "g3.4xlarge", - "g3.8xlarge", - "g3.16xlarge", - "g3s.xlarge", - "g4ad.xlarge", - "g4ad.2xlarge", - "g4ad.4xlarge", - "g4ad.8xlarge", - "g4ad.16xlarge", - "g4dn.xlarge", - "g4dn.2xlarge", - "g4dn.4xlarge", - "g4dn.8xlarge", - "g4dn.12xlarge", - "g4dn.16xlarge", - "g4dn.metal", "cg1.4xlarge", - "p2.xlarge", - "p2.8xlarge", - "p2.16xlarge", - "p3.2xlarge", - "p3.8xlarge", - "p3.16xlarge", - "p3dn.24xlarge", - "p4d.24xlarge", + "cr1.8xlarge", "d2.xlarge", "d2.2xlarge", "d2.4xlarge", @@ -3234,6 +3140,97 @@ func (InstanceType) Values() []InstanceType { "f1.2xlarge", "f1.4xlarge", "f1.16xlarge", + "g2.2xlarge", + "g2.8xlarge", + "g3.4xlarge", + "g3.8xlarge", + "g3.16xlarge", + "g3s.xlarge", + "g4ad.xlarge", + "g4ad.2xlarge", + "g4ad.4xlarge", + "g4ad.8xlarge", + "g4ad.16xlarge", + "g4dn.xlarge", + "g4dn.2xlarge", + "g4dn.4xlarge", + "g4dn.8xlarge", + "g4dn.12xlarge", + "g4dn.16xlarge", + "g4dn.metal", + "g5.xlarge", + "g5.2xlarge", + "g5.4xlarge", + "g5.8xlarge", + "g5.12xlarge", + "g5.16xlarge", + "g5.24xlarge", + "g5.48xlarge", + "g5g.xlarge", + "g5g.2xlarge", + "g5g.4xlarge", + "g5g.8xlarge", + "g5g.16xlarge", + "g5g.metal", + "hi1.4xlarge", + "hpc6a.48xlarge", + "hs1.8xlarge", + "h1.2xlarge", + "h1.4xlarge", + "h1.8xlarge", + "h1.16xlarge", + "i2.xlarge", + "i2.2xlarge", + "i2.4xlarge", + "i2.8xlarge", + "i3.large", + "i3.xlarge", + "i3.2xlarge", + "i3.4xlarge", + "i3.8xlarge", + "i3.16xlarge", + "i3.metal", + "i3en.large", + "i3en.xlarge", + "i3en.2xlarge", + "i3en.3xlarge", + "i3en.6xlarge", + "i3en.12xlarge", + "i3en.24xlarge", + "i3en.metal", + "im4gn.large", + "im4gn.xlarge", + "im4gn.2xlarge", + "im4gn.4xlarge", + "im4gn.8xlarge", + "im4gn.16xlarge", + "inf1.xlarge", + "inf1.2xlarge", + "inf1.6xlarge", + "inf1.24xlarge", + "is4gen.medium", + "is4gen.large", + "is4gen.xlarge", + "is4gen.2xlarge", + "is4gen.4xlarge", + "is4gen.8xlarge", + "m1.small", + "m1.medium", + "m1.large", + "m1.xlarge", + "m2.xlarge", + "m2.2xlarge", + "m2.4xlarge", + "m3.medium", + "m3.large", + "m3.xlarge", + "m3.2xlarge", + "m4.large", + "m4.xlarge", + "m4.2xlarge", + "m4.4xlarge", + "m4.10xlarge", + "m4.16xlarge", "m5.large", "m5.xlarge", "m5.2xlarge", @@ -3251,56 +3248,23 @@ func (InstanceType) Values() []InstanceType { "m5a.12xlarge", "m5a.16xlarge", "m5a.24xlarge", - "m5d.large", - "m5d.xlarge", - "m5d.2xlarge", - "m5d.4xlarge", - "m5d.8xlarge", - "m5d.12xlarge", - "m5d.16xlarge", - "m5d.24xlarge", - "m5d.metal", "m5ad.large", "m5ad.xlarge", "m5ad.2xlarge", "m5ad.4xlarge", "m5ad.8xlarge", - "m5ad.12xlarge", - "m5ad.16xlarge", - "m5ad.24xlarge", - "m5zn.large", - "m5zn.xlarge", - "m5zn.2xlarge", - "m5zn.3xlarge", - "m5zn.6xlarge", - "m5zn.12xlarge", - "m5zn.metal", - "h1.2xlarge", - "h1.4xlarge", - "h1.8xlarge", - "h1.16xlarge", - "z1d.large", - "z1d.xlarge", - "z1d.2xlarge", - "z1d.3xlarge", - "z1d.6xlarge", - "z1d.12xlarge", - "z1d.metal", - "u-6tb1.56xlarge", - "u-6tb1.112xlarge", - "u-9tb1.112xlarge", - "u-12tb1.112xlarge", - "u-6tb1.metal", - "u-9tb1.metal", - "u-12tb1.metal", - "u-18tb1.metal", - "u-24tb1.metal", - "a1.medium", - "a1.large", - "a1.xlarge", - "a1.2xlarge", - "a1.4xlarge", - "a1.metal", + "m5ad.12xlarge", + "m5ad.16xlarge", + "m5ad.24xlarge", + "m5d.large", + "m5d.xlarge", + "m5d.2xlarge", + "m5d.4xlarge", + "m5d.8xlarge", + "m5d.12xlarge", + "m5d.16xlarge", + "m5d.24xlarge", + "m5d.metal", "m5dn.large", "m5dn.xlarge", "m5dn.2xlarge", @@ -3319,28 +3283,23 @@ func (InstanceType) Values() []InstanceType { "m5n.16xlarge", "m5n.24xlarge", "m5n.metal", - "r5dn.large", - "r5dn.xlarge", - "r5dn.2xlarge", - "r5dn.4xlarge", - "r5dn.8xlarge", - "r5dn.12xlarge", - "r5dn.16xlarge", - "r5dn.24xlarge", - "r5dn.metal", - "r5n.large", - "r5n.xlarge", - "r5n.2xlarge", - "r5n.4xlarge", - "r5n.8xlarge", - "r5n.12xlarge", - "r5n.16xlarge", - "r5n.24xlarge", - "r5n.metal", - "inf1.xlarge", - "inf1.2xlarge", - "inf1.6xlarge", - "inf1.24xlarge", + "m5zn.large", + "m5zn.xlarge", + "m5zn.2xlarge", + "m5zn.3xlarge", + "m5zn.6xlarge", + "m5zn.12xlarge", + "m5zn.metal", + "m6a.large", + "m6a.xlarge", + "m6a.2xlarge", + "m6a.4xlarge", + "m6a.8xlarge", + "m6a.12xlarge", + "m6a.16xlarge", + "m6a.24xlarge", + "m6a.32xlarge", + "m6a.48xlarge", "m6g.metal", "m6g.medium", "m6g.large", @@ -3359,16 +3318,6 @@ func (InstanceType) Values() []InstanceType { "m6gd.8xlarge", "m6gd.12xlarge", "m6gd.16xlarge", - "m6a.large", - "m6a.xlarge", - "m6a.2xlarge", - "m6a.4xlarge", - "m6a.8xlarge", - "m6a.12xlarge", - "m6a.16xlarge", - "m6a.24xlarge", - "m6a.32xlarge", - "m6a.48xlarge", "m6i.large", "m6i.xlarge", "m6i.2xlarge", @@ -3379,6 +3328,153 @@ func (InstanceType) Values() []InstanceType { "m6i.24xlarge", "m6i.32xlarge", "mac1.metal", + "p2.xlarge", + "p2.8xlarge", + "p2.16xlarge", + "p3.2xlarge", + "p3.8xlarge", + "p3.16xlarge", + "p3dn.24xlarge", + "p4d.24xlarge", + "r3.large", + "r3.xlarge", + "r3.2xlarge", + "r3.4xlarge", + "r3.8xlarge", + "r4.large", + "r4.xlarge", + "r4.2xlarge", + "r4.4xlarge", + "r4.8xlarge", + "r4.16xlarge", + "r5.large", + "r5.xlarge", + "r5.2xlarge", + "r5.4xlarge", + "r5.8xlarge", + "r5.12xlarge", + "r5.16xlarge", + "r5.24xlarge", + "r5.metal", + "r5a.large", + "r5a.xlarge", + "r5a.2xlarge", + "r5a.4xlarge", + "r5a.8xlarge", + "r5a.12xlarge", + "r5a.16xlarge", + "r5a.24xlarge", + "r5ad.large", + "r5ad.xlarge", + "r5ad.2xlarge", + "r5ad.4xlarge", + "r5ad.8xlarge", + "r5ad.12xlarge", + "r5ad.16xlarge", + "r5ad.24xlarge", + "r5b.large", + "r5b.xlarge", + "r5b.2xlarge", + "r5b.4xlarge", + "r5b.8xlarge", + "r5b.12xlarge", + "r5b.16xlarge", + "r5b.24xlarge", + "r5b.metal", + "r5d.large", + "r5d.xlarge", + "r5d.2xlarge", + "r5d.4xlarge", + "r5d.8xlarge", + "r5d.12xlarge", + "r5d.16xlarge", + "r5d.24xlarge", + "r5d.metal", + "r5dn.large", + "r5dn.xlarge", + "r5dn.2xlarge", + "r5dn.4xlarge", + "r5dn.8xlarge", + "r5dn.12xlarge", + "r5dn.16xlarge", + "r5dn.24xlarge", + "r5dn.metal", + "r5n.large", + "r5n.xlarge", + "r5n.2xlarge", + "r5n.4xlarge", + "r5n.8xlarge", + "r5n.12xlarge", + "r5n.16xlarge", + "r5n.24xlarge", + "r5n.metal", + "r6g.medium", + "r6g.large", + "r6g.xlarge", + "r6g.2xlarge", + "r6g.4xlarge", + "r6g.8xlarge", + "r6g.12xlarge", + "r6g.16xlarge", + "r6g.metal", + "r6gd.medium", + "r6gd.large", + "r6gd.xlarge", + "r6gd.2xlarge", + "r6gd.4xlarge", + "r6gd.8xlarge", + "r6gd.12xlarge", + "r6gd.16xlarge", + "r6gd.metal", + "t1.micro", + "t2.nano", + "t2.micro", + "t2.small", + "t2.medium", + "t2.large", + "t2.xlarge", + "t2.2xlarge", + "t3.nano", + "t3.micro", + "t3.small", + "t3.medium", + "t3.large", + "t3.xlarge", + "t3.2xlarge", + "t3a.nano", + "t3a.micro", + "t3a.small", + "t3a.medium", + "t3a.large", + "t3a.xlarge", + "t3a.2xlarge", + "t4g.nano", + "t4g.micro", + "t4g.small", + "t4g.medium", + "t4g.large", + "t4g.xlarge", + "t4g.2xlarge", + "u-6tb1.56xlarge", + "u-6tb1.112xlarge", + "u-9tb1.112xlarge", + "u-12tb1.112xlarge", + "u-6tb1.metal", + "u-9tb1.metal", + "u-12tb1.metal", + "u-18tb1.metal", + "u-24tb1.metal", + "vt1.3xlarge", + "vt1.6xlarge", + "vt1.24xlarge", + "x1.16xlarge", + "x1.32xlarge", + "x1e.xlarge", + "x1e.2xlarge", + "x1e.4xlarge", + "x1e.8xlarge", + "x1e.16xlarge", + "x1e.32xlarge", "x2gd.medium", "x2gd.large", "x2gd.xlarge", @@ -3388,35 +3484,13 @@ func (InstanceType) Values() []InstanceType { "x2gd.12xlarge", "x2gd.16xlarge", "x2gd.metal", - "vt1.3xlarge", - "vt1.6xlarge", - "vt1.24xlarge", - "im4gn.16xlarge", - "im4gn.2xlarge", - "im4gn.4xlarge", - "im4gn.8xlarge", - "im4gn.large", - "im4gn.xlarge", - "is4gen.2xlarge", - "is4gen.4xlarge", - "is4gen.8xlarge", - "is4gen.large", - "is4gen.medium", - "is4gen.xlarge", - "g5g.xlarge", - "g5g.2xlarge", - "g5g.4xlarge", - "g5g.8xlarge", - "g5g.16xlarge", - "g5g.metal", - "g5.xlarge", - "g5.2xlarge", - "g5.4xlarge", - "g5.8xlarge", - "g5.12xlarge", - "g5.16xlarge", - "g5.24xlarge", - "g5.48xlarge", + "z1d.large", + "z1d.xlarge", + "z1d.2xlarge", + "z1d.3xlarge", + "z1d.6xlarge", + "z1d.12xlarge", + "z1d.metal", } } @@ -3922,6 +3996,25 @@ func (LaunchTemplateInstanceMetadataProtocolIpv6) Values() []LaunchTemplateInsta } } +type LaunchTemplateInstanceMetadataTagsState string + +// Enum values for LaunchTemplateInstanceMetadataTagsState +const ( + LaunchTemplateInstanceMetadataTagsStateDisabled LaunchTemplateInstanceMetadataTagsState = "disabled" + LaunchTemplateInstanceMetadataTagsStateEnabled LaunchTemplateInstanceMetadataTagsState = "enabled" +) + +// Values returns all known values for LaunchTemplateInstanceMetadataTagsState. +// Note that this can be expanded in the future, and so it is only as up to date as +// the client. The ordering of this slice is not guaranteed to be stable across +// updates. +func (LaunchTemplateInstanceMetadataTagsState) Values() []LaunchTemplateInstanceMetadataTagsState { + return []LaunchTemplateInstanceMetadataTagsState{ + "disabled", + "enabled", + } +} + type ListingState string // Enum values for ListingState diff --git a/service/ec2/types/types.go b/service/ec2/types/types.go index 06c24c07744..fdc612e045d 100644 --- a/service/ec2/types/types.go +++ b/service/ec2/types/types.go @@ -913,6 +913,13 @@ type CapacityReservation struct { // The ID of the Amazon Web Services account that owns the Capacity Reservation. OwnerId *string + // The Amazon Resource Name (ARN) of the cluster placement group in which the + // Capacity Reservation was created. For more information, see Capacity + // Reservations for cluster placement groups + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cr-cpg.html) in the Amazon + // EC2 User Guide. + PlacementGroupArn *string + // The date and time at which the Capacity Reservation was started. StartDate *time.Time @@ -2113,6 +2120,46 @@ type DeregisterInstanceTagAttributeRequest struct { noSmithyDocumentSerde } +// Describe details about a fast-launch enabled Windows image that meets the +// requested criteria. Criteria are defined by the DescribeFastLaunchImages action +// filters. +type DescribeFastLaunchImagesSuccessItem struct { + + // The image ID that identifies the fast-launch enabled Windows image. + ImageId *string + + // The launch template that the fast-launch enabled Windows AMI uses when it + // launches Windows instances from pre-provisioned snapshots. + LaunchTemplate *FastLaunchLaunchTemplateSpecificationResponse + + // The maximum number of parallel instances that are launched for creating + // resources. + MaxParallelLaunches *int32 + + // The owner ID for the fast-launch enabled Windows AMI. + OwnerId *string + + // The resource type that is used for pre-provisioning the Windows AMI. Supported + // values include: snapshot. + ResourceType FastLaunchResourceType + + // A group of parameters that are used for pre-provisioning the associated Windows + // AMI using snapshots. + SnapshotConfiguration *FastLaunchSnapshotConfigurationResponse + + // The current state of faster launching for the specified Windows AMI. + State FastLaunchStateCode + + // The reason that faster launching for the Windows AMI changed to the current + // state. + StateTransitionReason *string + + // The time that faster launching for the Windows AMI changed to the current state. + StateTransitionTime *time.Time + + noSmithyDocumentSerde +} + // Describes fast snapshot restores for a snapshot. type DescribeFastSnapshotRestoreSuccessItem struct { @@ -3317,6 +3364,66 @@ type FailedQueuedPurchaseDeletion struct { noSmithyDocumentSerde } +// Request to create a launch template for a fast-launch enabled Windows AMI. Note +// - You can specify either the LaunchTemplateName or the LaunchTemplateId, but not +// both. +type FastLaunchLaunchTemplateSpecificationRequest struct { + + // The version of the launch template to use for faster launching for a Windows + // AMI. + // + // This member is required. + Version *string + + // The ID of the launch template to use for faster launching for a Windows AMI. + LaunchTemplateId *string + + // The name of the launch template to use for faster launching for a Windows AMI. + LaunchTemplateName *string + + noSmithyDocumentSerde +} + +// Identifies the launch template to use for faster launching of the Windows AMI. +type FastLaunchLaunchTemplateSpecificationResponse struct { + + // The ID of the launch template for faster launching of the associated Windows + // AMI. + LaunchTemplateId *string + + // The name of the launch template for faster launching of the associated Windows + // AMI. + LaunchTemplateName *string + + // The version of the launch template for faster launching of the associated + // Windows AMI. + Version *string + + noSmithyDocumentSerde +} + +// Configuration settings for creating and managing pre-provisioned snapshots for a +// fast-launch enabled Windows AMI. +type FastLaunchSnapshotConfigurationRequest struct { + + // The number of pre-provisioned snapshots to keep on hand for a fast-launch + // enabled Windows AMI. + TargetResourceCount *int32 + + noSmithyDocumentSerde +} + +// Configuration settings for creating and managing pre-provisioned snapshots for a +// fast-launch enabled Windows AMI. +type FastLaunchSnapshotConfigurationResponse struct { + + // The number of pre-provisioned snapshots requested to keep on hand for a + // fast-launch enabled Windows AMI. + TargetResourceCount *int32 + + noSmithyDocumentSerde +} + // Describes the IAM SAML identity providers used for federated authentication. type FederatedAuthentication struct { @@ -3345,13 +3452,17 @@ type FederatedAuthenticationRequest struct { // A filter name and value pair that is used to return a more specific list of // results from a describe operation. Filters can be used to match a set of -// resources by specific criteria, such as tags, attributes, or IDs. +// resources by specific criteria, such as tags, attributes, or IDs. If you specify +// multiple filters, the filters are joined with an AND, and the request returns +// only results that match all of the specified filters. type Filter struct { // The name of the filter. Filter names are case-sensitive. Name *string - // The filter values. Filter values are case-sensitive. + // The filter values. Filter values are case-sensitive. If you specify multiple + // values for a filter, the values are joined with an OR, and the request returns + // all results that match any of the specified values. Values []string noSmithyDocumentSerde @@ -3691,9 +3802,10 @@ type FleetSpotCapacityRebalance struct { ReplacementStrategy FleetReplacementStrategy // The amount of time (in seconds) that Amazon EC2 waits before terminating the old - // Spot Instance after launching a new replacement Spot Instance. Valid only when - // replacementStrategy is set to launch-before-terminate. Valid values: Minimum - // value of 120 seconds. Maximum value of 7200 seconds. + // Spot Instance after launching a new replacement Spot Instance. Required when + // ReplacementStrategy is set to launch-before-terminate. Not valid when + // ReplacementStrategy is set to launch. Valid values: Minimum value of 120 + // seconds. Maximum value of 7200 seconds. TerminationDelay *int32 noSmithyDocumentSerde @@ -3702,7 +3814,7 @@ type FleetSpotCapacityRebalance struct { // The Spot Instance replacement strategy to use when Amazon EC2 emits a rebalance // notification signal that your Spot Instance is at an elevated risk of being // interrupted. For more information, see Capacity rebalancing -// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-configuration-strategies.html#ec2-fleet-capacity-rebalance) +// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-capacity-rebalance.html) // in the Amazon EC2 User Guide. type FleetSpotCapacityRebalanceRequest struct { @@ -3719,9 +3831,10 @@ type FleetSpotCapacityRebalanceRequest struct { ReplacementStrategy FleetReplacementStrategy // The amount of time (in seconds) that Amazon EC2 waits before terminating the old - // Spot Instance after launching a new replacement Spot Instance. Valid only when - // ReplacementStrategy is set to launch-before-terminate. Valid values: Minimum - // value of 120 seconds. Maximum value of 7200 seconds. + // Spot Instance after launching a new replacement Spot Instance. Required when + // ReplacementStrategy is set to launch-before-terminate. Not valid when + // ReplacementStrategy is set to launch. Valid values: Minimum value of 120 + // seconds. Maximum value of 7200 seconds. TerminationDelay *int32 noSmithyDocumentSerde @@ -5211,9 +5324,8 @@ type InstanceMarketOptionsRequest struct { // The metadata options for the instance. type InstanceMetadataOptionsRequest struct { - // Enables or disables the HTTP metadata endpoint on your instances. If the - // parameter is not specified, the default state is enabled. If you specify a value - // of disabled, you will not be able to access your instance metadata. + // Enables or disables the HTTP metadata endpoint on your instances. If you specify + // a value of disabled, you cannot access your instance metadata. Default: enabled HttpEndpoint InstanceMetadataEndpointState // Enables or disables the IPv6 endpoint for the instance metadata service. @@ -5224,8 +5336,7 @@ type InstanceMetadataOptionsRequest struct { // Possible values: Integers from 1 to 64 HttpPutResponseHopLimit *int32 - // The state of token usage for your instance metadata requests. If the parameter - // is not specified in the request, the default state is optional. If the state is + // The state of token usage for your instance metadata requests. If the state is // optional, you can choose to retrieve instance metadata with or without a signed // token header on your request. If you retrieve the IAM role credentials without a // token, the version 1.0 role credentials are returned. If you retrieve the IAM @@ -5233,9 +5344,16 @@ type InstanceMetadataOptionsRequest struct { // are returned. If the state is required, you must send a signed token header with // any instance metadata retrieval requests. In this state, retrieving the IAM role // credentials always returns the version 2.0 credentials; the version 1.0 - // credentials are not available. + // credentials are not available. Default: optional HttpTokens HttpTokensState + // Set to enabled to allow access to instance tags from the instance metadata. Set + // to disabled to turn off access to instance tags from the instance metadata. For + // more information, see Work with instance tags using the instance metadata + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS). + // Default: disabled + InstanceMetadataTags InstanceMetadataTagsState + noSmithyDocumentSerde } @@ -5243,7 +5361,7 @@ type InstanceMetadataOptionsRequest struct { type InstanceMetadataOptionsResponse struct { // Indicates whether the HTTP metadata endpoint on your instances is enabled or - // disabled. + // disabled. If the value is disabled, you cannot access your instance metadata. HttpEndpoint InstanceMetadataEndpointState // Indicates whether the IPv6 endpoint for the instance metadata service is enabled @@ -5255,8 +5373,7 @@ type InstanceMetadataOptionsResponse struct { // Possible values: Integers from 1 to 64 HttpPutResponseHopLimit *int32 - // The state of token usage for your instance metadata requests. If the parameter - // is not specified in the request, the default state is optional. If the state is + // The state of token usage for your instance metadata requests. If the state is // optional, you can choose to retrieve instance metadata with or without a signed // token header on your request. If you retrieve the IAM role credentials without a // token, the version 1.0 role credentials are returned. If you retrieve the IAM @@ -5264,9 +5381,15 @@ type InstanceMetadataOptionsResponse struct { // are returned. If the state is required, you must send a signed token header with // any instance metadata retrieval requests. In this state, retrieving the IAM role // credential always returns the version 2.0 credentials; the version 1.0 - // credentials are not available. + // credentials are not available. Default: optional HttpTokens HttpTokensState + // Indicates whether access to instance tags from the instance metadata is enabled + // or disabled. For more information, see Work with instance tags using the + // instance metadata + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS). + InstanceMetadataTags InstanceMetadataTagsState + // The state of the metadata option changes. pending - The metadata options are // being updated and the instance is not ready to process metadata traffic with the // new selection. applied - The metadata options have been successfully applied on @@ -7019,12 +7142,12 @@ type LaunchPermission struct { // Describes a launch permission modification. type LaunchPermissionModifications struct { - // The Amazon Web Services account ID to add to the list of launch permissions for - // the AMI. + // The Amazon Web Services account ID, organization ARN, or OU ARN to add to the + // list of launch permissions for the AMI. Add []LaunchPermission - // The Amazon Web Services account ID to remove from the list of launch permissions - // for the AMI. + // The Amazon Web Services account ID, organization ARN, or OU ARN to remove from + // the list of launch permissions for the AMI. Remove []LaunchPermission noSmithyDocumentSerde @@ -7478,9 +7601,9 @@ type LaunchTemplateInstanceMarketOptionsRequest struct { // in the Amazon Elastic Compute Cloud User Guide. type LaunchTemplateInstanceMetadataOptions struct { - // This parameter enables or disables the HTTP metadata endpoint on your instances. - // If the parameter is not specified, the default state is enabled. If you specify - // a value of disabled, you will not be able to access your instance metadata. + // Enables or disables the HTTP metadata endpoint on your instances. If the + // parameter is not specified, the default state is enabled. If you specify a value + // of disabled, you will not be able to access your instance metadata. HttpEndpoint LaunchTemplateInstanceMetadataEndpointState // Enables or disables the IPv6 endpoint for the instance metadata service. @@ -7504,6 +7627,9 @@ type LaunchTemplateInstanceMetadataOptions struct { // credentials are not available. HttpTokens LaunchTemplateHttpTokensState + // + InstanceMetadataTags LaunchTemplateInstanceMetadataTagsState + // The state of the metadata option changes. pending - The metadata options are // being updated and the instance is not ready to process metadata traffic with the // new selection. applied - The metadata options have been successfully applied on @@ -7519,9 +7645,9 @@ type LaunchTemplateInstanceMetadataOptions struct { // in the Amazon Elastic Compute Cloud User Guide. type LaunchTemplateInstanceMetadataOptionsRequest struct { - // This parameter enables or disables the HTTP metadata endpoint on your instances. - // If the parameter is not specified, the default state is enabled. If you specify - // a value of disabled, you will not be able to access your instance metadata. + // Enables or disables the HTTP metadata endpoint on your instances. If the + // parameter is not specified, the default state is enabled. If you specify a value + // of disabled, you will not be able to access your instance metadata. HttpEndpoint LaunchTemplateInstanceMetadataEndpointState // Enables or disables the IPv6 endpoint for the instance metadata service. @@ -7545,6 +7671,13 @@ type LaunchTemplateInstanceMetadataOptionsRequest struct { // credentials are not available. HttpTokens LaunchTemplateHttpTokensState + // Set to enabled to allow access to instance tags from the instance metadata. Set + // to disabled to turn off access to instance tags from the instance metadata. For + // more information, see Work with instance tags using the instance metadata + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS). + // Default: disabled + InstanceMetadataTags LaunchTemplateInstanceMetadataTagsState + noSmithyDocumentSerde } @@ -8437,7 +8570,7 @@ type ModifyVpnTunnelOptionsSpecification struct { DPDTimeoutAction *string // The number of seconds after which a DPD timeout occurs. Constraints: A value - // between 0 and 30. Default: 30 + // greater than or equal to 30. Default: 30 DPDTimeoutSeconds *int32 // The IKE versions that are permitted for the VPN tunnel. Valid values: ikev1 | @@ -9676,6 +9809,9 @@ type Placement struct { // Describes a placement group. type PlacementGroup struct { + // The Amazon Resource Name (ARN) of the placement group. + GroupArn *string + // The ID of the placement group. GroupId *string @@ -12185,7 +12321,7 @@ type SnapshotTierStatus struct { // The Spot Instance replacement strategy to use when Amazon EC2 emits a signal // that your Spot Instance is at an elevated risk of being interrupted. For more // information, see Capacity rebalancing -// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-configuration-strategies.html#spot-fleet-capacity-rebalance) +// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html) // in the Amazon EC2 User Guide for Linux Instances. type SpotCapacityRebalance struct { @@ -12202,9 +12338,10 @@ type SpotCapacityRebalance struct { ReplacementStrategy ReplacementStrategy // The amount of time (in seconds) that Amazon EC2 waits before terminating the old - // Spot Instance after launching a new replacement Spot Instance. Valid only when - // ReplacementStrategy is set to launch-before-terminate. Valid values: Minimum - // value of 120 seconds. Maximum value of 7200 seconds. + // Spot Instance after launching a new replacement Spot Instance. Required when + // ReplacementStrategy is set to launch-before-terminate. Not valid when + // ReplacementStrategy is set to launch. Valid values: Minimum value of 120 + // seconds. Maximum value of 7200 seconds. TerminationDelay *int32 noSmithyDocumentSerde @@ -12681,8 +12818,11 @@ type SpotInstanceStatus struct { // being interrupted. type SpotMaintenanceStrategies struct { - // The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at - // an elevated risk of being interrupted. + // The Spot Instance replacement strategy to use when Amazon EC2 emits a signal + // that your Spot Instance is at an elevated risk of being interrupted. For more + // information, see Capacity rebalancing + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html) + // in the Amazon EC2 User Guide for Linux Instances. CapacityRebalance *SpotCapacityRebalance noSmithyDocumentSerde @@ -15451,7 +15591,7 @@ type VpnTunnelOptionsSpecification struct { DPDTimeoutAction *string // The number of seconds after which a DPD timeout occurs. Constraints: A value - // between 0 and 30. Default: 30 + // greater than or equal to 30. Default: 30 DPDTimeoutSeconds *int32 // The IKE versions that are permitted for the VPN tunnel. Valid values: ikev1 | diff --git a/service/ec2/validators.go b/service/ec2/validators.go index c8aa9f3ca44..33f4b0ec87f 100644 --- a/service/ec2/validators.go +++ b/service/ec2/validators.go @@ -3710,6 +3710,26 @@ func (m *validateOpDetachVpnGateway) HandleInitialize(ctx context.Context, in mi return next.HandleInitialize(ctx, in) } +type validateOpDisableFastLaunch struct { +} + +func (*validateOpDisableFastLaunch) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDisableFastLaunch) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DisableFastLaunchInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDisableFastLaunchInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDisableFastSnapshotRestores struct { } @@ -3990,6 +4010,26 @@ func (m *validateOpDisassociateVpcCidrBlock) HandleInitialize(ctx context.Contex return next.HandleInitialize(ctx, in) } +type validateOpEnableFastLaunch struct { +} + +func (*validateOpEnableFastLaunch) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpEnableFastLaunch) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*EnableFastLaunchInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpEnableFastLaunchInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpEnableFastSnapshotRestores struct { } @@ -5930,6 +5970,26 @@ func (m *validateOpMoveAddressToVpc) HandleInitialize(ctx context.Context, in mi return next.HandleInitialize(ctx, in) } +type validateOpMoveByoipCidrToIpam struct { +} + +func (*validateOpMoveByoipCidrToIpam) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpMoveByoipCidrToIpam) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*MoveByoipCidrToIpamInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpMoveByoipCidrToIpamInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpProvisionByoipCidr struct { } @@ -7690,6 +7750,10 @@ func addOpDetachVpnGatewayValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDetachVpnGateway{}, middleware.After) } +func addOpDisableFastLaunchValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDisableFastLaunch{}, middleware.After) +} + func addOpDisableFastSnapshotRestoresValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDisableFastSnapshotRestores{}, middleware.After) } @@ -7746,6 +7810,10 @@ func addOpDisassociateVpcCidrBlockValidationMiddleware(stack *middleware.Stack) return stack.Initialize.Add(&validateOpDisassociateVpcCidrBlock{}, middleware.After) } +func addOpEnableFastLaunchValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpEnableFastLaunch{}, middleware.After) +} + func addOpEnableFastSnapshotRestoresValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpEnableFastSnapshotRestores{}, middleware.After) } @@ -8134,6 +8202,10 @@ func addOpMoveAddressToVpcValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpMoveAddressToVpc{}, middleware.After) } +func addOpMoveByoipCidrToIpamValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpMoveByoipCidrToIpam{}, middleware.After) +} + func addOpProvisionByoipCidrValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpProvisionByoipCidr{}, middleware.After) } @@ -8609,6 +8681,21 @@ func validateExportTaskS3LocationRequest(v *types.ExportTaskS3LocationRequest) e } } +func validateFastLaunchLaunchTemplateSpecificationRequest(v *types.FastLaunchLaunchTemplateSpecificationRequest) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "FastLaunchLaunchTemplateSpecificationRequest"} + if v.Version == nil { + invalidParams.Add(smithy.NewErrParamRequired("Version")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateFleetLaunchTemplateConfigListRequest(v []types.FleetLaunchTemplateConfigRequest) error { if v == nil { return nil @@ -12176,6 +12263,21 @@ func validateOpDetachVpnGatewayInput(v *DetachVpnGatewayInput) error { } } +func validateOpDisableFastLaunchInput(v *DisableFastLaunchInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DisableFastLaunchInput"} + if v.ImageId == nil { + invalidParams.Add(smithy.NewErrParamRequired("ImageId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDisableFastSnapshotRestoresInput(v *DisableFastSnapshotRestoresInput) error { if v == nil { return nil @@ -12404,6 +12506,26 @@ func validateOpDisassociateVpcCidrBlockInput(v *DisassociateVpcCidrBlockInput) e } } +func validateOpEnableFastLaunchInput(v *EnableFastLaunchInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "EnableFastLaunchInput"} + if v.ImageId == nil { + invalidParams.Add(smithy.NewErrParamRequired("ImageId")) + } + if v.LaunchTemplate != nil { + if err := validateFastLaunchLaunchTemplateSpecificationRequest(v.LaunchTemplate); err != nil { + invalidParams.AddNested("LaunchTemplate", err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpEnableFastSnapshotRestoresInput(v *EnableFastSnapshotRestoresInput) error { if v == nil { return nil @@ -14028,6 +14150,27 @@ func validateOpMoveAddressToVpcInput(v *MoveAddressToVpcInput) error { } } +func validateOpMoveByoipCidrToIpamInput(v *MoveByoipCidrToIpamInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "MoveByoipCidrToIpamInput"} + if v.Cidr == nil { + invalidParams.Add(smithy.NewErrParamRequired("Cidr")) + } + if v.IpamPoolId == nil { + invalidParams.Add(smithy.NewErrParamRequired("IpamPoolId")) + } + if v.IpamPoolOwner == nil { + invalidParams.Add(smithy.NewErrParamRequired("IpamPoolOwner")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpProvisionByoipCidrInput(v *ProvisionByoipCidrInput) error { if v == nil { return nil diff --git a/service/elasticache/api_op_CreateCacheCluster.go b/service/elasticache/api_op_CreateCacheCluster.go index 94b81afda87..4d9dfe0c1f7 100644 --- a/service/elasticache/api_op_CreateCacheCluster.go +++ b/service/elasticache/api_op_CreateCacheCluster.go @@ -92,7 +92,7 @@ type CreateCacheClusterInput struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, - // cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 + // cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, // cache.t4g.small, cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, // cache.t3.medium T2 node types: cache.t2.micro, cache.t2.small, diff --git a/service/elasticache/api_op_CreateReplicationGroup.go b/service/elasticache/api_op_CreateReplicationGroup.go index c22d9545865..8c3cbc77253 100644 --- a/service/elasticache/api_op_CreateReplicationGroup.go +++ b/service/elasticache/api_op_CreateReplicationGroup.go @@ -132,7 +132,7 @@ type CreateReplicationGroupInput struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, - // cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 + // cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and Memcached engine version 1.5.16 onward): // // cache.t4g.micro, diff --git a/service/elasticache/api_op_DescribeReservedCacheNodes.go b/service/elasticache/api_op_DescribeReservedCacheNodes.go index d91ae077c8d..e4516ec760f 100644 --- a/service/elasticache/api_op_DescribeReservedCacheNodes.go +++ b/service/elasticache/api_op_DescribeReservedCacheNodes.go @@ -50,7 +50,7 @@ type DescribeReservedCacheNodesInput struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, - // cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 + // cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and for Memcached engine version 1.5.16 onward): cache.t4g.micro, // cache.t4g.small, cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, // cache.t3.medium T2 node types: cache.t2.micro, cache.t2.small, diff --git a/service/elasticache/api_op_DescribeReservedCacheNodesOfferings.go b/service/elasticache/api_op_DescribeReservedCacheNodesOfferings.go index 958dbe0d442..e52f3ff494d 100644 --- a/service/elasticache/api_op_DescribeReservedCacheNodesOfferings.go +++ b/service/elasticache/api_op_DescribeReservedCacheNodesOfferings.go @@ -49,7 +49,7 @@ type DescribeReservedCacheNodesOfferingsInput struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, - // cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 + // cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and for Memcached engine version 1.5.16 onward): cache.t4g.micro, // cache.t4g.small, cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, // cache.t3.medium T2 node types: cache.t2.micro, cache.t2.small, diff --git a/service/elasticache/api_op_RebootCacheCluster.go b/service/elasticache/api_op_RebootCacheCluster.go index db2db58d1ad..ea556e4d77b 100644 --- a/service/elasticache/api_op_RebootCacheCluster.go +++ b/service/elasticache/api_op_RebootCacheCluster.go @@ -21,7 +21,7 @@ import ( // clusters. Rebooting is not supported on Redis (cluster mode enabled) clusters. // If you make changes to parameters that require a Redis (cluster mode enabled) // cluster reboot for the changes to be applied, see Rebooting a Cluster -// (http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.Rebooting.html) +// (http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/nodes.rebooting.html) // for an alternate process. func (c *Client) RebootCacheCluster(ctx context.Context, params *RebootCacheClusterInput, optFns ...func(*Options)) (*RebootCacheClusterOutput, error) { if params == nil { diff --git a/service/elasticache/types/enums.go b/service/elasticache/types/enums.go index e51f6b35a78..25a7de8358b 100644 --- a/service/elasticache/types/enums.go +++ b/service/elasticache/types/enums.go @@ -199,7 +199,8 @@ type LogType string // Enum values for LogType const ( - LogTypeSlowLog LogType = "slow-log" + LogTypeSlowLog LogType = "slow-log" + LogTypeEngineLog LogType = "engine-log" ) // Values returns all known values for LogType. Note that this can be expanded in @@ -208,6 +209,7 @@ const ( func (LogType) Values() []LogType { return []LogType{ "slow-log", + "engine-log", } } diff --git a/service/elasticache/types/types.go b/service/elasticache/types/types.go index e83dc8de822..f1f39230dfc 100644 --- a/service/elasticache/types/types.go +++ b/service/elasticache/types/types.go @@ -82,7 +82,7 @@ type CacheCluster struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, - // cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 + // cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and for Memcached engine version 1.5.16 onward): cache.t4g.micro, // cache.t4g.small, cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, // cache.t3.medium T2 node types: cache.t2.micro, cache.t2.small, @@ -287,7 +287,7 @@ type CacheEngineVersion struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, -// cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 +// cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and for Memcached engine version 1.5.16 onward): cache.t4g.micro, // cache.t4g.small, cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, // cache.t3.medium T2 node types: cache.t2.micro, cache.t2.small, @@ -867,7 +867,7 @@ type LogDeliveryConfiguration struct { // Returns the log format, either JSON or TEXT. LogFormat LogFormat - // Refers to slow-log (https://redis.io/commands/slowlog). + // Refers to slow-log (https://redis.io/commands/slowlog) or engine-log. LogType LogType // Returns an error message for the log delivery configuration. @@ -896,7 +896,7 @@ type LogDeliveryConfigurationRequest struct { // Specifies either JSON or TEXT LogFormat LogFormat - // Refers to slow-log (https://redis.io/commands/slowlog). + // Refers to slow-log (https://redis.io/commands/slowlog) or engine-log.. LogType LogType noSmithyDocumentSerde @@ -1149,7 +1149,7 @@ type PendingLogDeliveryConfiguration struct { // Returns the log format, either JSON or TEXT LogFormat LogFormat - // Refers to slow-log (https://redis.io/commands/slowlog). + // Refers to slow-log (https://redis.io/commands/slowlog) or engine-log.. LogType LogType noSmithyDocumentSerde @@ -1400,7 +1400,7 @@ type ReservedCacheNode struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, - // cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 + // cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, // cache.t4g.small, cache.t4g.medium // @@ -1518,7 +1518,7 @@ type ReservedCacheNodesOffering struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, - // cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 + // cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, // cache.t4g.small, cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, // cache.t3.medium T2 node types: cache.t2.micro, cache.t2.small, @@ -1732,7 +1732,7 @@ type Snapshot struct { // M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, // cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: // cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, - // cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 + // cache.m4.10xlarge T4g node types (available only for Redis engine version 6.0 // onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, // cache.t4g.small, cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, // cache.t3.medium T2 node types: cache.t2.micro, cache.t2.small, diff --git a/service/elasticsearchservice/deserializers.go b/service/elasticsearchservice/deserializers.go index d98fbc15b54..4b83ea731f5 100644 --- a/service/elasticsearchservice/deserializers.go +++ b/service/elasticsearchservice/deserializers.go @@ -6992,6 +6992,31 @@ func awsRestjson1_deserializeDocumentAdvancedSecurityOptions(v **types.AdvancedS for key, value := range shape { switch key { + case "AnonymousAuthDisableDate": + if value != nil { + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + sv.AnonymousAuthDisableDate = ptr.Time(smithytime.ParseEpochSeconds(f64)) + + default: + return fmt.Errorf("expected DisableTimestamp to be a JSON Number, got %T instead", value) + + } + } + + case "AnonymousAuthEnabled": + if value != nil { + jtv, ok := value.(bool) + if !ok { + return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value) + } + sv.AnonymousAuthEnabled = ptr.Bool(jtv) + } + case "Enabled": if value != nil { jtv, ok := value.(bool) diff --git a/service/elasticsearchservice/serializers.go b/service/elasticsearchservice/serializers.go index bfd3dcfb4c2..80a158cf9a4 100644 --- a/service/elasticsearchservice/serializers.go +++ b/service/elasticsearchservice/serializers.go @@ -2903,6 +2903,11 @@ func awsRestjson1_serializeDocumentAdvancedSecurityOptionsInput(v *types.Advance object := value.Object() defer object.Close() + if v.AnonymousAuthEnabled != nil { + ok := object.Key("AnonymousAuthEnabled") + ok.Boolean(*v.AnonymousAuthEnabled) + } + if v.Enabled != nil { ok := object.Key("Enabled") ok.Boolean(*v.Enabled) diff --git a/service/elasticsearchservice/types/types.go b/service/elasticsearchservice/types/types.go index 1a2373cf50f..fb2a0a7e1a9 100644 --- a/service/elasticsearchservice/types/types.go +++ b/service/elasticsearchservice/types/types.go @@ -91,6 +91,13 @@ type AdvancedOptionsStatus struct { // enabled, whether the internal database option is enabled. type AdvancedSecurityOptions struct { + // Specifies the Anonymous Auth Disable Date when Anonymous Auth is enabled. + AnonymousAuthDisableDate *time.Time + + // True if Anonymous auth is enabled. Anonymous auth can be enabled only when + // AdvancedSecurity is enabled on existing domains. + AnonymousAuthEnabled *bool + // True if advanced security is enabled. Enabled *bool @@ -109,6 +116,10 @@ type AdvancedSecurityOptions struct { // enabled). type AdvancedSecurityOptionsInput struct { + // True if Anonymous auth is enabled. Anonymous auth can be enabled only when + // AdvancedSecurity is enabled on existing domains. + AnonymousAuthEnabled *bool + // True if advanced security is enabled. Enabled *bool diff --git a/service/finspacedata/api_op_CreateChangeset.go b/service/finspacedata/api_op_CreateChangeset.go index af5c1cd0d05..17f14fa22bc 100644 --- a/service/finspacedata/api_op_CreateChangeset.go +++ b/service/finspacedata/api_op_CreateChangeset.go @@ -67,19 +67,34 @@ type CreateChangesetInput struct { // * // XML - XML source file format. // - // For example, you could specify the following for + // Here is an example of how you could specify the // formatParams: "formatParams": { "formatType": "CSV", "withHeader": "true", - // "separator": ",", "compression":"None" } + // "separator": ",", "compression":"None" } Note that if you only provide + // formatType as CSV, the rest of the attributes will automatically default to CSV + // values as following: { "withHeader": "true", "separator": "," } For more + // information about supported file formats, see Supported Data Types and File + // Formats + // (https://docs.aws.amazon.com/finspace/latest/userguide/supported-data-types.html) + // in the FinSpace User Guide. // // This member is required. FormatParams map[string]string - // Options that define the location of the data being ingested. + // Options that define the location of the data being ingested (s3SourcePath) and + // the source of the changeset (sourceType). Both s3SourcePath and sourceType are + // required attributes. Here is an example of how you could specify the + // sourceParams: "sourceParams": { "s3SourcePath": + // "s3://finspace-landing-us-east-2-bk7gcfvitndqa6ebnvys4d/scratch/wr5hh8pwkpqqkxa4sxrmcw/ingestion/equity.csv", + // "sourceType": "S3" } The S3 path that you specify must allow the FinSpace role + // access. To do that, you first need to configure the IAM policy on S3 bucket. For + // more information, see Loading data from an Amazon S3 Bucket using the FinSpace + // API + // (https://docs.aws.amazon.com/finspace/latest/data-api/fs-using-the-finspace-api.html#access-s3-buckets)section. // // This member is required. SourceParams map[string]string - // A token used to ensure idempotency. + // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string noSmithyDocumentSerde diff --git a/service/finspacedata/api_op_CreateDataView.go b/service/finspacedata/api_op_CreateDataView.go index dd6154a2d22..7dfe554e517 100644 --- a/service/finspacedata/api_op_CreateDataView.go +++ b/service/finspacedata/api_op_CreateDataView.go @@ -49,7 +49,7 @@ type CreateDataViewInput struct { // Flag to indicate Dataview should be updated automatically. AutoUpdate bool - // A token used to ensure idempotency. + // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string // Ordered set of column names used to partition data. diff --git a/service/finspacedata/api_op_CreateDataset.go b/service/finspacedata/api_op_CreateDataset.go index 8e3e8f2dcb4..fb0fac8007e 100644 --- a/service/finspacedata/api_op_CreateDataset.go +++ b/service/finspacedata/api_op_CreateDataset.go @@ -55,7 +55,7 @@ type CreateDatasetInput struct { // The unique resource identifier for a Dataset. Alias *string - // A token used to ensure idempotency. + // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string // Description of a Dataset. diff --git a/service/finspacedata/api_op_DeleteDataset.go b/service/finspacedata/api_op_DeleteDataset.go index 2ad7be283f9..a868964cbac 100644 --- a/service/finspacedata/api_op_DeleteDataset.go +++ b/service/finspacedata/api_op_DeleteDataset.go @@ -35,7 +35,7 @@ type DeleteDatasetInput struct { // This member is required. DatasetId *string - // A token used to ensure idempotency. + // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string noSmithyDocumentSerde diff --git a/service/finspacedata/api_op_GetChangeset.go b/service/finspacedata/api_op_GetChangeset.go index ed33381136b..65dfbef1b7e 100644 --- a/service/finspacedata/api_op_GetChangeset.go +++ b/service/finspacedata/api_op_GetChangeset.go @@ -46,7 +46,9 @@ type GetChangesetInput struct { // The response from a describe changeset operation type GetChangesetOutput struct { - // Milliseconds since UTC epoch + // Beginning time from which the Changeset is active. The value is determined as + // Epoch time in milliseconds. For example, the value for Monday, November 1, 2021 + // 12:00:00 PM UTC is specified as 1635768000000. ActiveFromTimestamp int64 // Time until which the Changeset is active. The value is determined as Epoch time diff --git a/service/finspacedata/api_op_UpdateChangeset.go b/service/finspacedata/api_op_UpdateChangeset.go index 3c9775d7ded..bf731b359f3 100644 --- a/service/finspacedata/api_op_UpdateChangeset.go +++ b/service/finspacedata/api_op_UpdateChangeset.go @@ -41,17 +41,49 @@ type UpdateChangesetInput struct { // This member is required. DatasetId *string - // Options that define the structure of the source file(s). + // Options that define the structure of the source file(s) including the format + // type (formatType), header row (withHeader), data separation character + // (separator) and the type of compression (compression). formatType is a required + // attribute and can have the following values: + // + // * PARQUET - Parquet source file + // format. + // + // * CSV - CSV source file format. + // + // * JSON - JSON source file format. + // + // * + // XML - XML source file format. + // + // Here is an example of how you could specify the + // formatParams: "formatParams": { "formatType": "CSV", "withHeader": "true", + // "separator": ",", "compression":"None" } Note that if you only provide + // formatType as CSV, the rest of the attributes will automatically default to CSV + // values as following: { "withHeader": "true", "separator": "," } For more + // information about supported file formats, see Supported Data Types and File + // Formats + // (https://docs.aws.amazon.com/finspace/latest/userguide/supported-data-types.html) + // in the FinSpace User Guide. // // This member is required. FormatParams map[string]string - // Options that define the location of the data being ingested. + // Options that define the location of the data being ingested (s3SourcePath) and + // the source of the changeset (sourceType). Both s3SourcePath and sourceType are + // required attributes. Here is an example of how you could specify the + // sourceParams: "sourceParams": { "s3SourcePath": + // "s3://finspace-landing-us-east-2-bk7gcfvitndqa6ebnvys4d/scratch/wr5hh8pwkpqqkxa4sxrmcw/ingestion/equity.csv", + // "sourceType": "S3" } The S3 path that you specify must allow the FinSpace role + // access. To do that, you first need to configure the IAM policy on S3 bucket. For + // more information, see Loading data from an Amazon S3 Bucket using the FinSpace + // API + // (https://docs.aws.amazon.com/finspace/latest/data-api/fs-using-the-finspace-api.html#access-s3-buckets)section. // // This member is required. SourceParams map[string]string - // A token used to ensure idempotency. + // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string noSmithyDocumentSerde diff --git a/service/finspacedata/api_op_UpdateDataset.go b/service/finspacedata/api_op_UpdateDataset.go index 02885d37da3..cf5e663a692 100644 --- a/service/finspacedata/api_op_UpdateDataset.go +++ b/service/finspacedata/api_op_UpdateDataset.go @@ -55,7 +55,7 @@ type UpdateDatasetInput struct { // The unique resource identifier for a Dataset. Alias *string - // A token used to ensure idempotency. + // A token that ensures idempotency. This token expires in 10 minutes. ClientToken *string // A description for the Dataset. diff --git a/service/finspacedata/types/types.go b/service/finspacedata/types/types.go index 498a69470e3..b541e4a7501 100644 --- a/service/finspacedata/types/types.go +++ b/service/finspacedata/types/types.go @@ -44,7 +44,9 @@ type ChangesetErrorInfo struct { // A Changeset is unit of data in a Dataset. type ChangesetSummary struct { - // Milliseconds since UTC epoch + // Beginning time from which the Changeset is active. The value is determined as + // Epoch time in milliseconds. For example, the value for Monday, November 1, 2021 + // 12:00:00 PM UTC is specified as 1635768000000. ActiveFromTimestamp int64 // Time until which the Changeset is active. The value is determined as Epoch time @@ -218,12 +220,24 @@ type DataViewDestinationTypeParams struct { // // * GLUE_TABLE - Glue table destination type. // + // * + // S3 - S3 destination type. + // // This member is required. DestinationType *string - // Data View Export File Format + // Data view export file format. + // + // * PARQUET - Parquet export file format. + // + // * + // DELIMITED_TEXT - Delimited text export file format. S3DestinationExportFileFormat ExportFileFormat + // Format Options for S3 Destination type. Here is an example of how you could + // specify the s3DestinationExportFileFormatOptions + // { "header": "true", + // "delimiter": ",", "compression": "gzip" } S3DestinationExportFileFormatOptions map[string]string noSmithyDocumentSerde @@ -333,7 +347,11 @@ type DataViewSummary struct { noSmithyDocumentSerde } -// Permission group parameters for Dataset permissions. +// Permission group parameters for Dataset permissions. Here is an example of how +// you could specify the PermissionGroupParams: { "permissionGroupId": +// "0r6fCRtSTUk4XPfXQe3M0g", "datasetPermissions": [ {"permission": +// "ViewDatasetDetails"}, {"permission": "AddDatasetData"}, {"permission": +// "EditDatasetMetadata"}, {"permission": "DeleteDataset"} ] } type PermissionGroupParams struct { // List of resource permissions. @@ -345,7 +363,29 @@ type PermissionGroupParams struct { noSmithyDocumentSerde } -// Resource permission for a Dataset. +// Resource permission for a dataset. When you create a dataset, all the other +// members of the same user group inherit access to the dataset. You can only +// create a dataset if your user group has application permission for Create +// Datasets. The following is a list of valid dataset permissions that you can +// apply: +// +// * ViewDatasetDetails +// +// * ReadDatasetDetails +// +// * AddDatasetData +// +// * +// CreateSnapshot +// +// * EditDatasetMetadata +// +// * DeleteDataset +// +// For more information on +// the ataset permissions, see Supported Dataset Permissions +// (https://docs.aws.amazon.com/finspace/latest/userguide/managing-user-permissions.html#supported-dataset-permissions) +// in the FinSpace User Guide. type ResourcePermission struct { // Permission for a resource. diff --git a/service/fms/types/types.go b/service/fms/types/types.go index 1154b232155..5a536d326e2 100644 --- a/service/fms/types/types.go +++ b/service/fms/types/types.go @@ -750,13 +750,15 @@ type Policy struct { // (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html). // To apply this policy to multiple resource types, specify a resource type of // ResourceTypeList and then specify the resource types in a ResourceTypeList. For - // WAF and Shield Advanced, example resource types include - // AWS::ElasticLoadBalancingV2::LoadBalancer and AWS::CloudFront::Distribution. For - // a security group common policy, valid values are AWS::EC2::NetworkInterface and - // AWS::EC2::Instance. For a security group content audit policy, valid values are - // AWS::EC2::SecurityGroup, AWS::EC2::NetworkInterface, and AWS::EC2::Instance. For - // a security group usage audit policy, the value is AWS::EC2::SecurityGroup. For - // an Network Firewall policy or DNS Firewall policy, the value is AWS::EC2::VPC. + // WAF and Shield Advanced, resource types include + // AWS::ElasticLoadBalancingV2::LoadBalancer, + // AWS::ElasticLoadBalancing::LoadBalancer, AWS::EC2::EIP, and + // AWS::CloudFront::Distribution. For a security group common policy, valid values + // are AWS::EC2::NetworkInterface and AWS::EC2::Instance. For a security group + // content audit policy, valid values are AWS::EC2::SecurityGroup, + // AWS::EC2::NetworkInterface, and AWS::EC2::Instance. For a security group usage + // audit policy, the value is AWS::EC2::SecurityGroup. For an Network Firewall + // policy or DNS Firewall policy, the value is AWS::EC2::VPC. // // This member is required. ResourceType *string @@ -766,9 +768,12 @@ type Policy struct { // This member is required. SecurityServicePolicyData *SecurityServicePolicyData - // Indicates whether Firewall Manager should delete Firewall Manager managed - // resources, such as web ACLs and security groups, when they are not in use by the - // Firewall Manager policy. By default, Firewall Manager doesn't delete unused + // Indicates whether Firewall Manager should automatically remove protections from + // resources that leave the policy scope and clean up resources that Firewall + // Manager is managing for accounts when those accounts leave policy scope. For + // example, Firewall Manager will disassociate a Firewall Manager managed web ACL + // from a protected customer resource when the customer resource leaves policy + // scope. By default, Firewall Manager doesn't remove protections or delete // Firewall Manager managed resources. This option is not available for Shield // Advanced or WAF Classic policies. DeleteUnusedFMManagedResources bool @@ -907,9 +912,12 @@ type PolicyComplianceStatus struct { // Details of the Firewall Manager policy. type PolicySummary struct { - // Indicates whether Firewall Manager should delete Firewall Manager managed - // resources, such as web ACLs and security groups, when they are not in use by the - // Firewall Manager policy. By default, Firewall Manager doesn't delete unused + // Indicates whether Firewall Manager should automatically remove protections from + // resources that leave the policy scope and clean up resources that Firewall + // Manager is managing for accounts when those accounts leave policy scope. For + // example, Firewall Manager will disassociate a Firewall Manager managed web ACL + // from a protected customer resource when the customer resource leaves policy + // scope. By default, Firewall Manager doesn't remove protections or delete // Firewall Manager managed resources. This option is not available for Shield // Advanced or WAF Classic policies. DeleteUnusedFMManagedResources bool @@ -1240,8 +1248,8 @@ type SecurityServicePolicyData struct { // This member is required. Type SecurityServiceType - // Details about the service that are specific to the service type, in JSON format. - // For service type SHIELD_ADVANCED, this is an empty string. + // Details about the service that are specific to the service type, in JSON + // format. // // * Example: // DNS_FIREWALL"{\"type\":\"DNS_FIREWALL\",\"preProcessRuleGroups\":[{\"ruleGroupId\":\"rslvr-frg-1\",\"priority\":10}],\"postProcessRuleGroups\":[{\"ruleGroupId\":\"rslvr-frg-2\",\"priority\":9911}]}" @@ -1252,6 +1260,20 @@ type SecurityServicePolicyData struct { // NETWORK_FIREWALL"{\"type\":\"NETWORK_FIREWALL\",\"networkFirewallStatelessRuleGroupReferences\":[{\"resourceARN\":\"arn:aws:network-firewall:us-west-1:1234567891011:stateless-rulegroup/rulegroup2\",\"priority\":10}],\"networkFirewallStatelessDefaultActions\":[\"aws:pass\",\"custom1\"],\"networkFirewallStatelessFragmentDefaultActions\":[\"custom2\",\"aws:pass\"],\"networkFirewallStatelessCustomActions\":[{\"actionName\":\"custom1\",\"actionDefinition\":{\"publishMetricAction\":{\"dimensions\":[{\"value\":\"dimension1\"}]}}},{\"actionName\":\"custom2\",\"actionDefinition\":{\"publishMetricAction\":{\"dimensions\":[{\"value\":\"dimension2\"}]}}}],\"networkFirewallStatefulRuleGroupReferences\":[{\"resourceARN\":\"arn:aws:network-firewall:us-west-1:1234567891011:stateful-rulegroup/rulegroup1\"}],\"networkFirewallOrchestrationConfig\":{\"singleFirewallEndpointPerVPC\":true,\"allowedIPV4CidrList\":[\"10.24.34.0/28\"]} // }" // + // * Specification for SHIELD_ADVANCED for Amazon CloudFront distributions + // "{\"type\":\"SHIELD_ADVANCED\",\"automaticResponseConfiguration\": + // {\"automaticResponseStatus\":\"ENABLED|IGNORED|DISABLED\", + // \"automaticResponseAction\":\"BLOCK|COUNT\"}, + // \"overrideCustomerWebaclClassic\":true|false}" For example: + // "{\"type\":\"SHIELD_ADVANCED\",\"automaticResponseConfiguration\": + // {\"automaticResponseStatus\":\"ENABLED\", + // \"automaticResponseAction\":\"COUNT\"}}" The default value for + // automaticResponseStatus is IGNORED. The value for automaticResponseAction is + // only required when automaticResponseStatus is set to ENABLED. The default value + // for overrideCustomerWebaclClassic is false. For other resource types that you + // can protect with a Shield Advanced policy, this ManagedServiceData configuration + // is an empty string. + // // * Example: // WAFV2"{\"type\":\"WAFV2\",\"preProcessRuleGroups\":[{\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"managedRuleGroupIdentifier\":{\"version\":null,\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesAmazonIpReputationList\"},\"ruleGroupType\":\"ManagedRuleGroup\",\"excludeRules\":[{\"name\":\"NoUserAgent_HEADER\"}]}],\"postProcessRuleGroups\":[],\"defaultAction\":{\"type\":\"ALLOW\"},\"overrideCustomerWebACLAssociation\":false,\"loggingConfiguration\":{\"logDestinationConfigs\":[\"arn:aws:firehose:us-west-2:12345678912:deliverystream/aws-waf-logs-fms-admin-destination\"],\"redactedFields\":[{\"redactedFieldType\":\"SingleHeader\",\"redactedFieldValue\":\"Cookies\"},{\"redactedFieldType\":\"Method\"}]}}" // In the loggingConfiguration, you can specify one logDestinationConfigs, you can diff --git a/service/glue/api_op_StartWorkflowRun.go b/service/glue/api_op_StartWorkflowRun.go index d75637c0a8a..d5e3fd98dbe 100644 --- a/service/glue/api_op_StartWorkflowRun.go +++ b/service/glue/api_op_StartWorkflowRun.go @@ -33,6 +33,9 @@ type StartWorkflowRunInput struct { // This member is required. Name *string + // The workflow run properties for the new workflow run. + RunProperties map[string]string + noSmithyDocumentSerde } diff --git a/service/glue/serializers.go b/service/glue/serializers.go index c8e3ba61566..56f530cd053 100644 --- a/service/glue/serializers.go +++ b/service/glue/serializers.go @@ -16342,6 +16342,13 @@ func awsAwsjson11_serializeOpDocumentStartWorkflowRunInput(v *StartWorkflowRunIn ok.String(*v.Name) } + if v.RunProperties != nil { + ok := object.Key("RunProperties") + if err := awsAwsjson11_serializeDocumentWorkflowRunProperties(v.RunProperties, ok); err != nil { + return err + } + } + return nil } diff --git a/service/honeycode/api_op_GetScreenData.go b/service/honeycode/api_op_GetScreenData.go index e0b7f7b2e26..0f80c1235d9 100644 --- a/service/honeycode/api_op_GetScreenData.go +++ b/service/honeycode/api_op_GetScreenData.go @@ -31,7 +31,7 @@ func (c *Client) GetScreenData(ctx context.Context, params *GetScreenDataInput, type GetScreenDataInput struct { - // The ID of the app that contains the screem. + // The ID of the app that contains the screen. // // This member is required. AppId *string diff --git a/service/honeycode/api_op_ListTagsForResource.go b/service/honeycode/api_op_ListTagsForResource.go new file mode 100644 index 00000000000..6e0b25ab23b --- /dev/null +++ b/service/honeycode/api_op_ListTagsForResource.go @@ -0,0 +1,120 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package honeycode + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// The ListTagsForResource API allows you to return a resource's tags. +func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForResourceInput, optFns ...func(*Options)) (*ListTagsForResourceOutput, error) { + if params == nil { + params = &ListTagsForResourceInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ListTagsForResource", params, optFns, c.addOperationListTagsForResourceMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ListTagsForResourceOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ListTagsForResourceInput struct { + + // The resource's Amazon Resource Name (ARN). + // + // This member is required. + ResourceArn *string + + noSmithyDocumentSerde +} + +type ListTagsForResourceOutput struct { + + // The resource's tags. + Tags map[string]string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationListTagsForResourceMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpListTagsForResource{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListTagsForResource{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpListTagsForResourceValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListTagsForResource(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opListTagsForResource(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "honeycode", + OperationName: "ListTagsForResource", + } +} diff --git a/service/honeycode/api_op_TagResource.go b/service/honeycode/api_op_TagResource.go new file mode 100644 index 00000000000..b37b77253eb --- /dev/null +++ b/service/honeycode/api_op_TagResource.go @@ -0,0 +1,122 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package honeycode + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// The TagResource API allows you to add tags to an ARN-able resource. Resource +// includes workbook, table, screen and screen-automation. +func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error) { + if params == nil { + params = &TagResourceInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "TagResource", params, optFns, c.addOperationTagResourceMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*TagResourceOutput) + out.ResultMetadata = metadata + return out, nil +} + +type TagResourceInput struct { + + // The resource's Amazon Resource Name (ARN). + // + // This member is required. + ResourceArn *string + + // A list of tags to apply to the resource. + // + // This member is required. + Tags map[string]string + + noSmithyDocumentSerde +} + +type TagResourceOutput struct { + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationTagResourceMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpTagResource{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpTagResource{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpTagResourceValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opTagResource(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opTagResource(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "honeycode", + OperationName: "TagResource", + } +} diff --git a/service/honeycode/api_op_UntagResource.go b/service/honeycode/api_op_UntagResource.go new file mode 100644 index 00000000000..94111eb5ce5 --- /dev/null +++ b/service/honeycode/api_op_UntagResource.go @@ -0,0 +1,122 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package honeycode + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// The UntagResource API allows you to removes tags from an ARN-able resource. +// Resource includes workbook, table, screen and screen-automation. +func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error) { + if params == nil { + params = &UntagResourceInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "UntagResource", params, optFns, c.addOperationUntagResourceMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*UntagResourceOutput) + out.ResultMetadata = metadata + return out, nil +} + +type UntagResourceInput struct { + + // The resource's Amazon Resource Name (ARN). + // + // This member is required. + ResourceArn *string + + // A list of tag keys to remove from the resource. + // + // This member is required. + TagKeys []string + + noSmithyDocumentSerde +} + +type UntagResourceOutput struct { + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationUntagResourceMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpUntagResource{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpUntagResource{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpUntagResourceValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUntagResource(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opUntagResource(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "honeycode", + OperationName: "UntagResource", + } +} diff --git a/service/honeycode/deserializers.go b/service/honeycode/deserializers.go index c14898681f3..298b614ec33 100644 --- a/service/honeycode/deserializers.go +++ b/service/honeycode/deserializers.go @@ -1864,6 +1864,171 @@ func awsRestjson1_deserializeOpDocumentListTablesOutput(v **ListTablesOutput, va return nil } +type awsRestjson1_deserializeOpListTagsForResource struct { +} + +func (*awsRestjson1_deserializeOpListTagsForResource) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpListTagsForResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorListTagsForResource(response, &metadata) + } + output := &ListTagsForResourceOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsRestjson1_deserializeOpDocumentListTagsForResourceOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorListTagsForResource(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("RequestTimeoutException", errorCode): + return awsRestjson1_deserializeErrorRequestTimeoutException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ServiceUnavailableException", errorCode): + return awsRestjson1_deserializeErrorServiceUnavailableException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentListTagsForResourceOutput(v **ListTagsForResourceOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *ListTagsForResourceOutput + if *v == nil { + sv = &ListTagsForResourceOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "tags": + if err := awsRestjson1_deserializeDocumentTagsMap(&sv.Tags, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpQueryTableRows struct { } @@ -2231,6 +2396,208 @@ func awsRestjson1_deserializeOpDocumentStartTableDataImportJobOutput(v **StartTa return nil } +type awsRestjson1_deserializeOpTagResource struct { +} + +func (*awsRestjson1_deserializeOpTagResource) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpTagResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorTagResource(response, &metadata) + } + output := &TagResourceOutput{} + out.Result = output + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorTagResource(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("RequestTimeoutException", errorCode): + return awsRestjson1_deserializeErrorRequestTimeoutException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ServiceUnavailableException", errorCode): + return awsRestjson1_deserializeErrorServiceUnavailableException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +type awsRestjson1_deserializeOpUntagResource struct { +} + +func (*awsRestjson1_deserializeOpUntagResource) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpUntagResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorUntagResource(response, &metadata) + } + output := &UntagResourceOutput{} + out.Result = output + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorUntagResource(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("RequestTimeoutException", errorCode): + return awsRestjson1_deserializeErrorRequestTimeoutException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ServiceUnavailableException", errorCode): + return awsRestjson1_deserializeErrorServiceUnavailableException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + func awsRestjson1_deserializeErrorAccessDeniedException(response *smithyhttp.Response, errorBody *bytes.Reader) error { output := &types.AccessDeniedException{} var buff [1024]byte @@ -4197,6 +4564,42 @@ func awsRestjson1_deserializeDocumentTables(v *[]types.Table, value interface{}) return nil } +func awsRestjson1_deserializeDocumentTagsMap(v *map[string]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var mv map[string]string + if *v == nil { + mv = map[string]string{} + } else { + mv = *v + } + + for key, value := range shape { + var parsedVal string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected TagValue to be of type string, got %T instead", value) + } + parsedVal = jtv + } + mv[key] = parsedVal + + } + *v = mv + return nil +} + func awsRestjson1_deserializeDocumentThrottlingException(v **types.ThrottlingException, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/honeycode/generated.json b/service/honeycode/generated.json index 033ddd02c78..1d124bb2d15 100644 --- a/service/honeycode/generated.json +++ b/service/honeycode/generated.json @@ -17,8 +17,11 @@ "api_op_ListTableColumns.go", "api_op_ListTableRows.go", "api_op_ListTables.go", + "api_op_ListTagsForResource.go", "api_op_QueryTableRows.go", "api_op_StartTableDataImportJob.go", + "api_op_TagResource.go", + "api_op_UntagResource.go", "deserializers.go", "doc.go", "endpoints.go", diff --git a/service/honeycode/serializers.go b/service/honeycode/serializers.go index d0daa7f6f31..bb8c63e148e 100644 --- a/service/honeycode/serializers.go +++ b/service/honeycode/serializers.go @@ -932,6 +932,64 @@ func awsRestjson1_serializeOpHttpBindingsListTablesInput(v *ListTablesInput, enc return nil } +type awsRestjson1_serializeOpListTagsForResource struct { +} + +func (*awsRestjson1_serializeOpListTagsForResource) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpListTagsForResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*ListTagsForResourceInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsListTagsForResourceInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsListTagsForResourceInput(v *ListTagsForResourceInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.ResourceArn == nil || len(*v.ResourceArn) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")} + } + if v.ResourceArn != nil { + if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpQueryTableRows struct { } @@ -1143,6 +1201,153 @@ func awsRestjson1_serializeOpDocumentStartTableDataImportJobInput(v *StartTableD return nil } +type awsRestjson1_serializeOpTagResource struct { +} + +func (*awsRestjson1_serializeOpTagResource) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpTagResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*TagResourceInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "POST" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsTagResourceInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + restEncoder.SetHeader("Content-Type").String("application/json") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsRestjson1_serializeOpDocumentTagResourceInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsTagResourceInput(v *TagResourceInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.ResourceArn == nil || len(*v.ResourceArn) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")} + } + if v.ResourceArn != nil { + if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeOpDocumentTagResourceInput(v *TagResourceInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Tags != nil { + ok := object.Key("tags") + if err := awsRestjson1_serializeDocumentTagsMap(v.Tags, ok); err != nil { + return err + } + } + + return nil +} + +type awsRestjson1_serializeOpUntagResource struct { +} + +func (*awsRestjson1_serializeOpUntagResource) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpUntagResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*UntagResourceInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "DELETE" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsUntagResourceInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsUntagResourceInput(v *UntagResourceInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.ResourceArn == nil || len(*v.ResourceArn) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")} + } + if v.ResourceArn != nil { + if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil { + return err + } + } + + if v.TagKeys != nil { + for i := range v.TagKeys { + encoder.AddQuery("tagKeys").String(v.TagKeys[i]) + } + } + + return nil +} + func awsRestjson1_serializeDocumentCellInput(v *types.CellInput, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -1343,6 +1548,17 @@ func awsRestjson1_serializeDocumentSourceDataColumnProperties(v *types.SourceDat return nil } +func awsRestjson1_serializeDocumentTagsMap(v map[string]string, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + for key := range v { + om := object.Key(key) + om.String(v[key]) + } + return nil +} + func awsRestjson1_serializeDocumentUpdateRowData(v *types.UpdateRowData, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/honeycode/validators.go b/service/honeycode/validators.go index 45121feaff2..21a97b3af7d 100644 --- a/service/honeycode/validators.go +++ b/service/honeycode/validators.go @@ -210,6 +210,26 @@ func (m *validateOpListTables) HandleInitialize(ctx context.Context, in middlewa return next.HandleInitialize(ctx, in) } +type validateOpListTagsForResource struct { +} + +func (*validateOpListTagsForResource) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpListTagsForResource) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*ListTagsForResourceInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpListTagsForResourceInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpQueryTableRows struct { } @@ -250,6 +270,46 @@ func (m *validateOpStartTableDataImportJob) HandleInitialize(ctx context.Context return next.HandleInitialize(ctx, in) } +type validateOpTagResource struct { +} + +func (*validateOpTagResource) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpTagResource) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*TagResourceInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpTagResourceInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + +type validateOpUntagResource struct { +} + +func (*validateOpUntagResource) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpUntagResource) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*UntagResourceInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpUntagResourceInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + func addOpBatchCreateTableRowsValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpBatchCreateTableRows{}, middleware.After) } @@ -290,6 +350,10 @@ func addOpListTablesValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpListTables{}, middleware.After) } +func addOpListTagsForResourceValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpListTagsForResource{}, middleware.After) +} + func addOpQueryTableRowsValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpQueryTableRows{}, middleware.After) } @@ -298,6 +362,14 @@ func addOpStartTableDataImportJobValidationMiddleware(stack *middleware.Stack) e return stack.Initialize.Add(&validateOpStartTableDataImportJob{}, middleware.After) } +func addOpTagResourceValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpTagResource{}, middleware.After) +} + +func addOpUntagResourceValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpUntagResource{}, middleware.After) +} + func validateCreateRowData(v *types.CreateRowData) error { if v == nil { return nil @@ -728,6 +800,21 @@ func validateOpListTablesInput(v *ListTablesInput) error { } } +func validateOpListTagsForResourceInput(v *ListTagsForResourceInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "ListTagsForResourceInput"} + if v.ResourceArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("ResourceArn")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpQueryTableRowsInput(v *QueryTableRowsInput) error { if v == nil { return nil @@ -790,3 +877,39 @@ func validateOpStartTableDataImportJobInput(v *StartTableDataImportJobInput) err return nil } } + +func validateOpTagResourceInput(v *TagResourceInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "TagResourceInput"} + if v.ResourceArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("ResourceArn")) + } + if v.Tags == nil { + invalidParams.Add(smithy.NewErrParamRequired("Tags")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateOpUntagResourceInput(v *UntagResourceInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "UntagResourceInput"} + if v.ResourceArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("ResourceArn")) + } + if v.TagKeys == nil { + invalidParams.Add(smithy.NewErrParamRequired("TagKeys")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} diff --git a/service/identitystore/internal/endpoints/endpoints.go b/service/identitystore/internal/endpoints/endpoints.go index 5081ad45c52..04fb34c06b1 100644 --- a/service/identitystore/internal/endpoints/endpoints.go +++ b/service/identitystore/internal/endpoints/endpoints.go @@ -288,6 +288,15 @@ var defaultPartitions = endpoints.Partitions{ RegionRegex: partitionRegexp.AwsUsGov, IsRegionalized: true, Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "fips-us-gov-east-1", + }: endpoints.Endpoint{ + Hostname: "identitystore.us-gov-east-1.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "us-gov-east-1", + }, + Deprecated: aws.TrueTernary, + }, endpoints.EndpointKey{ Region: "fips-us-gov-west-1", }: endpoints.Endpoint{ @@ -297,6 +306,15 @@ var defaultPartitions = endpoints.Partitions{ }, Deprecated: aws.TrueTernary, }, + endpoints.EndpointKey{ + Region: "us-gov-east-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "us-gov-east-1", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "identitystore.us-gov-east-1.amazonaws.com", + }, endpoints.EndpointKey{ Region: "us-gov-west-1", }: endpoints.Endpoint{}, diff --git a/service/ioteventsdata/api_op_BatchPutMessage.go b/service/ioteventsdata/api_op_BatchPutMessage.go index 93d2dd2c01d..6c72251666c 100644 --- a/service/ioteventsdata/api_op_BatchPutMessage.go +++ b/service/ioteventsdata/api_op_BatchPutMessage.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Sends a set of messages to the AWS IoT Events system. Each message payload is +// Sends a set of messages to the IoT Events system. Each message payload is // transformed into the input you specify ("inputName") and ingested into any // detectors that monitor that input. If multiple messages are sent, the order in // which the messages are processed isn't guaranteed. To guarantee ordering, you diff --git a/service/ioteventsdata/doc.go b/service/ioteventsdata/doc.go index 3074674ad7a..4593b0f68f2 100644 --- a/service/ioteventsdata/doc.go +++ b/service/ioteventsdata/doc.go @@ -3,10 +3,10 @@ // Package ioteventsdata provides the API client, operations, and parameter types // for AWS IoT Events Data. // -// AWS IoT Events monitors your equipment or device fleets for failures or changes -// in operation, and triggers actions when such events occur. You can use AWS IoT -// Events Data API commands to send inputs to detectors, list detectors, and view -// or update a detector's status. For more information, see What is AWS IoT Events? +// IoT Events monitors your equipment or device fleets for failures or changes in +// operation, and triggers actions when such events occur. You can use IoT Events +// Data API commands to send inputs to detectors, list detectors, and view or +// update a detector's status. For more information, see What is IoT Events? // (https://docs.aws.amazon.com/iotevents/latest/developerguide/what-is-iotevents.html) -// in the AWS IoT Events Developer Guide. +// in the IoT Events Developer Guide. package ioteventsdata diff --git a/service/ioteventsdata/types/types.go b/service/ioteventsdata/types/types.go index 87a676886fc..afb5a206e8e 100644 --- a/service/ioteventsdata/types/types.go +++ b/service/ioteventsdata/types/types.go @@ -598,7 +598,7 @@ type Timer struct { // This member is required. Name *string - // The number of seconds which have elapsed on the timer. + // The expiration time for the timer. // // This member is required. Timestamp *time.Time diff --git a/service/iotwireless/api_op_DeleteQueuedMessages.go b/service/iotwireless/api_op_DeleteQueuedMessages.go new file mode 100644 index 00000000000..3e533686733 --- /dev/null +++ b/service/iotwireless/api_op_DeleteQueuedMessages.go @@ -0,0 +1,126 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package iotwireless + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/iotwireless/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// The operation to delete queued messages. +func (c *Client) DeleteQueuedMessages(ctx context.Context, params *DeleteQueuedMessagesInput, optFns ...func(*Options)) (*DeleteQueuedMessagesOutput, error) { + if params == nil { + params = &DeleteQueuedMessagesInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DeleteQueuedMessages", params, optFns, c.addOperationDeleteQueuedMessagesMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DeleteQueuedMessagesOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DeleteQueuedMessagesInput struct { + + // Id of a given wireless device which messages will be deleted + // + // This member is required. + Id *string + + // if messageID=="*", the queue for a particular wireless deviceId will be purged, + // otherwise, the specific message with messageId will be deleted + // + // This member is required. + MessageId *string + + // The wireless device type, it is either Sidewalk or LoRaWAN. + WirelessDeviceType types.WirelessDeviceType + + noSmithyDocumentSerde +} + +type DeleteQueuedMessagesOutput struct { + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDeleteQueuedMessagesMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpDeleteQueuedMessages{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeleteQueuedMessages{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpDeleteQueuedMessagesValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteQueuedMessages(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opDeleteQueuedMessages(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "iotwireless", + OperationName: "DeleteQueuedMessages", + } +} diff --git a/service/iotwireless/api_op_ListQueuedMessages.go b/service/iotwireless/api_op_ListQueuedMessages.go new file mode 100644 index 00000000000..a979d39e64d --- /dev/null +++ b/service/iotwireless/api_op_ListQueuedMessages.go @@ -0,0 +1,223 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package iotwireless + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/iotwireless/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// The operation to list queued messages. +func (c *Client) ListQueuedMessages(ctx context.Context, params *ListQueuedMessagesInput, optFns ...func(*Options)) (*ListQueuedMessagesOutput, error) { + if params == nil { + params = &ListQueuedMessagesInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ListQueuedMessages", params, optFns, c.addOperationListQueuedMessagesMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ListQueuedMessagesOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ListQueuedMessagesInput struct { + + // Id of a given wireless device which the downlink packets are targeted + // + // This member is required. + Id *string + + // The maximum number of results to return in this operation. + MaxResults int32 + + // To retrieve the next set of results, the nextToken value from a previous + // response; otherwise null to receive the first set of results. + NextToken *string + + // The wireless device type, it is either Sidewalk or LoRaWAN. + WirelessDeviceType types.WirelessDeviceType + + noSmithyDocumentSerde +} + +type ListQueuedMessagesOutput struct { + + // The messages in downlink queue. + DownlinkQueueMessagesList []types.DownlinkQueueMessage + + // To retrieve the next set of results, the nextToken value from a previous + // response; otherwise null to receive the first set of results. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationListQueuedMessagesMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpListQueuedMessages{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListQueuedMessages{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpListQueuedMessagesValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListQueuedMessages(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +// ListQueuedMessagesAPIClient is a client that implements the ListQueuedMessages +// operation. +type ListQueuedMessagesAPIClient interface { + ListQueuedMessages(context.Context, *ListQueuedMessagesInput, ...func(*Options)) (*ListQueuedMessagesOutput, error) +} + +var _ ListQueuedMessagesAPIClient = (*Client)(nil) + +// ListQueuedMessagesPaginatorOptions is the paginator options for +// ListQueuedMessages +type ListQueuedMessagesPaginatorOptions struct { + // The maximum number of results to return in this operation. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// ListQueuedMessagesPaginator is a paginator for ListQueuedMessages +type ListQueuedMessagesPaginator struct { + options ListQueuedMessagesPaginatorOptions + client ListQueuedMessagesAPIClient + params *ListQueuedMessagesInput + nextToken *string + firstPage bool +} + +// NewListQueuedMessagesPaginator returns a new ListQueuedMessagesPaginator +func NewListQueuedMessagesPaginator(client ListQueuedMessagesAPIClient, params *ListQueuedMessagesInput, optFns ...func(*ListQueuedMessagesPaginatorOptions)) *ListQueuedMessagesPaginator { + if params == nil { + params = &ListQueuedMessagesInput{} + } + + options := ListQueuedMessagesPaginatorOptions{} + if params.MaxResults != 0 { + options.Limit = params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &ListQueuedMessagesPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *ListQueuedMessagesPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next ListQueuedMessages page. +func (p *ListQueuedMessagesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListQueuedMessagesOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + params.MaxResults = p.options.Limit + + result, err := p.client.ListQueuedMessages(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +func newServiceMetadataMiddleware_opListQueuedMessages(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "iotwireless", + OperationName: "ListQueuedMessages", + } +} diff --git a/service/iotwireless/deserializers.go b/service/iotwireless/deserializers.go index 67e70aa1bf1..dfb5cb470b3 100644 --- a/service/iotwireless/deserializers.go +++ b/service/iotwireless/deserializers.go @@ -2900,6 +2900,101 @@ func awsRestjson1_deserializeOpErrorDeleteMulticastGroup(response *smithyhttp.Re } } +type awsRestjson1_deserializeOpDeleteQueuedMessages struct { +} + +func (*awsRestjson1_deserializeOpDeleteQueuedMessages) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpDeleteQueuedMessages) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorDeleteQueuedMessages(response, &metadata) + } + output := &DeleteQueuedMessagesOutput{} + out.Result = output + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorDeleteQueuedMessages(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsRestjson1_deserializeOpDeleteServiceProfile struct { } @@ -8779,6 +8874,174 @@ func awsRestjson1_deserializeOpDocumentListPartnerAccountsOutput(v **ListPartner return nil } +type awsRestjson1_deserializeOpListQueuedMessages struct { +} + +func (*awsRestjson1_deserializeOpListQueuedMessages) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpListQueuedMessages) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorListQueuedMessages(response, &metadata) + } + output := &ListQueuedMessagesOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsRestjson1_deserializeOpDocumentListQueuedMessagesOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorListQueuedMessages(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentListQueuedMessagesOutput(v **ListQueuedMessagesOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *ListQueuedMessagesOutput + if *v == nil { + sv = &ListQueuedMessagesOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "DownlinkQueueMessagesList": + if err := awsRestjson1_deserializeDocumentDownlinkQueueMessagesList(&sv.DownlinkQueueMessagesList, value); err != nil { + return err + } + + case "NextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected NextToken to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpListServiceProfiles struct { } @@ -12582,6 +12845,107 @@ func awsRestjson1_deserializeDocumentDeviceRegistrationStateEventConfiguration(v return nil } +func awsRestjson1_deserializeDocumentDownlinkQueueMessage(v **types.DownlinkQueueMessage, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.DownlinkQueueMessage + if *v == nil { + sv = &types.DownlinkQueueMessage{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "LoRaWAN": + if err := awsRestjson1_deserializeDocumentLoRaWANSendDataToDevice(&sv.LoRaWAN, value); err != nil { + return err + } + + case "MessageId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected MessageId to be of type string, got %T instead", value) + } + sv.MessageId = ptr.String(jtv) + } + + case "ReceivedAt": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ISODateTimeString to be of type string, got %T instead", value) + } + sv.ReceivedAt = ptr.String(jtv) + } + + case "TransmitMode": + if value != nil { + jtv, ok := value.(json.Number) + if !ok { + return fmt.Errorf("expected TransmitMode to be json.Number, got %T instead", value) + } + i64, err := jtv.Int64() + if err != nil { + return err + } + sv.TransmitMode = ptr.Int32(int32(i64)) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentDownlinkQueueMessagesList(v *[]types.DownlinkQueueMessage, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.DownlinkQueueMessage + if *v == nil { + cv = []types.DownlinkQueueMessage{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.DownlinkQueueMessage + destAddr := &col + if err := awsRestjson1_deserializeDocumentDownlinkQueueMessage(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentFactoryPresetFreqsList(v *[]int32, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -14099,6 +14463,50 @@ func awsRestjson1_deserializeDocumentLoRaWANMulticastSession(v **types.LoRaWANMu return nil } +func awsRestjson1_deserializeDocumentLoRaWANSendDataToDevice(v **types.LoRaWANSendDataToDevice, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.LoRaWANSendDataToDevice + if *v == nil { + sv = &types.LoRaWANSendDataToDevice{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "FPort": + if value != nil { + jtv, ok := value.(json.Number) + if !ok { + return fmt.Errorf("expected FPort to be json.Number, got %T instead", value) + } + i64, err := jtv.Int64() + if err != nil { + return err + } + sv.FPort = ptr.Int32(int32(i64)) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentLoRaWANUpdateGatewayTaskCreate(v **types.LoRaWANUpdateGatewayTaskCreate, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/iotwireless/doc.go b/service/iotwireless/doc.go index 3f4cac55ee9..5884ba4e239 100644 --- a/service/iotwireless/doc.go +++ b/service/iotwireless/doc.go @@ -3,5 +3,17 @@ // Package iotwireless provides the API client, operations, and parameter types for // AWS IoT Wireless. // -// AWS IoT Wireless API documentation +// AWS IoT Wireless provides bi-directional communication between +// internet-connected wireless devices and the AWS Cloud. To onboard both LoRaWAN +// and Sidewalk devices to AWS IoT, use the IoT Wireless API. These wireless +// devices use the Low Power Wide Area Networking (LPWAN) communication protocol to +// communicate with AWS IoT. Using the API, you can perform create, read, update, +// and delete operations for your wireless devices, gateways, destinations, and +// profiles. After onboarding your devices, you can use the API operations to set +// log levels and monitor your devices with CloudWatch. You can also use the API +// operations to create multicast groups and schedule a multicast session for +// sending a downlink message to devices in the group. By using Firmware Updates +// Over-The-Air (FUOTA) API operations, you can create a FUOTA task and schedule a +// session to update the firmware of individual devices or an entire group of +// devices in a multicast group. package iotwireless diff --git a/service/iotwireless/generated.json b/service/iotwireless/generated.json index 34bbcc2ed5f..77d501d17f2 100644 --- a/service/iotwireless/generated.json +++ b/service/iotwireless/generated.json @@ -28,6 +28,7 @@ "api_op_DeleteDeviceProfile.go", "api_op_DeleteFuotaTask.go", "api_op_DeleteMulticastGroup.go", + "api_op_DeleteQueuedMessages.go", "api_op_DeleteServiceProfile.go", "api_op_DeleteWirelessDevice.go", "api_op_DeleteWirelessGateway.go", @@ -66,6 +67,7 @@ "api_op_ListMulticastGroups.go", "api_op_ListMulticastGroupsByFuotaTask.go", "api_op_ListPartnerAccounts.go", + "api_op_ListQueuedMessages.go", "api_op_ListServiceProfiles.go", "api_op_ListTagsForResource.go", "api_op_ListWirelessDevices.go", diff --git a/service/iotwireless/serializers.go b/service/iotwireless/serializers.go index eb95e507fa7..d80b445a9a6 100644 --- a/service/iotwireless/serializers.go +++ b/service/iotwireless/serializers.go @@ -1708,6 +1708,72 @@ func awsRestjson1_serializeOpHttpBindingsDeleteMulticastGroupInput(v *DeleteMult return nil } +type awsRestjson1_serializeOpDeleteQueuedMessages struct { +} + +func (*awsRestjson1_serializeOpDeleteQueuedMessages) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpDeleteQueuedMessages) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DeleteQueuedMessagesInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/wireless-devices/{Id}/data") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "DELETE" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsDeleteQueuedMessagesInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsDeleteQueuedMessagesInput(v *DeleteQueuedMessagesInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.Id == nil || len(*v.Id) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")} + } + if v.Id != nil { + if err := encoder.SetURI("Id").String(*v.Id); err != nil { + return err + } + } + + if v.MessageId != nil { + encoder.SetQuery("messageId").String(*v.MessageId) + } + + if len(v.WirelessDeviceType) > 0 { + encoder.SetQuery("WirelessDeviceType").String(string(v.WirelessDeviceType)) + } + + return nil +} + type awsRestjson1_serializeOpDeleteServiceProfile struct { } @@ -3952,6 +4018,76 @@ func awsRestjson1_serializeOpHttpBindingsListPartnerAccountsInput(v *ListPartner return nil } +type awsRestjson1_serializeOpListQueuedMessages struct { +} + +func (*awsRestjson1_serializeOpListQueuedMessages) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpListQueuedMessages) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*ListQueuedMessagesInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/wireless-devices/{Id}/data") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsListQueuedMessagesInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsListQueuedMessagesInput(v *ListQueuedMessagesInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.Id == nil || len(*v.Id) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")} + } + if v.Id != nil { + if err := encoder.SetURI("Id").String(*v.Id); err != nil { + return err + } + } + + if v.MaxResults != 0 { + encoder.SetQuery("maxResults").Integer(v.MaxResults) + } + + if v.NextToken != nil { + encoder.SetQuery("nextToken").String(*v.NextToken) + } + + if len(v.WirelessDeviceType) > 0 { + encoder.SetQuery("WirelessDeviceType").String(string(v.WirelessDeviceType)) + } + + return nil +} + type awsRestjson1_serializeOpListServiceProfiles struct { } diff --git a/service/iotwireless/types/types.go b/service/iotwireless/types/types.go index 6dbec49b4e2..1cc318e8983 100644 --- a/service/iotwireless/types/types.go +++ b/service/iotwireless/types/types.go @@ -97,6 +97,25 @@ type DeviceRegistrationStateEventConfiguration struct { noSmithyDocumentSerde } +// The message in downlink queue. +type DownlinkQueueMessage struct { + + // LoRaWAN router info. + LoRaWAN *LoRaWANSendDataToDevice + + // The messageId allocated by IoT Wireless for tracing purpose + MessageId *string + + // The timestamp that Iot Wireless received the message. + ReceivedAt *string + + // The transmit mode to use to send data to the wireless device. Can be: 0 for UM + // (unacknowledge mode) or 1 for AM (acknowledge mode). + TransmitMode *int32 + + noSmithyDocumentSerde +} + // List of FPort assigned for different LoRaWAN application packages to use type FPorts struct { diff --git a/service/iotwireless/validators.go b/service/iotwireless/validators.go index 4b967194f55..8b837d05b5a 100644 --- a/service/iotwireless/validators.go +++ b/service/iotwireless/validators.go @@ -430,6 +430,26 @@ func (m *validateOpDeleteMulticastGroup) HandleInitialize(ctx context.Context, i return next.HandleInitialize(ctx, in) } +type validateOpDeleteQueuedMessages struct { +} + +func (*validateOpDeleteQueuedMessages) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDeleteQueuedMessages) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DeleteQueuedMessagesInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDeleteQueuedMessagesInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDeleteServiceProfile struct { } @@ -1050,6 +1070,26 @@ func (m *validateOpListMulticastGroupsByFuotaTask) HandleInitialize(ctx context. return next.HandleInitialize(ctx, in) } +type validateOpListQueuedMessages struct { +} + +func (*validateOpListQueuedMessages) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpListQueuedMessages) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*ListQueuedMessagesInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpListQueuedMessagesInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpListTagsForResource struct { } @@ -1554,6 +1594,10 @@ func addOpDeleteMulticastGroupValidationMiddleware(stack *middleware.Stack) erro return stack.Initialize.Add(&validateOpDeleteMulticastGroup{}, middleware.After) } +func addOpDeleteQueuedMessagesValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDeleteQueuedMessages{}, middleware.After) +} + func addOpDeleteServiceProfileValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDeleteServiceProfile{}, middleware.After) } @@ -1678,6 +1722,10 @@ func addOpListMulticastGroupsByFuotaTaskValidationMiddleware(stack *middleware.S return stack.Initialize.Add(&validateOpListMulticastGroupsByFuotaTask{}, middleware.After) } +func addOpListQueuedMessagesValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpListQueuedMessages{}, middleware.After) +} + func addOpListTagsForResourceValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpListTagsForResource{}, middleware.After) } @@ -2334,6 +2382,24 @@ func validateOpDeleteMulticastGroupInput(v *DeleteMulticastGroupInput) error { } } +func validateOpDeleteQueuedMessagesInput(v *DeleteQueuedMessagesInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DeleteQueuedMessagesInput"} + if v.Id == nil { + invalidParams.Add(smithy.NewErrParamRequired("Id")) + } + if v.MessageId == nil { + invalidParams.Add(smithy.NewErrParamRequired("MessageId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDeleteServiceProfileInput(v *DeleteServiceProfileInput) error { if v == nil { return nil @@ -2826,6 +2892,21 @@ func validateOpListMulticastGroupsByFuotaTaskInput(v *ListMulticastGroupsByFuota } } +func validateOpListQueuedMessagesInput(v *ListQueuedMessagesInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "ListQueuedMessagesInput"} + if v.Id == nil { + invalidParams.Add(smithy.NewErrParamRequired("Id")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpListTagsForResourceInput(v *ListTagsForResourceInput) error { if v == nil { return nil diff --git a/service/kendra/api_op_CreateFaq.go b/service/kendra/api_op_CreateFaq.go index c43d3274215..02cfad30413 100644 --- a/service/kendra/api_op_CreateFaq.go +++ b/service/kendra/api_op_CreateFaq.go @@ -13,6 +13,7 @@ import ( ) // Creates an new set of frequently asked question (FAQ) questions and answers. +// Adding FAQs to an index is an asynchronous operation. func (c *Client) CreateFaq(ctx context.Context, params *CreateFaqInput, optFns ...func(*Options)) (*CreateFaqOutput, error) { if params == nil { params = &CreateFaqInput{} diff --git a/service/kendra/api_op_GetSnapshots.go b/service/kendra/api_op_GetSnapshots.go index 6f575bc7439..bc23b754dfb 100644 --- a/service/kendra/api_op_GetSnapshots.go +++ b/service/kendra/api_op_GetSnapshots.go @@ -4,6 +4,7 @@ package kendra import ( "context" + "fmt" awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" "github.com/aws/aws-sdk-go-v2/aws/signer/v4" "github.com/aws/aws-sdk-go-v2/service/kendra/types" @@ -167,6 +168,95 @@ func (c *Client) addOperationGetSnapshotsMiddlewares(stack *middleware.Stack, op return nil } +// GetSnapshotsAPIClient is a client that implements the GetSnapshots operation. +type GetSnapshotsAPIClient interface { + GetSnapshots(context.Context, *GetSnapshotsInput, ...func(*Options)) (*GetSnapshotsOutput, error) +} + +var _ GetSnapshotsAPIClient = (*Client)(nil) + +// GetSnapshotsPaginatorOptions is the paginator options for GetSnapshots +type GetSnapshotsPaginatorOptions struct { + // The maximum number of returned data for the metric. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// GetSnapshotsPaginator is a paginator for GetSnapshots +type GetSnapshotsPaginator struct { + options GetSnapshotsPaginatorOptions + client GetSnapshotsAPIClient + params *GetSnapshotsInput + nextToken *string + firstPage bool +} + +// NewGetSnapshotsPaginator returns a new GetSnapshotsPaginator +func NewGetSnapshotsPaginator(client GetSnapshotsAPIClient, params *GetSnapshotsInput, optFns ...func(*GetSnapshotsPaginatorOptions)) *GetSnapshotsPaginator { + if params == nil { + params = &GetSnapshotsInput{} + } + + options := GetSnapshotsPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &GetSnapshotsPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *GetSnapshotsPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next GetSnapshots page. +func (p *GetSnapshotsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*GetSnapshotsOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.GetSnapshots(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + func newServiceMetadataMiddleware_opGetSnapshots(region string) *awsmiddleware.RegisterServiceMetadata { return &awsmiddleware.RegisterServiceMetadata{ Region: region, diff --git a/service/kendra/api_op_Query.go b/service/kendra/api_op_Query.go index e2fa1ff093c..7c0653c68ef 100644 --- a/service/kendra/api_op_Query.go +++ b/service/kendra/api_op_Query.go @@ -51,11 +51,6 @@ type QueryInput struct { // This member is required. IndexId *string - // The text to search for. - // - // This member is required. - QueryText *string - // Enables filtered searches based on document attributes. You can only provide one // attribute filter; however, the AndAllFilters, NotFilter, and OrAllFilters // parameters contain a list of other filters. The AttributeFilter parameter @@ -93,6 +88,9 @@ type QueryInput struct { // Sets the type of query. Only results for the specified query type are returned. QueryResultTypeFilter types.QueryResultType + // The text to search for. + QueryText *string + // An array of document attributes to include in the response. No other document // attributes are included in the response. By default all document attributes are // included in the response. @@ -135,6 +133,13 @@ type QueryOutput struct { // the first 100 of the items. TotalNumberOfResults *int32 + // A list of warning codes and their messages on problems with your query. Amazon + // Kendra currently only supports one type of warning, which is a warning on + // invalid syntax used in the query. For examples of invalid query syntax, see + // Searching with advanced query syntax + // (https://docs.aws.amazon.com/kendra/latest/dg/searching-example.html#searching-index-query-syntax). + Warnings []types.Warning + // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata diff --git a/service/kendra/deserializers.go b/service/kendra/deserializers.go index ae9257b0427..2cf2cc50a37 100644 --- a/service/kendra/deserializers.go +++ b/service/kendra/deserializers.go @@ -15249,6 +15249,89 @@ func awsAwsjson11_deserializeDocumentValueImportanceMap(v *map[string]int32, val return nil } +func awsAwsjson11_deserializeDocumentWarning(v **types.Warning, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.Warning + if *v == nil { + sv = &types.Warning{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Code": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected WarningCode to be of type string, got %T instead", value) + } + sv.Code = types.WarningCode(jtv) + } + + case "Message": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected WarningMessage to be of type string, got %T instead", value) + } + sv.Message = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsAwsjson11_deserializeDocumentWarningList(v *[]types.Warning, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.Warning + if *v == nil { + cv = []types.Warning{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.Warning + destAddr := &col + if err := awsAwsjson11_deserializeDocumentWarning(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentWebCrawlerConfiguration(v **types.WebCrawlerConfiguration, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -17764,6 +17847,11 @@ func awsAwsjson11_deserializeOpDocumentQueryOutput(v **QueryOutput, value interf sv.TotalNumberOfResults = ptr.Int32(int32(i64)) } + case "Warnings": + if err := awsAwsjson11_deserializeDocumentWarningList(&sv.Warnings, value); err != nil { + return err + } + default: _, _ = key, value diff --git a/service/kendra/types/enums.go b/service/kendra/types/enums.go index 786a675697a..50589d8d5d5 100644 --- a/service/kendra/types/enums.go +++ b/service/kendra/types/enums.go @@ -1098,6 +1098,22 @@ func (UserGroupResolutionMode) Values() []UserGroupResolutionMode { } } +type WarningCode string + +// Enum values for WarningCode +const ( + WarningCodeQueryLanguageInvalidSyntax WarningCode = "QUERY_LANGUAGE_INVALID_SYNTAX" +) + +// Values returns all known values for WarningCode. Note that this can be expanded +// in the future, and so it is only as up to date as the client. The ordering of +// this slice is not guaranteed to be stable across updates. +func (WarningCode) Values() []WarningCode { + return []WarningCode{ + "QUERY_LANGUAGE_INVALID_SYNTAX", + } +} + type WebCrawlerMode string // Enum values for WebCrawlerMode diff --git a/service/kendra/types/types.go b/service/kendra/types/types.go index 296a9cc78a4..2641edf51e6 100644 --- a/service/kendra/types/types.go +++ b/service/kendra/types/types.go @@ -881,7 +881,9 @@ type Document struct { noSmithyDocumentSerde } -// A custom attribute value assigned to a document. +// A custom attribute value assigned to a document. For more information on how to +// create custom document attributes, see Custom Attributes +// (https://docs.aws.amazon.com/kendra/latest/dg/custom-attributes.html). type DocumentAttribute struct { // The identifier for the attribute. @@ -970,9 +972,9 @@ type DocumentAttributeTarget struct { type DocumentAttributeValue struct { // A date expressed as an ISO 8601 string. It is important for the time zone to be - // included in the ISO 8601 date-time format. For example, 20120325T123010+01:00 is - // the ISO 8601 date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) - // in Central European Time. + // included in the ISO 8601 date-time format. For example, + // 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 + // at 12:30PM (plus 10 seconds) in Central European Time. DateValue *time.Time // A long integer value. @@ -1478,12 +1480,12 @@ type Highlight struct { // to alter document metadata and content when ingesting documents into Amazon // Kendra. You can configure your Lambda function using // PreExtractionHookConfiguration -// (https://docs.aws.amazon.com/kendra/latest/dg/API_PreExtractionHookConfiguration.html) +// (https://docs.aws.amazon.com/kendra/latest/dg/API_CustomDocumentEnrichmentConfiguration.html) // if you want to apply advanced alterations on the original or raw documents. If // you want to apply advanced alterations on the Amazon Kendra structured // documents, you must configure your Lambda function using // PostExtractionHookConfiguration -// (https://docs.aws.amazon.com/kendra/latest/dg/API_PostExtractionHookConfiguration.html). +// (https://docs.aws.amazon.com/kendra/latest/dg/API_CustomDocumentEnrichmentConfiguration.html). // You can only invoke one Lambda function. However, this function can invoke other // functions it requires. For more information, see Customizing document metadata // during the ingestion process @@ -2794,6 +2796,10 @@ type UserContext struct { // must also grant the required permissions to use Amazon Web Services SSO with // Amazon Kendra. For more information, see IAM roles for Amazon Web Services SSO // (https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-aws-sso). +// Amazon Kendra currently does not support using UserGroupResolutionConfiguration +// with an Amazon Web Services organization member account for your Amazon Web +// Services SSO identify source. You must create your index in the parent account +// for the organization in order to use UserGroupResolutionConfiguration. type UserGroupResolutionConfiguration struct { // The identity store provider (mode) you want to use to fetch access levels of @@ -2835,6 +2841,18 @@ type UserTokenConfiguration struct { noSmithyDocumentSerde } +// The warning code and message that explains a problem with a query. +type Warning struct { + + // The code used to show the type of warning for the query. + Code WarningCode + + // The message that explains the problem with the query. + Message *string + + noSmithyDocumentSerde +} + // Provides the configuration information required for Amazon Kendra Web Crawler. type WebCrawlerConfiguration struct { diff --git a/service/kendra/validators.go b/service/kendra/validators.go index e0808f962cd..65ac5d2e7ff 100644 --- a/service/kendra/validators.go +++ b/service/kendra/validators.go @@ -3921,9 +3921,6 @@ func validateOpQueryInput(v *QueryInput) error { if v.IndexId == nil { invalidParams.Add(smithy.NewErrParamRequired("IndexId")) } - if v.QueryText == nil { - invalidParams.Add(smithy.NewErrParamRequired("QueryText")) - } if v.AttributeFilter != nil { if err := validateAttributeFilter(v.AttributeFilter); err != nil { invalidParams.AddNested("AttributeFilter", err.(smithy.InvalidParamsError)) diff --git a/service/lexmodelsv2/api_op_DeleteCustomVocabulary.go b/service/lexmodelsv2/api_op_DeleteCustomVocabulary.go new file mode 100644 index 00000000000..42e26898815 --- /dev/null +++ b/service/lexmodelsv2/api_op_DeleteCustomVocabulary.go @@ -0,0 +1,142 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package lexmodelsv2 + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/lexmodelsv2/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Removes a custom vocabulary from the specified locale in the specified bot. +func (c *Client) DeleteCustomVocabulary(ctx context.Context, params *DeleteCustomVocabularyInput, optFns ...func(*Options)) (*DeleteCustomVocabularyOutput, error) { + if params == nil { + params = &DeleteCustomVocabularyInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DeleteCustomVocabulary", params, optFns, c.addOperationDeleteCustomVocabularyMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DeleteCustomVocabularyOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DeleteCustomVocabularyInput struct { + + // The unique identifier of the bot to remove the custom vocabulary from. + // + // This member is required. + BotId *string + + // The version of the bot to remove the custom vocabulary from. + // + // This member is required. + BotVersion *string + + // The locale identifier for the locale that contains the custom vocabulary to + // remove. + // + // This member is required. + LocaleId *string + + noSmithyDocumentSerde +} + +type DeleteCustomVocabularyOutput struct { + + // The identifier of the bot that the custom vocabulary was removed from. + BotId *string + + // The version of the bot that the custom vocabulary was removed from. + BotVersion *string + + // The status of removing the custom vocabulary. + CustomVocabularyStatus types.CustomVocabularyStatus + + // The locale identifier for the locale that the custom vocabulary was removed + // from. + LocaleId *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDeleteCustomVocabularyMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpDeleteCustomVocabulary{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeleteCustomVocabulary{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpDeleteCustomVocabularyValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteCustomVocabulary(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opDeleteCustomVocabulary(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "lex", + OperationName: "DeleteCustomVocabulary", + } +} diff --git a/service/lexmodelsv2/api_op_DescribeCustomVocabularyMetadata.go b/service/lexmodelsv2/api_op_DescribeCustomVocabularyMetadata.go new file mode 100644 index 00000000000..e02c2bf423e --- /dev/null +++ b/service/lexmodelsv2/api_op_DescribeCustomVocabularyMetadata.go @@ -0,0 +1,149 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package lexmodelsv2 + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/lexmodelsv2/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" + "time" +) + +// Provides metadata information about a custom vocabulary. +func (c *Client) DescribeCustomVocabularyMetadata(ctx context.Context, params *DescribeCustomVocabularyMetadataInput, optFns ...func(*Options)) (*DescribeCustomVocabularyMetadataOutput, error) { + if params == nil { + params = &DescribeCustomVocabularyMetadataInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DescribeCustomVocabularyMetadata", params, optFns, c.addOperationDescribeCustomVocabularyMetadataMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DescribeCustomVocabularyMetadataOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DescribeCustomVocabularyMetadataInput struct { + + // The unique identifier of the bot that contains the custom vocabulary. + // + // This member is required. + BotId *string + + // The bot version of the bot to return metadata for. + // + // This member is required. + BotVersion *string + + // The locale to return the custom vocabulary information for. The locale must be + // en_GB. + // + // This member is required. + LocaleId *string + + noSmithyDocumentSerde +} + +type DescribeCustomVocabularyMetadataOutput struct { + + // The identifier of the bot that contains the custom vocabulary. + BotId *string + + // The version of the bot that contains the custom vocabulary to describe. + BotVersion *string + + // The date and time that the custom vocabulary was created. + CreationDateTime *time.Time + + // The status of the custom vocabulary. If the status is Ready the custom + // vocabulary is ready to use. + CustomVocabularyStatus types.CustomVocabularyStatus + + // The date and time that the custom vocabulary was last updated. + LastUpdatedDateTime *time.Time + + // The locale that contains the custom vocabulary to describe. + LocaleId *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDescribeCustomVocabularyMetadataMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribeCustomVocabularyMetadata{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribeCustomVocabularyMetadata{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpDescribeCustomVocabularyMetadataValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeCustomVocabularyMetadata(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opDescribeCustomVocabularyMetadata(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "lex", + OperationName: "DescribeCustomVocabularyMetadata", + } +} diff --git a/service/lexmodelsv2/api_op_DescribeExport.go b/service/lexmodelsv2/api_op_DescribeExport.go index eb3a8855510..d7b7a1ac690 100644 --- a/service/lexmodelsv2/api_op_DescribeExport.go +++ b/service/lexmodelsv2/api_op_DescribeExport.go @@ -62,7 +62,7 @@ type DescribeExportOutput struct { // not be completed. FailureReasons []string - // The file format used in the files that describe the bot or bot locale. + // The file format used in the files that describe the resource. FileFormat types.ImportExportFileFormat // The last date and time that the export was updated. diff --git a/service/lexmodelsv2/api_op_DescribeImport.go b/service/lexmodelsv2/api_op_DescribeImport.go index a01357f24f2..cb8c2908791 100644 --- a/service/lexmodelsv2/api_op_DescribeImport.go +++ b/service/lexmodelsv2/api_op_DescribeImport.go @@ -73,7 +73,7 @@ type DescribeImportOutput struct { // resources are not overwritten and the import fails. MergeStrategy types.MergeStrategy - // The specifications of the imported bot or bot locale. + // The specifications of the imported bot, bot locale, or custom vocabulary. ResourceSpecification *types.ImportResourceSpecification // Metadata pertaining to the operation's result. diff --git a/service/lexmodelsv2/api_op_ListBots.go b/service/lexmodelsv2/api_op_ListBots.go index b11cf95d1e3..43537cfecae 100644 --- a/service/lexmodelsv2/api_op_ListBots.go +++ b/service/lexmodelsv2/api_op_ListBots.go @@ -41,8 +41,10 @@ type ListBotsInput struct { MaxResults *int32 // If the response from the ListBots operation contains more results than specified - // in the maxResults parameter, a token is returned in the response. Use that token - // in the nextToken parameter to return the next page of results. + // in the maxResults parameter, a token is returned in the response. Use the + // returned token in the nextToken parameter of a ListBots request to return the + // next page of results. For a complete set of results, call the ListBots operation + // until the nextToken returned in the response is null. NextToken *string // Specifies sorting parameters for the list of bots. You can specify that the list diff --git a/service/lexmodelsv2/api_op_ListExports.go b/service/lexmodelsv2/api_op_ListExports.go index a2b201c6428..6430f80d45b 100644 --- a/service/lexmodelsv2/api_op_ListExports.go +++ b/service/lexmodelsv2/api_op_ListExports.go @@ -12,8 +12,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists the exports for a bot or bot locale. Exports are kept in the list for 7 -// days. +// Lists the exports for a bot, bot locale, or custom vocabulary. Exports are kept +// in the list for 7 days. func (c *Client) ListExports(ctx context.Context, params *ListExportsInput, optFns ...func(*Options)) (*ListExportsOutput, error) { if params == nil { params = &ListExportsInput{} @@ -42,6 +42,11 @@ type ListExportsInput struct { // filter and one string to filter on. Filters []types.ExportFilter + // Specifies the resources that should be exported. If you don't specify a resource + // type in the filters parameter, both bot locales and custom vocabularies are + // exported. + LocaleId *string + // The maximum number of exports to return in each page of results. If there are // fewer results than the max page size, only the actual number of results are // returned. @@ -49,7 +54,9 @@ type ListExportsInput struct { // If the response from the ListExports operation contains more results that // specified in the maxResults parameter, a token is returned in the response. Use - // that token in the nextToken parameter to return the next page of results. + // the returned token in the nextToken parameter of a ListExports request to return + // the next page of results. For a complete set of results, call the ListExports + // operation until the nextToken returned in the response is null. NextToken *string // Determines the field that the list of exports is sorted by. You can sort by the @@ -73,6 +80,9 @@ type ListExportsOutput struct { // the next page of results. ExportSummaries []types.ExportSummary + // The locale specified in the request. + LocaleId *string + // A token that indicates whether there are more results to return in a response to // the ListExports operation. If the nextToken field is present, you send the // contents as the nextToken parameter of a ListExports operation request to get diff --git a/service/lexmodelsv2/api_op_ListImports.go b/service/lexmodelsv2/api_op_ListImports.go index 4439255ac43..fc8510f4d6a 100644 --- a/service/lexmodelsv2/api_op_ListImports.go +++ b/service/lexmodelsv2/api_op_ListImports.go @@ -12,8 +12,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Lists the imports for a bot or bot locale. Imports are kept in the list for 7 -// days. +// Lists the imports for a bot, bot locale, or custom vocabulary. Imports are kept +// in the list for 7 days. func (c *Client) ListImports(ctx context.Context, params *ListImportsInput, optFns ...func(*Options)) (*ListImportsOutput, error) { if params == nil { params = &ListImportsInput{} @@ -42,6 +42,11 @@ type ListImportsInput struct { // and one string to filter on. Filters []types.ImportFilter + // Specifies the locale that should be present in the list. If you don't specify a + // resource type in the filters parameter, the list contains both bot locales and + // custom vocabularies. + LocaleId *string + // The maximum number of imports to return in each page of results. If there are // fewer results than the max page size, only the actual number of results are // returned. @@ -49,7 +54,9 @@ type ListImportsInput struct { // If the response from the ListImports operation contains more results than // specified in the maxResults parameter, a token is returned in the response. Use - // that token in the nextToken parameter to return the next page of results. + // the returned token in the nextToken parameter of a ListImports request to return + // the next page of results. For a complete set of results, call the ListImports + // operation until the nextToken returned in the response is null. NextToken *string // Determines the field that the list of imports is sorted by. You can sort by the @@ -73,6 +80,9 @@ type ListImportsOutput struct { // the next page of results. ImportSummaries []types.ImportSummary + // The locale specified in the request. + LocaleId *string + // A token that indicates whether there are more results to return in a response to // the ListImports operation. If the nextToken field is present, you send the // contents as the nextToken parameter of a ListImports operation request to get diff --git a/service/lexmodelsv2/api_op_ListIntents.go b/service/lexmodelsv2/api_op_ListIntents.go index f5911fd56e9..64b14a420c9 100644 --- a/service/lexmodelsv2/api_op_ListIntents.go +++ b/service/lexmodelsv2/api_op_ListIntents.go @@ -59,7 +59,9 @@ type ListIntentsInput struct { // If the response from the ListIntents operation contains more results than // specified in the maxResults parameter, a token is returned in the response. Use - // that token in the nextToken parameter to return the next page of results. + // the returned token in the nextToken parameter of a ListIntents request to return + // the next page of results. For a complete set of results, call the ListIntents + // operation until the nextToken returned in the response is null. NextToken *string // Determines the sort order for the response from the ListIntents operation. You diff --git a/service/lexmodelsv2/api_op_StartImport.go b/service/lexmodelsv2/api_op_StartImport.go index 36bc3399b4a..40229a1e3b9 100644 --- a/service/lexmodelsv2/api_op_StartImport.go +++ b/service/lexmodelsv2/api_op_StartImport.go @@ -12,8 +12,8 @@ import ( "time" ) -// Starts importing a bot or bot locale from a zip archive that you uploaded to an -// S3 bucket. +// Starts importing a bot, bot locale, or custom vocabulary from a zip archive that +// you uploaded to an S3 bucket. func (c *Client) StartImport(ctx context.Context, params *StartImportInput, optFns ...func(*Options)) (*StartImportOutput, error) { if params == nil { params = &StartImportInput{} @@ -46,12 +46,12 @@ type StartImportInput struct { // This member is required. MergeStrategy types.MergeStrategy - // Parameters for creating the bot or bot locale. + // Parameters for creating the bot, bot locale or custom vocabulary. // // This member is required. ResourceSpecification *types.ImportResourceSpecification - // The password used to encrypt the zip archive that contains the bot or bot locale + // The password used to encrypt the zip archive that contains the resource // definition. You should always encrypt the zip archive to protect it during // transit between your site and Amazon Lex. FilePassword *string @@ -67,8 +67,8 @@ type StartImportOutput struct { // A unique identifier for the import. ImportId *string - // The current status of the import. When the status is Complete the bot or bot - // alias is ready to use. + // The current status of the import. When the status is Complete the bot, bot + // alias, or custom vocabulary is ready to use. ImportStatus types.ImportStatus // The strategy used when there was a name conflict between the imported resource @@ -76,7 +76,7 @@ type StartImportOutput struct { // resources are not overwritten and the import fails. MergeStrategy types.MergeStrategy - // The parameters used when importing the bot or bot locale. + // The parameters used when importing the resource. ResourceSpecification *types.ImportResourceSpecification // Metadata pertaining to the operation's result. diff --git a/service/lexmodelsv2/api_op_UpdateExport.go b/service/lexmodelsv2/api_op_UpdateExport.go index d420b79cb47..c1b70a0ac5b 100644 --- a/service/lexmodelsv2/api_op_UpdateExport.go +++ b/service/lexmodelsv2/api_op_UpdateExport.go @@ -57,7 +57,8 @@ type UpdateExportOutput struct { // available for download. ExportStatus types.ExportStatus - // The file format used for the files that define the resource. + // The file format used for the files that define the resource. The TSV format is + // required to export a custom vocabulary only; otherwise use LexJson format. FileFormat types.ImportExportFileFormat // The date and time that the export was last updated. diff --git a/service/lexmodelsv2/deserializers.go b/service/lexmodelsv2/deserializers.go index ffe74f58482..f1d75d1732a 100644 --- a/service/lexmodelsv2/deserializers.go +++ b/service/lexmodelsv2/deserializers.go @@ -3457,6 +3457,199 @@ func awsRestjson1_deserializeOpDocumentDeleteBotVersionOutput(v **DeleteBotVersi return nil } +type awsRestjson1_deserializeOpDeleteCustomVocabulary struct { +} + +func (*awsRestjson1_deserializeOpDeleteCustomVocabulary) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpDeleteCustomVocabulary) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorDeleteCustomVocabulary(response, &metadata) + } + output := &DeleteCustomVocabularyOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsRestjson1_deserializeOpDocumentDeleteCustomVocabularyOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorDeleteCustomVocabulary(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("PreconditionFailedException", errorCode): + return awsRestjson1_deserializeErrorPreconditionFailedException(response, errorBody) + + case strings.EqualFold("ServiceQuotaExceededException", errorCode): + return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentDeleteCustomVocabularyOutput(v **DeleteCustomVocabularyOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *DeleteCustomVocabularyOutput + if *v == nil { + sv = &DeleteCustomVocabularyOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "botId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Id to be of type string, got %T instead", value) + } + sv.BotId = ptr.String(jtv) + } + + case "botVersion": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DraftBotVersion to be of type string, got %T instead", value) + } + sv.BotVersion = ptr.String(jtv) + } + + case "customVocabularyStatus": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected CustomVocabularyStatus to be of type string, got %T instead", value) + } + sv.CustomVocabularyStatus = types.CustomVocabularyStatus(jtv) + } + + case "localeId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LocaleId to be of type string, got %T instead", value) + } + sv.LocaleId = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpDeleteExport struct { } @@ -5614,14 +5807,261 @@ func awsRestjson1_deserializeOpDocumentDescribeBotRecommendationOutput(v **Descr if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected LocaleId to be of type string, got %T instead", value) + return fmt.Errorf("expected LocaleId to be of type string, got %T instead", value) + } + sv.LocaleId = ptr.String(jtv) + } + + case "transcriptSourceSetting": + if err := awsRestjson1_deserializeDocumentTranscriptSourceSetting(&sv.TranscriptSourceSetting, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +type awsRestjson1_deserializeOpDescribeBotVersion struct { +} + +func (*awsRestjson1_deserializeOpDescribeBotVersion) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpDescribeBotVersion) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorDescribeBotVersion(response, &metadata) + } + output := &DescribeBotVersionOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsRestjson1_deserializeOpDocumentDescribeBotVersionOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorDescribeBotVersion(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ServiceQuotaExceededException", errorCode): + return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentDescribeBotVersionOutput(v **DescribeBotVersionOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *DescribeBotVersionOutput + if *v == nil { + sv = &DescribeBotVersionOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "botId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Id to be of type string, got %T instead", value) + } + sv.BotId = ptr.String(jtv) + } + + case "botName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Name to be of type string, got %T instead", value) + } + sv.BotName = ptr.String(jtv) + } + + case "botStatus": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected BotStatus to be of type string, got %T instead", value) + } + sv.BotStatus = types.BotStatus(jtv) + } + + case "botVersion": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected NumericalBotVersion to be of type string, got %T instead", value) + } + sv.BotVersion = ptr.String(jtv) + } + + case "creationDateTime": + if value != nil { + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + sv.CreationDateTime = ptr.Time(smithytime.ParseEpochSeconds(f64)) + + default: + return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value) + + } + } + + case "dataPrivacy": + if err := awsRestjson1_deserializeDocumentDataPrivacy(&sv.DataPrivacy, value); err != nil { + return err + } + + case "description": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Description to be of type string, got %T instead", value) + } + sv.Description = ptr.String(jtv) + } + + case "failureReasons": + if err := awsRestjson1_deserializeDocumentFailureReasons(&sv.FailureReasons, value); err != nil { + return err + } + + case "idleSessionTTLInSeconds": + if value != nil { + jtv, ok := value.(json.Number) + if !ok { + return fmt.Errorf("expected SessionTTL to be json.Number, got %T instead", value) + } + i64, err := jtv.Int64() + if err != nil { + return err + } + sv.IdleSessionTTLInSeconds = ptr.Int32(int32(i64)) + } + + case "roleArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected RoleArn to be of type string, got %T instead", value) } - sv.LocaleId = ptr.String(jtv) - } - - case "transcriptSourceSetting": - if err := awsRestjson1_deserializeDocumentTranscriptSourceSetting(&sv.TranscriptSourceSetting, value); err != nil { - return err + sv.RoleArn = ptr.String(jtv) } default: @@ -5633,14 +6073,14 @@ func awsRestjson1_deserializeOpDocumentDescribeBotRecommendationOutput(v **Descr return nil } -type awsRestjson1_deserializeOpDescribeBotVersion struct { +type awsRestjson1_deserializeOpDescribeCustomVocabularyMetadata struct { } -func (*awsRestjson1_deserializeOpDescribeBotVersion) ID() string { +func (*awsRestjson1_deserializeOpDescribeCustomVocabularyMetadata) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpDescribeBotVersion) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpDescribeCustomVocabularyMetadata) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5654,9 +6094,9 @@ func (m *awsRestjson1_deserializeOpDescribeBotVersion) HandleDeserialize(ctx con } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorDescribeBotVersion(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorDescribeCustomVocabularyMetadata(response, &metadata) } - output := &DescribeBotVersionOutput{} + output := &DescribeCustomVocabularyMetadataOutput{} out.Result = output var buff [1024]byte @@ -5677,7 +6117,7 @@ func (m *awsRestjson1_deserializeOpDescribeBotVersion) HandleDeserialize(ctx con return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentDescribeBotVersionOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentDescribeCustomVocabularyMetadataOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -5690,7 +6130,7 @@ func (m *awsRestjson1_deserializeOpDescribeBotVersion) HandleDeserialize(ctx con return out, metadata, err } -func awsRestjson1_deserializeOpErrorDescribeBotVersion(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorDescribeCustomVocabularyMetadata(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5756,7 +6196,7 @@ func awsRestjson1_deserializeOpErrorDescribeBotVersion(response *smithyhttp.Resp } } -func awsRestjson1_deserializeOpDocumentDescribeBotVersionOutput(v **DescribeBotVersionOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentDescribeCustomVocabularyMetadataOutput(v **DescribeCustomVocabularyMetadataOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -5769,9 +6209,9 @@ func awsRestjson1_deserializeOpDocumentDescribeBotVersionOutput(v **DescribeBotV return fmt.Errorf("unexpected JSON type %v", value) } - var sv *DescribeBotVersionOutput + var sv *DescribeCustomVocabularyMetadataOutput if *v == nil { - sv = &DescribeBotVersionOutput{} + sv = &DescribeCustomVocabularyMetadataOutput{} } else { sv = *v } @@ -5787,29 +6227,11 @@ func awsRestjson1_deserializeOpDocumentDescribeBotVersionOutput(v **DescribeBotV sv.BotId = ptr.String(jtv) } - case "botName": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected Name to be of type string, got %T instead", value) - } - sv.BotName = ptr.String(jtv) - } - - case "botStatus": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected BotStatus to be of type string, got %T instead", value) - } - sv.BotStatus = types.BotStatus(jtv) - } - case "botVersion": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected NumericalBotVersion to be of type string, got %T instead", value) + return fmt.Errorf("expected BotVersion to be of type string, got %T instead", value) } sv.BotVersion = ptr.String(jtv) } @@ -5830,45 +6252,38 @@ func awsRestjson1_deserializeOpDocumentDescribeBotVersionOutput(v **DescribeBotV } } - case "dataPrivacy": - if err := awsRestjson1_deserializeDocumentDataPrivacy(&sv.DataPrivacy, value); err != nil { - return err - } - - case "description": + case "customVocabularyStatus": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected Description to be of type string, got %T instead", value) + return fmt.Errorf("expected CustomVocabularyStatus to be of type string, got %T instead", value) } - sv.Description = ptr.String(jtv) - } - - case "failureReasons": - if err := awsRestjson1_deserializeDocumentFailureReasons(&sv.FailureReasons, value); err != nil { - return err + sv.CustomVocabularyStatus = types.CustomVocabularyStatus(jtv) } - case "idleSessionTTLInSeconds": + case "lastUpdatedDateTime": if value != nil { - jtv, ok := value.(json.Number) - if !ok { - return fmt.Errorf("expected SessionTTL to be json.Number, got %T instead", value) - } - i64, err := jtv.Int64() - if err != nil { - return err + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + sv.LastUpdatedDateTime = ptr.Time(smithytime.ParseEpochSeconds(f64)) + + default: + return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value) + } - sv.IdleSessionTTLInSeconds = ptr.Int32(int32(i64)) } - case "roleArn": + case "localeId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected RoleArn to be of type string, got %T instead", value) + return fmt.Errorf("expected LocaleId to be of type string, got %T instead", value) } - sv.RoleArn = ptr.String(jtv) + sv.LocaleId = ptr.String(jtv) } default: @@ -9005,6 +9420,15 @@ func awsRestjson1_deserializeOpDocumentListExportsOutput(v **ListExportsOutput, return err } + case "localeId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LocaleId to be of type string, got %T instead", value) + } + sv.LocaleId = ptr.String(jtv) + } + case "nextToken": if value != nil { jtv, ok := value.(string) @@ -9185,6 +9609,15 @@ func awsRestjson1_deserializeOpDocumentListImportsOutput(v **ListImportsOutput, return err } + case "localeId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LocaleId to be of type string, got %T instead", value) + } + sv.LocaleId = ptr.String(jtv) + } + case "nextToken": if value != nil { jtv, ok := value.(string) @@ -13546,6 +13979,46 @@ func awsRestjson1_deserializeErrorValidationException(response *smithyhttp.Respo return output } +func awsRestjson1_deserializeDocumentAdvancedRecognitionSetting(v **types.AdvancedRecognitionSetting, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.AdvancedRecognitionSetting + if *v == nil { + sv = &types.AdvancedRecognitionSetting{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "audioRecognitionStrategy": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AudioRecognitionStrategy to be of type string, got %T instead", value) + } + sv.AudioRecognitionStrategy = types.AudioRecognitionStrategy(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentAggregatedUtterancesSummary(v **types.AggregatedUtterancesSummary, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -15691,6 +16164,122 @@ func awsRestjson1_deserializeDocumentCustomPayload(v **types.CustomPayload, valu return nil } +func awsRestjson1_deserializeDocumentCustomVocabularyExportSpecification(v **types.CustomVocabularyExportSpecification, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.CustomVocabularyExportSpecification + if *v == nil { + sv = &types.CustomVocabularyExportSpecification{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "botId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Id to be of type string, got %T instead", value) + } + sv.BotId = ptr.String(jtv) + } + + case "botVersion": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected BotVersion to be of type string, got %T instead", value) + } + sv.BotVersion = ptr.String(jtv) + } + + case "localeId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LocaleId to be of type string, got %T instead", value) + } + sv.LocaleId = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentCustomVocabularyImportSpecification(v **types.CustomVocabularyImportSpecification, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.CustomVocabularyImportSpecification + if *v == nil { + sv = &types.CustomVocabularyImportSpecification{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "botId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Id to be of type string, got %T instead", value) + } + sv.BotId = ptr.String(jtv) + } + + case "botVersion": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DraftBotVersion to be of type string, got %T instead", value) + } + sv.BotVersion = ptr.String(jtv) + } + + case "localeId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LocaleId to be of type string, got %T instead", value) + } + sv.LocaleId = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentDataPrivacy(v **types.DataPrivacy, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -15924,6 +16513,11 @@ func awsRestjson1_deserializeDocumentExportResourceSpecification(v **types.Expor return err } + case "customVocabularyExportSpecification": + if err := awsRestjson1_deserializeDocumentCustomVocabularyExportSpecification(&sv.CustomVocabularyExportSpecification, value); err != nil { + return err + } + default: _, _ = key, value @@ -16552,6 +17146,11 @@ func awsRestjson1_deserializeDocumentImportResourceSpecification(v **types.Impor return err } + case "customVocabularyImportSpecification": + if err := awsRestjson1_deserializeDocumentCustomVocabularyImportSpecification(&sv.CustomVocabularyImportSpecification, value); err != nil { + return err + } + default: _, _ = key, value @@ -16617,6 +17216,15 @@ func awsRestjson1_deserializeDocumentImportSummary(v **types.ImportSummary, valu sv.ImportedResourceName = ptr.String(jtv) } + case "importedResourceType": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ImportResourceType to be of type string, got %T instead", value) + } + sv.ImportedResourceType = types.ImportResourceType(jtv) + } + case "importId": if value != nil { jtv, ok := value.(string) @@ -19107,6 +19715,11 @@ func awsRestjson1_deserializeDocumentSlotValueSelectionSetting(v **types.SlotVal for key, value := range shape { switch key { + case "advancedRecognitionSetting": + if err := awsRestjson1_deserializeDocumentAdvancedRecognitionSetting(&sv.AdvancedRecognitionSetting, value); err != nil { + return err + } + case "regexFilter": if err := awsRestjson1_deserializeDocumentSlotValueRegexFilter(&sv.RegexFilter, value); err != nil { return err diff --git a/service/lexmodelsv2/generated.json b/service/lexmodelsv2/generated.json index 0994c34e66a..47cab36f07e 100644 --- a/service/lexmodelsv2/generated.json +++ b/service/lexmodelsv2/generated.json @@ -24,6 +24,7 @@ "api_op_DeleteBotAlias.go", "api_op_DeleteBotLocale.go", "api_op_DeleteBotVersion.go", + "api_op_DeleteCustomVocabulary.go", "api_op_DeleteExport.go", "api_op_DeleteImport.go", "api_op_DeleteIntent.go", @@ -37,6 +38,7 @@ "api_op_DescribeBotLocale.go", "api_op_DescribeBotRecommendation.go", "api_op_DescribeBotVersion.go", + "api_op_DescribeCustomVocabularyMetadata.go", "api_op_DescribeExport.go", "api_op_DescribeImport.go", "api_op_DescribeIntent.go", diff --git a/service/lexmodelsv2/serializers.go b/service/lexmodelsv2/serializers.go index c36703e155e..3fe5b9f54ce 100644 --- a/service/lexmodelsv2/serializers.go +++ b/service/lexmodelsv2/serializers.go @@ -1554,6 +1554,82 @@ func awsRestjson1_serializeOpHttpBindingsDeleteBotVersionInput(v *DeleteBotVersi return nil } +type awsRestjson1_serializeOpDeleteCustomVocabulary struct { +} + +func (*awsRestjson1_serializeOpDeleteCustomVocabulary) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpDeleteCustomVocabulary) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DeleteCustomVocabularyInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/customvocabulary") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "DELETE" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsDeleteCustomVocabularyInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsDeleteCustomVocabularyInput(v *DeleteCustomVocabularyInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.BotId == nil || len(*v.BotId) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member botId must not be empty")} + } + if v.BotId != nil { + if err := encoder.SetURI("botId").String(*v.BotId); err != nil { + return err + } + } + + if v.BotVersion == nil || len(*v.BotVersion) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member botVersion must not be empty")} + } + if v.BotVersion != nil { + if err := encoder.SetURI("botVersion").String(*v.BotVersion); err != nil { + return err + } + } + + if v.LocaleId == nil || len(*v.LocaleId) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member localeId must not be empty")} + } + if v.LocaleId != nil { + if err := encoder.SetURI("localeId").String(*v.LocaleId); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpDeleteExport struct { } @@ -2490,6 +2566,82 @@ func awsRestjson1_serializeOpHttpBindingsDescribeBotVersionInput(v *DescribeBotV return nil } +type awsRestjson1_serializeOpDescribeCustomVocabularyMetadata struct { +} + +func (*awsRestjson1_serializeOpDescribeCustomVocabularyMetadata) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpDescribeCustomVocabularyMetadata) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DescribeCustomVocabularyMetadataInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/customvocabulary/DEFAULT/metadata") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsDescribeCustomVocabularyMetadataInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsDescribeCustomVocabularyMetadataInput(v *DescribeCustomVocabularyMetadataInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.BotId == nil || len(*v.BotId) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member botId must not be empty")} + } + if v.BotId != nil { + if err := encoder.SetURI("botId").String(*v.BotId); err != nil { + return err + } + } + + if v.BotVersion == nil || len(*v.BotVersion) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member botVersion must not be empty")} + } + if v.BotVersion != nil { + if err := encoder.SetURI("botVersion").String(*v.BotVersion); err != nil { + return err + } + } + + if v.LocaleId == nil || len(*v.LocaleId) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member localeId must not be empty")} + } + if v.LocaleId != nil { + if err := encoder.SetURI("localeId").String(*v.LocaleId); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpDescribeExport struct { } @@ -3792,6 +3944,11 @@ func awsRestjson1_serializeOpDocumentListExportsInput(v *ListExportsInput, value } } + if v.LocaleId != nil { + ok := object.Key("localeId") + ok.String(*v.LocaleId) + } + if v.MaxResults != nil { ok := object.Key("maxResults") ok.Integer(*v.MaxResults) @@ -3889,6 +4046,11 @@ func awsRestjson1_serializeOpDocumentListImportsInput(v *ListImportsInput, value } } + if v.LocaleId != nil { + ok := object.Key("localeId") + ok.String(*v.LocaleId) + } + if v.MaxResults != nil { ok := object.Key("maxResults") ok.Integer(*v.MaxResults) @@ -6000,6 +6162,18 @@ func awsRestjson1_serializeOpDocumentUpdateSlotTypeInput(v *UpdateSlotTypeInput, return nil } +func awsRestjson1_serializeDocumentAdvancedRecognitionSetting(v *types.AdvancedRecognitionSetting, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if len(v.AudioRecognitionStrategy) > 0 { + ok := object.Key("audioRecognitionStrategy") + ok.String(string(v.AudioRecognitionStrategy)) + } + + return nil +} + func awsRestjson1_serializeDocumentAggregatedUtterancesFilter(v *types.AggregatedUtterancesFilter, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -6600,6 +6774,50 @@ func awsRestjson1_serializeDocumentCustomPayload(v *types.CustomPayload, value s return nil } +func awsRestjson1_serializeDocumentCustomVocabularyExportSpecification(v *types.CustomVocabularyExportSpecification, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.BotId != nil { + ok := object.Key("botId") + ok.String(*v.BotId) + } + + if v.BotVersion != nil { + ok := object.Key("botVersion") + ok.String(*v.BotVersion) + } + + if v.LocaleId != nil { + ok := object.Key("localeId") + ok.String(*v.LocaleId) + } + + return nil +} + +func awsRestjson1_serializeDocumentCustomVocabularyImportSpecification(v *types.CustomVocabularyImportSpecification, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.BotId != nil { + ok := object.Key("botId") + ok.String(*v.BotId) + } + + if v.BotVersion != nil { + ok := object.Key("botVersion") + ok.String(*v.BotVersion) + } + + if v.LocaleId != nil { + ok := object.Key("localeId") + ok.String(*v.LocaleId) + } + + return nil +} + func awsRestjson1_serializeDocumentDataPrivacy(v *types.DataPrivacy, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -6718,6 +6936,13 @@ func awsRestjson1_serializeDocumentExportResourceSpecification(v *types.ExportRe } } + if v.CustomVocabularyExportSpecification != nil { + ok := object.Key("customVocabularyExportSpecification") + if err := awsRestjson1_serializeDocumentCustomVocabularyExportSpecification(v.CustomVocabularyExportSpecification, ok); err != nil { + return err + } + } + return nil } @@ -6988,6 +7213,13 @@ func awsRestjson1_serializeDocumentImportResourceSpecification(v *types.ImportRe } } + if v.CustomVocabularyImportSpecification != nil { + ok := object.Key("customVocabularyImportSpecification") + if err := awsRestjson1_serializeDocumentCustomVocabularyImportSpecification(v.CustomVocabularyImportSpecification, ok); err != nil { + return err + } + } + return nil } @@ -7866,6 +8098,13 @@ func awsRestjson1_serializeDocumentSlotValueSelectionSetting(v *types.SlotValueS object := value.Object() defer object.Close() + if v.AdvancedRecognitionSetting != nil { + ok := object.Key("advancedRecognitionSetting") + if err := awsRestjson1_serializeDocumentAdvancedRecognitionSetting(v.AdvancedRecognitionSetting, ok); err != nil { + return err + } + } + if v.RegexFilter != nil { ok := object.Key("regexFilter") if err := awsRestjson1_serializeDocumentSlotValueRegexFilter(v.RegexFilter, ok); err != nil { diff --git a/service/lexmodelsv2/types/enums.go b/service/lexmodelsv2/types/enums.go index a2663fdc380..77c70d4f843 100644 --- a/service/lexmodelsv2/types/enums.go +++ b/service/lexmodelsv2/types/enums.go @@ -76,6 +76,22 @@ func (AssociatedTranscriptFilterName) Values() []AssociatedTranscriptFilterName } } +type AudioRecognitionStrategy string + +// Enum values for AudioRecognitionStrategy +const ( + AudioRecognitionStrategyUseSlotValuesAsCustomVocabulary AudioRecognitionStrategy = "UseSlotValuesAsCustomVocabulary" +) + +// Values returns all known values for AudioRecognitionStrategy. Note that this can +// be expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (AudioRecognitionStrategy) Values() []AudioRecognitionStrategy { + return []AudioRecognitionStrategy{ + "UseSlotValuesAsCustomVocabulary", + } +} + type BotAliasStatus string // Enum values for BotAliasStatus @@ -334,6 +350,30 @@ func (BuiltInSlotTypeSortAttribute) Values() []BuiltInSlotTypeSortAttribute { } } +type CustomVocabularyStatus string + +// Enum values for CustomVocabularyStatus +const ( + CustomVocabularyStatusReady CustomVocabularyStatus = "Ready" + CustomVocabularyStatusDeleting CustomVocabularyStatus = "Deleting" + CustomVocabularyStatusExporting CustomVocabularyStatus = "Exporting" + CustomVocabularyStatusImporting CustomVocabularyStatus = "Importing" + CustomVocabularyStatusCreating CustomVocabularyStatus = "Creating" +) + +// Values returns all known values for CustomVocabularyStatus. Note that this can +// be expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (CustomVocabularyStatus) Values() []CustomVocabularyStatus { + return []CustomVocabularyStatus{ + "Ready", + "Deleting", + "Exporting", + "Importing", + "Creating", + } +} + type Effect string // Enum values for Effect @@ -429,6 +469,7 @@ type ImportExportFileFormat string // Enum values for ImportExportFileFormat const ( ImportExportFileFormatLexJson ImportExportFileFormat = "LexJson" + ImportExportFileFormatTsv ImportExportFileFormat = "TSV" ) // Values returns all known values for ImportExportFileFormat. Note that this can @@ -437,6 +478,7 @@ const ( func (ImportExportFileFormat) Values() []ImportExportFileFormat { return []ImportExportFileFormat{ "LexJson", + "TSV", } } @@ -474,6 +516,26 @@ func (ImportFilterOperator) Values() []ImportFilterOperator { } } +type ImportResourceType string + +// Enum values for ImportResourceType +const ( + ImportResourceTypeBot ImportResourceType = "Bot" + ImportResourceTypeBotLocale ImportResourceType = "BotLocale" + ImportResourceTypeCustomVocabulary ImportResourceType = "CustomVocabulary" +) + +// Values returns all known values for ImportResourceType. Note that this can be +// expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (ImportResourceType) Values() []ImportResourceType { + return []ImportResourceType{ + "Bot", + "BotLocale", + "CustomVocabulary", + } +} + type ImportSortAttribute string // Enum values for ImportSortAttribute diff --git a/service/lexmodelsv2/types/types.go b/service/lexmodelsv2/types/types.go index 0b3e6c5601d..aed373523d3 100644 --- a/service/lexmodelsv2/types/types.go +++ b/service/lexmodelsv2/types/types.go @@ -7,6 +7,16 @@ import ( "time" ) +// Provides settings that enable advanced recognition settings for slot values. +type AdvancedRecognitionSetting struct { + + // Enables using the slot values as a custom vocabulary for recognizing user + // utterances. + AudioRecognitionStrategy AudioRecognitionStrategy + + noSmithyDocumentSerde +} + // Filters responses returned by the ListAggregatedUtterances operation. type AggregatedUtterancesFilter struct { @@ -727,6 +737,49 @@ type CustomPayload struct { noSmithyDocumentSerde } +// Provides the parameters required for exporting a custom vocabulary. +type CustomVocabularyExportSpecification struct { + + // The identifier of the bot that contains the custom vocabulary to export. + // + // This member is required. + BotId *string + + // The version of the bot that contains the custom vocabulary to export. + // + // This member is required. + BotVersion *string + + // The locale of the bot that contains the custom vocabulary to export. + // + // This member is required. + LocaleId *string + + noSmithyDocumentSerde +} + +// Provides the parameters required for importing a custom vocabulary. +type CustomVocabularyImportSpecification struct { + + // The identifier of the bot to import the custom vocabulary to. + // + // This member is required. + BotId *string + + // The version of the bot to import the custom vocabulary to. + // + // This member is required. + BotVersion *string + + // The identifier of the local to import the custom vocabulary to. The value must + // be en_GB. + // + // This member is required. + LocaleId *string + + noSmithyDocumentSerde +} + // By default, data stored by Amazon Lex is encrypted. The DataPrivacy structure // provides settings that determine how Amazon Lex handles special cases of // securing the data for your bot. @@ -824,7 +877,8 @@ type ExportFilter struct { // This member is required. Operator ExportFilterOperator - // The values to use to filter the response. + // The values to use to filter the response. The values must be Bot, BotLocale, or + // CustomVocabulary. // // This member is required. Values []string @@ -843,6 +897,9 @@ type ExportResourceSpecification struct { // Parameters for exporting a bot locale. BotLocaleExportSpecification *BotLocaleExportSpecification + // The parameters required to export a custom vocabulary. + CustomVocabularyExportSpecification *CustomVocabularyExportSpecification + noSmithyDocumentSerde } @@ -1065,7 +1122,8 @@ type ImportFilter struct { // This member is required. Operator ImportFilterOperator - // The values to use to filter the response. + // The values to use to filter the response. The values must be Bot, BotLocale, or + // CustomVocabulary. // // This member is required. Values []string @@ -1084,6 +1142,9 @@ type ImportResourceSpecification struct { // Parameters for importing a bot locale. BotLocaleImportSpecification *BotLocaleImportSpecification + // Provides the parameters required for importing a custom vocabulary. + CustomVocabularyImportSpecification *CustomVocabularyImportSpecification + noSmithyDocumentSerde } @@ -1122,6 +1183,9 @@ type ImportSummary struct { // The name that you gave the imported resource. ImportedResourceName *string + // The type of resource that was imported. + ImportedResourceType ImportResourceType + // The date and time that the import was last updated. LastUpdatedDateTime *time.Time @@ -1940,6 +2004,9 @@ type SlotValueSelectionSetting struct { // This member is required. ResolutionStrategy SlotValueResolutionStrategy + // Provides settings that enable advanced recognition settings for slot values. + AdvancedRecognitionSetting *AdvancedRecognitionSetting + // A regular expression used to validate the value of a slot. RegexFilter *SlotValueRegexFilter diff --git a/service/lexmodelsv2/validators.go b/service/lexmodelsv2/validators.go index 5839e6150ec..896b23bf7ab 100644 --- a/service/lexmodelsv2/validators.go +++ b/service/lexmodelsv2/validators.go @@ -310,6 +310,26 @@ func (m *validateOpDeleteBotVersion) HandleInitialize(ctx context.Context, in mi return next.HandleInitialize(ctx, in) } +type validateOpDeleteCustomVocabulary struct { +} + +func (*validateOpDeleteCustomVocabulary) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDeleteCustomVocabulary) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DeleteCustomVocabularyInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDeleteCustomVocabularyInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDeleteExport struct { } @@ -570,6 +590,26 @@ func (m *validateOpDescribeBotVersion) HandleInitialize(ctx context.Context, in return next.HandleInitialize(ctx, in) } +type validateOpDescribeCustomVocabularyMetadata struct { +} + +func (*validateOpDescribeCustomVocabularyMetadata) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDescribeCustomVocabularyMetadata) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DescribeCustomVocabularyMetadataInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDescribeCustomVocabularyMetadataInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDescribeExport struct { } @@ -1330,6 +1370,10 @@ func addOpDeleteBotVersionValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDeleteBotVersion{}, middleware.After) } +func addOpDeleteCustomVocabularyValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDeleteCustomVocabulary{}, middleware.After) +} + func addOpDeleteExportValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDeleteExport{}, middleware.After) } @@ -1382,6 +1426,10 @@ func addOpDescribeBotVersionValidationMiddleware(stack *middleware.Stack) error return stack.Initialize.Add(&validateOpDescribeBotVersion{}, middleware.After) } +func addOpDescribeCustomVocabularyMetadataValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDescribeCustomVocabularyMetadata{}, middleware.After) +} + func addOpDescribeExportValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDescribeExport{}, middleware.After) } @@ -2101,6 +2149,48 @@ func validateCustomPayload(v *types.CustomPayload) error { } } +func validateCustomVocabularyExportSpecification(v *types.CustomVocabularyExportSpecification) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "CustomVocabularyExportSpecification"} + if v.BotId == nil { + invalidParams.Add(smithy.NewErrParamRequired("BotId")) + } + if v.BotVersion == nil { + invalidParams.Add(smithy.NewErrParamRequired("BotVersion")) + } + if v.LocaleId == nil { + invalidParams.Add(smithy.NewErrParamRequired("LocaleId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateCustomVocabularyImportSpecification(v *types.CustomVocabularyImportSpecification) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "CustomVocabularyImportSpecification"} + if v.BotId == nil { + invalidParams.Add(smithy.NewErrParamRequired("BotId")) + } + if v.BotVersion == nil { + invalidParams.Add(smithy.NewErrParamRequired("BotVersion")) + } + if v.LocaleId == nil { + invalidParams.Add(smithy.NewErrParamRequired("LocaleId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateDataPrivacy(v *types.DataPrivacy) error { if v == nil { return nil @@ -2196,6 +2286,11 @@ func validateExportResourceSpecification(v *types.ExportResourceSpecification) e invalidParams.AddNested("BotLocaleExportSpecification", err.(smithy.InvalidParamsError)) } } + if v.CustomVocabularyExportSpecification != nil { + if err := validateCustomVocabularyExportSpecification(v.CustomVocabularyExportSpecification); err != nil { + invalidParams.AddNested("CustomVocabularyExportSpecification", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -2437,6 +2532,11 @@ func validateImportResourceSpecification(v *types.ImportResourceSpecification) e invalidParams.AddNested("BotLocaleImportSpecification", err.(smithy.InvalidParamsError)) } } + if v.CustomVocabularyImportSpecification != nil { + if err := validateCustomVocabularyImportSpecification(v.CustomVocabularyImportSpecification); err != nil { + invalidParams.AddNested("CustomVocabularyImportSpecification", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -3921,6 +4021,27 @@ func validateOpDeleteBotVersionInput(v *DeleteBotVersionInput) error { } } +func validateOpDeleteCustomVocabularyInput(v *DeleteCustomVocabularyInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DeleteCustomVocabularyInput"} + if v.BotId == nil { + invalidParams.Add(smithy.NewErrParamRequired("BotId")) + } + if v.BotVersion == nil { + invalidParams.Add(smithy.NewErrParamRequired("BotVersion")) + } + if v.LocaleId == nil { + invalidParams.Add(smithy.NewErrParamRequired("LocaleId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDeleteExportInput(v *DeleteExportInput) error { if v == nil { return nil @@ -4170,6 +4291,27 @@ func validateOpDescribeBotVersionInput(v *DescribeBotVersionInput) error { } } +func validateOpDescribeCustomVocabularyMetadataInput(v *DescribeCustomVocabularyMetadataInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DescribeCustomVocabularyMetadataInput"} + if v.BotId == nil { + invalidParams.Add(smithy.NewErrParamRequired("BotId")) + } + if v.BotVersion == nil { + invalidParams.Add(smithy.NewErrParamRequired("BotVersion")) + } + if v.LocaleId == nil { + invalidParams.Add(smithy.NewErrParamRequired("LocaleId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDescribeExportInput(v *DescribeExportInput) error { if v == nil { return nil diff --git a/service/lexruntimev2/deserializers.go b/service/lexruntimev2/deserializers.go index a39a404e11d..ff1406708df 100644 --- a/service/lexruntimev2/deserializers.go +++ b/service/lexruntimev2/deserializers.go @@ -2792,6 +2792,152 @@ func awsRestjson1_deserializeDocumentResourceNotFoundException(v **types.Resourc return nil } +func awsRestjson1_deserializeDocumentRuntimeHintDetails(v **types.RuntimeHintDetails, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.RuntimeHintDetails + if *v == nil { + sv = &types.RuntimeHintDetails{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "runtimeHintValues": + if err := awsRestjson1_deserializeDocumentRuntimeHintValuesList(&sv.RuntimeHintValues, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentRuntimeHints(v **types.RuntimeHints, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.RuntimeHints + if *v == nil { + sv = &types.RuntimeHints{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "slotHints": + if err := awsRestjson1_deserializeDocumentSlotHintsIntentMap(&sv.SlotHints, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentRuntimeHintValue(v **types.RuntimeHintValue, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.RuntimeHintValue + if *v == nil { + sv = &types.RuntimeHintValue{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "phrase": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected RuntimeHintPhrase to be of type string, got %T instead", value) + } + sv.Phrase = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentRuntimeHintValuesList(v *[]types.RuntimeHintValue, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.RuntimeHintValue + if *v == nil { + cv = []types.RuntimeHintValue{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.RuntimeHintValue + destAddr := &col + if err := awsRestjson1_deserializeDocumentRuntimeHintValue(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentSentimentResponse(v **types.SentimentResponse, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -3050,6 +3196,11 @@ func awsRestjson1_deserializeDocumentSessionState(v **types.SessionState, value sv.OriginatingRequestId = ptr.String(jtv) } + case "runtimeHints": + if err := awsRestjson1_deserializeDocumentRuntimeHints(&sv.RuntimeHints, value); err != nil { + return err + } + case "sessionAttributes": if err := awsRestjson1_deserializeDocumentStringMap(&sv.SessionAttributes, value); err != nil { return err @@ -3114,6 +3265,75 @@ func awsRestjson1_deserializeDocumentSlot(v **types.Slot, value interface{}) err return nil } +func awsRestjson1_deserializeDocumentSlotHintsIntentMap(v *map[string]map[string]types.RuntimeHintDetails, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var mv map[string]map[string]types.RuntimeHintDetails + if *v == nil { + mv = map[string]map[string]types.RuntimeHintDetails{} + } else { + mv = *v + } + + for key, value := range shape { + var parsedVal map[string]types.RuntimeHintDetails + mapVar := parsedVal + if err := awsRestjson1_deserializeDocumentSlotHintsSlotMap(&mapVar, value); err != nil { + return err + } + parsedVal = mapVar + mv[key] = parsedVal + + } + *v = mv + return nil +} + +func awsRestjson1_deserializeDocumentSlotHintsSlotMap(v *map[string]types.RuntimeHintDetails, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var mv map[string]types.RuntimeHintDetails + if *v == nil { + mv = map[string]types.RuntimeHintDetails{} + } else { + mv = *v + } + + for key, value := range shape { + var parsedVal types.RuntimeHintDetails + mapVar := parsedVal + destAddr := &mapVar + if err := awsRestjson1_deserializeDocumentRuntimeHintDetails(&destAddr, value); err != nil { + return err + } + parsedVal = *destAddr + mv[key] = parsedVal + + } + *v = mv + return nil +} + func awsRestjson1_deserializeDocumentSlots(v *map[string]types.Slot, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/lexruntimev2/serializers.go b/service/lexruntimev2/serializers.go index 8b4bdb0bb77..512b482ce09 100644 --- a/service/lexruntimev2/serializers.go +++ b/service/lexruntimev2/serializers.go @@ -1115,6 +1115,59 @@ func awsRestjson1_serializeDocumentPlaybackCompletionEvent(v *types.PlaybackComp return nil } +func awsRestjson1_serializeDocumentRuntimeHintDetails(v *types.RuntimeHintDetails, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.RuntimeHintValues != nil { + ok := object.Key("runtimeHintValues") + if err := awsRestjson1_serializeDocumentRuntimeHintValuesList(v.RuntimeHintValues, ok); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeDocumentRuntimeHints(v *types.RuntimeHints, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.SlotHints != nil { + ok := object.Key("slotHints") + if err := awsRestjson1_serializeDocumentSlotHintsIntentMap(v.SlotHints, ok); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeDocumentRuntimeHintValue(v *types.RuntimeHintValue, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Phrase != nil { + ok := object.Key("phrase") + ok.String(*v.Phrase) + } + + return nil +} + +func awsRestjson1_serializeDocumentRuntimeHintValuesList(v []types.RuntimeHintValue, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + if err := awsRestjson1_serializeDocumentRuntimeHintValue(&v[i], av); err != nil { + return err + } + } + return nil +} + func awsRestjson1_serializeDocumentSessionState(v *types.SessionState, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -1145,6 +1198,13 @@ func awsRestjson1_serializeDocumentSessionState(v *types.SessionState, value smi ok.String(*v.OriginatingRequestId) } + if v.RuntimeHints != nil { + ok := object.Key("runtimeHints") + if err := awsRestjson1_serializeDocumentRuntimeHints(v.RuntimeHints, ok); err != nil { + return err + } + } + if v.SessionAttributes != nil { ok := object.Key("sessionAttributes") if err := awsRestjson1_serializeDocumentStringMap(v.SessionAttributes, ok); err != nil { @@ -1181,6 +1241,36 @@ func awsRestjson1_serializeDocumentSlot(v *types.Slot, value smithyjson.Value) e return nil } +func awsRestjson1_serializeDocumentSlotHintsIntentMap(v map[string]map[string]types.RuntimeHintDetails, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + for key := range v { + om := object.Key(key) + if vv := v[key]; vv == nil { + continue + } + if err := awsRestjson1_serializeDocumentSlotHintsSlotMap(v[key], om); err != nil { + return err + } + } + return nil +} + +func awsRestjson1_serializeDocumentSlotHintsSlotMap(v map[string]types.RuntimeHintDetails, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + for key := range v { + om := object.Key(key) + mapVar := v[key] + if err := awsRestjson1_serializeDocumentRuntimeHintDetails(&mapVar, om); err != nil { + return err + } + } + return nil +} + func awsRestjson1_serializeDocumentSlots(v map[string]types.Slot, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/lexruntimev2/types/types.go b/service/lexruntimev2/types/types.go index cb6581c9184..84dbffff824 100644 --- a/service/lexruntimev2/types/types.go +++ b/service/lexruntimev2/types/types.go @@ -449,6 +449,51 @@ type PlaybackInterruptionEvent struct { noSmithyDocumentSerde } +// Provides an array of phrases that should be given preference when resolving +// values for a slot. +type RuntimeHintDetails struct { + + // One or more strings that Amazon Lex V2 should look for in the input to the bot. + // Each phrase is given preference when deciding on slot values. + // + // This member is required. + RuntimeHintValues []RuntimeHintValue + + noSmithyDocumentSerde +} + +// You can provide Amazon Lex V2 with hints to the phrases that a customer is +// likely to use for a slot. When a slot with hints is resolved, the phrases in the +// runtime hints are preferred in the resolution. You can provide hints for a +// maximum of 100 intents. You can provide a maximum of 100 slots. Before you can +// use runtime hints with an existing bot, you must first rebuild the bot. For more +// information, see Using hints to improve accuracy +// (https://docs.aws.amazon.com/lexv2/latest/dg/using-hints.xml). +type RuntimeHints struct { + + // A list of the slots in the intent that should have runtime hints added, and the + // phrases that should be added for each slot. The first level of the slotHints map + // is the name of the intent. The second level is the name of the slot within the + // intent. For more information, see Using hints to improve accuracy + // (https://docs.aws.amazon.com/lexv2/latest/dg/using-hints.xml). The intent name + // and slot name must exist. + SlotHints map[string]map[string]RuntimeHintDetails + + noSmithyDocumentSerde +} + +// Provides the phrase that Amazon Lex V2 should look for in the user's input to +// the bot. +type RuntimeHintValue struct { + + // The phrase that Amazon Lex V2 should look for in the user's input to the bot. + // + // This member is required. + Phrase *string + + noSmithyDocumentSerde +} + // Provides information about the sentiment expressed in a user's response in a // conversation. Sentiments are determined using Amazon Comprehend. Sentiments are // only returned if they are enabled for the bot. For more information, see @@ -503,9 +548,13 @@ type SessionState struct { // The active intent that Amazon Lex V2 is processing. Intent *Intent - // + // A unique identifier for a specific request. OriginatingRequestId *string + // Hints for phrases that a customer is likely to use for a slot. Amazon Lex V2 + // uses the hints to help determine the correct value of a slot. + RuntimeHints *RuntimeHints + // Map of key/value pairs representing session-specific context information. It // contains application information passed between Amazon Lex V2 and a client // application. diff --git a/service/lexruntimev2/validators.go b/service/lexruntimev2/validators.go index f8cab94205b..9afe94fdcc9 100644 --- a/service/lexruntimev2/validators.go +++ b/service/lexruntimev2/validators.go @@ -396,6 +396,74 @@ func validateMessages(v []types.Message) error { } } +func validateRuntimeHintDetails(v *types.RuntimeHintDetails) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "RuntimeHintDetails"} + if v.RuntimeHintValues == nil { + invalidParams.Add(smithy.NewErrParamRequired("RuntimeHintValues")) + } else if v.RuntimeHintValues != nil { + if err := validateRuntimeHintValuesList(v.RuntimeHintValues); err != nil { + invalidParams.AddNested("RuntimeHintValues", err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateRuntimeHints(v *types.RuntimeHints) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "RuntimeHints"} + if v.SlotHints != nil { + if err := validateSlotHintsIntentMap(v.SlotHints); err != nil { + invalidParams.AddNested("SlotHints", err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateRuntimeHintValue(v *types.RuntimeHintValue) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "RuntimeHintValue"} + if v.Phrase == nil { + invalidParams.Add(smithy.NewErrParamRequired("Phrase")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateRuntimeHintValuesList(v []types.RuntimeHintValue) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "RuntimeHintValuesList"} + for i := range v { + if err := validateRuntimeHintValue(&v[i]); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateSessionState(v *types.SessionState) error { if v == nil { return nil @@ -416,6 +484,11 @@ func validateSessionState(v *types.SessionState) error { invalidParams.AddNested("ActiveContexts", err.(smithy.InvalidParamsError)) } } + if v.RuntimeHints != nil { + if err := validateRuntimeHints(v.RuntimeHints); err != nil { + invalidParams.AddNested("RuntimeHints", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -445,6 +518,41 @@ func validateSlot(v *types.Slot) error { } } +func validateSlotHintsIntentMap(v map[string]map[string]types.RuntimeHintDetails) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "SlotHintsIntentMap"} + for key := range v { + if err := validateSlotHintsSlotMap(v[key]); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%q]", key), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateSlotHintsSlotMap(v map[string]types.RuntimeHintDetails) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "SlotHintsSlotMap"} + for key := range v { + value := v[key] + if err := validateRuntimeHintDetails(&value); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%q]", key), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateSlots(v map[string]types.Slot) error { if v == nil { return nil diff --git a/service/lookoutmetrics/api_op_DescribeAnomalyDetector.go b/service/lookoutmetrics/api_op_DescribeAnomalyDetector.go index b6c8e89d2e0..7e780270ee0 100644 --- a/service/lookoutmetrics/api_op_DescribeAnomalyDetector.go +++ b/service/lookoutmetrics/api_op_DescribeAnomalyDetector.go @@ -57,9 +57,12 @@ type DescribeAnomalyDetectorOutput struct { // The time at which the detector was created. CreationTime *time.Time - // The reason that the detector failed, if any. + // The reason that the detector failed. FailureReason *string + // The process that caused the detector to fail. + FailureType types.AnomalyDetectorFailureType + // The ARN of the KMS key to use to encrypt your data. KmsKeyArn *string diff --git a/service/lookoutmetrics/deserializers.go b/service/lookoutmetrics/deserializers.go index d26047d3aa2..00b6e48feff 100644 --- a/service/lookoutmetrics/deserializers.go +++ b/service/lookoutmetrics/deserializers.go @@ -1439,6 +1439,15 @@ func awsRestjson1_deserializeOpDocumentDescribeAnomalyDetectorOutput(v **Describ sv.FailureReason = ptr.String(jtv) } + case "FailureType": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AnomalyDetectorFailureType to be of type string, got %T instead", value) + } + sv.FailureType = types.AnomalyDetectorFailureType(jtv) + } + case "KmsKeyArn": if value != nil { jtv, ok := value.(string) @@ -3978,6 +3987,9 @@ func awsRestjson1_deserializeOpErrorUpdateMetricSet(response *smithyhttp.Respons case strings.EqualFold("ResourceNotFoundException", errorCode): return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + case strings.EqualFold("ServiceQuotaExceededException", errorCode): + return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) + case strings.EqualFold("TooManyRequestsException", errorCode): return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody) diff --git a/service/lookoutmetrics/serializers.go b/service/lookoutmetrics/serializers.go index af0fd0ba7d0..deabb1a690b 100644 --- a/service/lookoutmetrics/serializers.go +++ b/service/lookoutmetrics/serializers.go @@ -2401,7 +2401,7 @@ func awsRestjson1_serializeDocumentRDSSourceConfig(v *types.RDSSourceConfig, val ok.String(*v.DatabaseName) } - { + if v.DatabasePort != 0 { ok := object.Key("DatabasePort") ok.Integer(v.DatabasePort) } @@ -2455,7 +2455,7 @@ func awsRestjson1_serializeDocumentRedshiftSourceConfig(v *types.RedshiftSourceC ok.String(*v.DatabaseName) } - { + if v.DatabasePort != 0 { ok := object.Key("DatabasePort") ok.Integer(v.DatabasePort) } diff --git a/service/lookoutmetrics/types/enums.go b/service/lookoutmetrics/types/enums.go index d341ff72e0a..ec145234b6b 100644 --- a/service/lookoutmetrics/types/enums.go +++ b/service/lookoutmetrics/types/enums.go @@ -80,6 +80,26 @@ func (AnomalyDetectionTaskStatus) Values() []AnomalyDetectionTaskStatus { } } +type AnomalyDetectorFailureType string + +// Enum values for AnomalyDetectorFailureType +const ( + AnomalyDetectorFailureTypeActivationFailure AnomalyDetectorFailureType = "ACTIVATION_FAILURE" + AnomalyDetectorFailureTypeBackTestActivationFailure AnomalyDetectorFailureType = "BACK_TEST_ACTIVATION_FAILURE" + AnomalyDetectorFailureTypeDeletionFailure AnomalyDetectorFailureType = "DELETION_FAILURE" +) + +// Values returns all known values for AnomalyDetectorFailureType. Note that this +// can be expanded in the future, and so it is only as up to date as the client. +// The ordering of this slice is not guaranteed to be stable across updates. +func (AnomalyDetectorFailureType) Values() []AnomalyDetectorFailureType { + return []AnomalyDetectorFailureType{ + "ACTIVATION_FAILURE", + "BACK_TEST_ACTIVATION_FAILURE", + "DELETION_FAILURE", + } +} + type AnomalyDetectorStatus string // Enum values for AnomalyDetectorStatus diff --git a/service/lookoutmetrics/types/types.go b/service/lookoutmetrics/types/types.go index 060b23f5117..1adef9e1fe8 100644 --- a/service/lookoutmetrics/types/types.go +++ b/service/lookoutmetrics/types/types.go @@ -235,13 +235,9 @@ type AnomalyGroupTimeSeriesFeedback struct { type AppFlowConfig struct { // name of the flow. - // - // This member is required. FlowName *string // An IAM role that gives Amazon Lookout for Metrics permission to access the flow. - // - // This member is required. RoleArn *string noSmithyDocumentSerde @@ -252,8 +248,6 @@ type CloudWatchConfig struct { // An IAM role that gives Amazon Lookout for Metrics permission to access data in // Amazon CloudWatch. - // - // This member is required. RoleArn *string noSmithyDocumentSerde @@ -514,44 +508,28 @@ type MetricSource struct { type RDSSourceConfig struct { // A string identifying the database instance. - // - // This member is required. DBInstanceIdentifier *string // The host name of the database. - // - // This member is required. DatabaseHost *string // The name of the RDS database. - // - // This member is required. DatabaseName *string // The port number where the database can be accessed. - // - // This member is required. DatabasePort int32 // The Amazon Resource Name (ARN) of the role. - // - // This member is required. RoleArn *string // The Amazon Resource Name (ARN) of the AWS Secrets Manager role. - // - // This member is required. SecretManagerArn *string // The name of the table in the database. - // - // This member is required. TableName *string // An object containing information about the Amazon Virtual Private Cloud (VPC) // configuration. - // - // This member is required. VpcConfiguration *VpcConfiguration noSmithyDocumentSerde @@ -561,43 +539,27 @@ type RDSSourceConfig struct { type RedshiftSourceConfig struct { // A string identifying the Redshift cluster. - // - // This member is required. ClusterIdentifier *string // The name of the database host. - // - // This member is required. DatabaseHost *string // The Redshift database name. - // - // This member is required. DatabaseName *string // The port number where the database can be accessed. - // - // This member is required. DatabasePort int32 // The Amazon Resource Name (ARN) of the role providing access to the database. - // - // This member is required. RoleArn *string // The Amazon Resource Name (ARN) of the AWS Secrets Manager role. - // - // This member is required. SecretManagerArn *string // The table name of the Redshift database. - // - // This member is required. TableName *string // Contains information about the Amazon Virtual Private Cloud (VPC) configuration. - // - // This member is required. VpcConfiguration *VpcConfiguration noSmithyDocumentSerde @@ -607,18 +569,16 @@ type RedshiftSourceConfig struct { // source files. type S3SourceConfig struct { - // The ARN of an IAM role that has read and write access permissions to the source - // S3 bucket. - // - // This member is required. - RoleArn *string - // Contains information about a source file's formatting. FileFormatDescriptor *FileFormatDescriptor // A list of paths to the historical data files. HistoricalDataPathList []string + // The ARN of an IAM role that has read and write access permissions to the source + // S3 bucket. + RoleArn *string + // A list of templated paths to the source files. TemplatedPathList []string diff --git a/service/lookoutmetrics/validators.go b/service/lookoutmetrics/validators.go index 16860e523aa..fefcd6f851b 100644 --- a/service/lookoutmetrics/validators.go +++ b/service/lookoutmetrics/validators.go @@ -620,39 +620,6 @@ func validateAnomalyGroupTimeSeriesFeedback(v *types.AnomalyGroupTimeSeriesFeedb } } -func validateAppFlowConfig(v *types.AppFlowConfig) error { - if v == nil { - return nil - } - invalidParams := smithy.InvalidParamsError{Context: "AppFlowConfig"} - if v.RoleArn == nil { - invalidParams.Add(smithy.NewErrParamRequired("RoleArn")) - } - if v.FlowName == nil { - invalidParams.Add(smithy.NewErrParamRequired("FlowName")) - } - if invalidParams.Len() > 0 { - return invalidParams - } else { - return nil - } -} - -func validateCloudWatchConfig(v *types.CloudWatchConfig) error { - if v == nil { - return nil - } - invalidParams := smithy.InvalidParamsError{Context: "CloudWatchConfig"} - if v.RoleArn == nil { - invalidParams.Add(smithy.NewErrParamRequired("RoleArn")) - } - if invalidParams.Len() > 0 { - return invalidParams - } else { - return nil - } -} - func validateLambdaConfiguration(v *types.LambdaConfiguration) error { if v == nil { return nil @@ -711,21 +678,6 @@ func validateMetricSource(v *types.MetricSource) error { return nil } invalidParams := smithy.InvalidParamsError{Context: "MetricSource"} - if v.S3SourceConfig != nil { - if err := validateS3SourceConfig(v.S3SourceConfig); err != nil { - invalidParams.AddNested("S3SourceConfig", err.(smithy.InvalidParamsError)) - } - } - if v.AppFlowConfig != nil { - if err := validateAppFlowConfig(v.AppFlowConfig); err != nil { - invalidParams.AddNested("AppFlowConfig", err.(smithy.InvalidParamsError)) - } - } - if v.CloudWatchConfig != nil { - if err := validateCloudWatchConfig(v.CloudWatchConfig); err != nil { - invalidParams.AddNested("CloudWatchConfig", err.(smithy.InvalidParamsError)) - } - } if v.RDSSourceConfig != nil { if err := validateRDSSourceConfig(v.RDSSourceConfig); err != nil { invalidParams.AddNested("RDSSourceConfig", err.(smithy.InvalidParamsError)) @@ -748,27 +700,7 @@ func validateRDSSourceConfig(v *types.RDSSourceConfig) error { return nil } invalidParams := smithy.InvalidParamsError{Context: "RDSSourceConfig"} - if v.DBInstanceIdentifier == nil { - invalidParams.Add(smithy.NewErrParamRequired("DBInstanceIdentifier")) - } - if v.DatabaseHost == nil { - invalidParams.Add(smithy.NewErrParamRequired("DatabaseHost")) - } - if v.SecretManagerArn == nil { - invalidParams.Add(smithy.NewErrParamRequired("SecretManagerArn")) - } - if v.DatabaseName == nil { - invalidParams.Add(smithy.NewErrParamRequired("DatabaseName")) - } - if v.TableName == nil { - invalidParams.Add(smithy.NewErrParamRequired("TableName")) - } - if v.RoleArn == nil { - invalidParams.Add(smithy.NewErrParamRequired("RoleArn")) - } - if v.VpcConfiguration == nil { - invalidParams.Add(smithy.NewErrParamRequired("VpcConfiguration")) - } else if v.VpcConfiguration != nil { + if v.VpcConfiguration != nil { if err := validateVpcConfiguration(v.VpcConfiguration); err != nil { invalidParams.AddNested("VpcConfiguration", err.(smithy.InvalidParamsError)) } @@ -785,27 +717,7 @@ func validateRedshiftSourceConfig(v *types.RedshiftSourceConfig) error { return nil } invalidParams := smithy.InvalidParamsError{Context: "RedshiftSourceConfig"} - if v.ClusterIdentifier == nil { - invalidParams.Add(smithy.NewErrParamRequired("ClusterIdentifier")) - } - if v.DatabaseHost == nil { - invalidParams.Add(smithy.NewErrParamRequired("DatabaseHost")) - } - if v.SecretManagerArn == nil { - invalidParams.Add(smithy.NewErrParamRequired("SecretManagerArn")) - } - if v.DatabaseName == nil { - invalidParams.Add(smithy.NewErrParamRequired("DatabaseName")) - } - if v.TableName == nil { - invalidParams.Add(smithy.NewErrParamRequired("TableName")) - } - if v.RoleArn == nil { - invalidParams.Add(smithy.NewErrParamRequired("RoleArn")) - } - if v.VpcConfiguration == nil { - invalidParams.Add(smithy.NewErrParamRequired("VpcConfiguration")) - } else if v.VpcConfiguration != nil { + if v.VpcConfiguration != nil { if err := validateVpcConfiguration(v.VpcConfiguration); err != nil { invalidParams.AddNested("VpcConfiguration", err.(smithy.InvalidParamsError)) } @@ -817,21 +729,6 @@ func validateRedshiftSourceConfig(v *types.RedshiftSourceConfig) error { } } -func validateS3SourceConfig(v *types.S3SourceConfig) error { - if v == nil { - return nil - } - invalidParams := smithy.InvalidParamsError{Context: "S3SourceConfig"} - if v.RoleArn == nil { - invalidParams.Add(smithy.NewErrParamRequired("RoleArn")) - } - if invalidParams.Len() > 0 { - return invalidParams - } else { - return nil - } -} - func validateSampleDataS3SourceConfig(v *types.SampleDataS3SourceConfig) error { if v == nil { return nil diff --git a/service/medialive/deserializers.go b/service/medialive/deserializers.go index d08331057ea..cdf14f831fc 100644 --- a/service/medialive/deserializers.go +++ b/service/medialive/deserializers.go @@ -19020,6 +19020,15 @@ func awsRestjson1_deserializeDocumentHlsGroupSettings(v **types.HlsGroupSettings sv.ProgramDateTime = types.HlsProgramDateTime(jtv) } + case "programDateTimeClock": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected HlsProgramDateTimeClock to be of type string, got %T instead", value) + } + sv.ProgramDateTimeClock = types.HlsProgramDateTimeClock(jtv) + } + case "programDateTimePeriod": if value != nil { jtv, ok := value.(json.Number) diff --git a/service/medialive/serializers.go b/service/medialive/serializers.go index 0656670dee6..ad115081f4f 100644 --- a/service/medialive/serializers.go +++ b/service/medialive/serializers.go @@ -7334,6 +7334,11 @@ func awsRestjson1_serializeDocumentHlsGroupSettings(v *types.HlsGroupSettings, v ok.String(string(v.ProgramDateTime)) } + if len(v.ProgramDateTimeClock) > 0 { + ok := object.Key("programDateTimeClock") + ok.String(string(v.ProgramDateTimeClock)) + } + if v.ProgramDateTimePeriod != 0 { ok := object.Key("programDateTimePeriod") ok.Integer(v.ProgramDateTimePeriod) diff --git a/service/medialive/types/enums.go b/service/medialive/types/enums.go index a5d4c889c22..90218160d3c 100644 --- a/service/medialive/types/enums.go +++ b/service/medialive/types/enums.go @@ -2578,6 +2578,24 @@ func (HlsProgramDateTime) Values() []HlsProgramDateTime { } } +type HlsProgramDateTimeClock string + +// Enum values for HlsProgramDateTimeClock +const ( + HlsProgramDateTimeClockInitializeFromOutputTimecode HlsProgramDateTimeClock = "INITIALIZE_FROM_OUTPUT_TIMECODE" + HlsProgramDateTimeClockSystemClock HlsProgramDateTimeClock = "SYSTEM_CLOCK" +) + +// Values returns all known values for HlsProgramDateTimeClock. Note that this can +// be expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (HlsProgramDateTimeClock) Values() []HlsProgramDateTimeClock { + return []HlsProgramDateTimeClock{ + "INITIALIZE_FROM_OUTPUT_TIMECODE", + "SYSTEM_CLOCK", + } +} + type HlsRedundantManifest string // Enum values for HlsRedundantManifest diff --git a/service/medialive/types/types.go b/service/medialive/types/types.go index ac448a2f100..92d005e648c 100644 --- a/service/medialive/types/types.go +++ b/service/medialive/types/types.go @@ -2366,11 +2366,18 @@ type HlsGroupSettings struct { OutputSelection HlsOutputSelection // Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. The - // value is calculated as follows: either the program date and time are initialized - // using the input timecode source, or the time is initialized using the input - // timecode source and the date is initialized using the timestampOffset. + // value is calculated using the program date time clock. ProgramDateTime HlsProgramDateTime + // Specifies the algorithm used to drive the HLS EXT-X-PROGRAM-DATE-TIME clock. + // Options include: INITIALIZE_FROM_OUTPUT_TIMECODE: The PDT clock is initialized + // as a function of the first output timecode, then incremented by the EXTINF + // duration of each encoded segment. SYSTEM_CLOCK: The PDT clock is initialized as + // a function of the UTC wall clock, then incremented by the EXTINF duration of + // each encoded segment. If the PDT clock diverges from the wall clock by more than + // 500ms, it is resynchronized to the wall clock. + ProgramDateTimeClock HlsProgramDateTimeClock + // Period of insertion of EXT-X-PROGRAM-DATE-TIME entry, in seconds. ProgramDateTimePeriod int32 diff --git a/service/mediatailor/api_op_CreateChannel.go b/service/mediatailor/api_op_CreateChannel.go index 89049e53551..16dcc0eafe4 100644 --- a/service/mediatailor/api_op_CreateChannel.go +++ b/service/mediatailor/api_op_CreateChannel.go @@ -50,7 +50,8 @@ type CreateChannelInput struct { PlaybackMode types.PlaybackMode // The slate used to fill gaps between programs in the schedule. You must configure - // filler slate if your channel uses a LINEAR PlaybackMode. + // filler slate if your channel uses the LINEAR PlaybackMode. MediaTailor doesn't + // support filler slate for channels using the LOOP PlaybackMode. FillerSlate *types.SlateSource // The tags to assign to the channel. diff --git a/service/mediatailor/api_op_UpdateChannel.go b/service/mediatailor/api_op_UpdateChannel.go index b59d5a8b261..e0f926fd9f5 100644 --- a/service/mediatailor/api_op_UpdateChannel.go +++ b/service/mediatailor/api_op_UpdateChannel.go @@ -40,6 +40,11 @@ type UpdateChannelInput struct { // This member is required. Outputs []types.RequestOutputItem + // The slate used to fill gaps between programs in the schedule. You must configure + // filler slate if your channel uses the LINEAR PlaybackMode. MediaTailor doesn't + // support filler slate for channels using the LOOP PlaybackMode. + FillerSlate *types.SlateSource + noSmithyDocumentSerde } diff --git a/service/mediatailor/serializers.go b/service/mediatailor/serializers.go index f9440400471..858746ca6eb 100644 --- a/service/mediatailor/serializers.go +++ b/service/mediatailor/serializers.go @@ -2555,6 +2555,13 @@ func awsRestjson1_serializeOpDocumentUpdateChannelInput(v *UpdateChannelInput, v object := value.Object() defer object.Close() + if v.FillerSlate != nil { + ok := object.Key("FillerSlate") + if err := awsRestjson1_serializeDocumentSlateSource(v.FillerSlate, ok); err != nil { + return err + } + } + if v.Outputs != nil { ok := object.Key("Outputs") if err := awsRestjson1_serializeDocumentRequestOutputs(v.Outputs, ok); err != nil { diff --git a/service/mediatailor/types/types.go b/service/mediatailor/types/types.go index 59d7e129bef..6429503d7c1 100644 --- a/service/mediatailor/types/types.go +++ b/service/mediatailor/types/types.go @@ -230,9 +230,9 @@ type Channel struct { // The timestamp of when the channel was created. CreationTime *time.Time - // Contains information about the slate used to fill gaps between programs in the - // schedule. You must configure FillerSlate if your channel uses an LINEAR - // PlaybackMode. + // The slate used to fill gaps between programs in the schedule. You must configure + // filler slate if your channel uses the LINEAR PlaybackMode. MediaTailor doesn't + // support filler slate for channels using the LOOP PlaybackMode. FillerSlate *SlateSource // The timestamp of when the channel was last modified. diff --git a/service/mwaa/api_op_CreateCliToken.go b/service/mwaa/api_op_CreateCliToken.go index e216fb7af5d..e592b860ce7 100644 --- a/service/mwaa/api_op_CreateCliToken.go +++ b/service/mwaa/api_op_CreateCliToken.go @@ -11,7 +11,9 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Create a CLI token to use Airflow CLI. +// Creates a CLI token for the Airflow CLI. To learn more, see Creating an Apache +// Airflow CLI token +// (https://docs.aws.amazon.com/mwaa/latest/userguide/call-mwaa-apis-cli.html). func (c *Client) CreateCliToken(ctx context.Context, params *CreateCliTokenInput, optFns ...func(*Options)) (*CreateCliTokenOutput, error) { if params == nil { params = &CreateCliTokenInput{} @@ -29,7 +31,7 @@ func (c *Client) CreateCliToken(ctx context.Context, params *CreateCliTokenInput type CreateCliTokenInput struct { - // Create a CLI token request for a MWAA environment. + // The name of the Amazon MWAA environment. For example, MyMWAAEnvironment. // // This member is required. Name *string @@ -39,10 +41,10 @@ type CreateCliTokenInput struct { type CreateCliTokenOutput struct { - // Create an Airflow CLI login token response for the provided JWT token. + // An Airflow CLI login token. CliToken *string - // Create an Airflow CLI login token response for the provided webserver hostname. + // The Airflow web server hostname for the environment. WebServerHostname *string // Metadata pertaining to the operation's result. diff --git a/service/mwaa/api_op_CreateEnvironment.go b/service/mwaa/api_op_CreateEnvironment.go index a89ae697bc9..7beaa306217 100644 --- a/service/mwaa/api_op_CreateEnvironment.go +++ b/service/mwaa/api_op_CreateEnvironment.go @@ -42,10 +42,11 @@ type CreateEnvironmentInput struct { DagS3Path *string // The Amazon Resource Name (ARN) of the execution role for your environment. An - // execution role is an AWS Identity and Access Management (IAM) role that grants - // MWAA permission to access AWS services and resources used by your environment. - // For example, arn:aws:iam::123456789:role/my-execution-role. To learn more, see - // Amazon MWAA Execution role + // execution role is an Amazon Web Services Identity and Access Management (IAM) + // role that grants MWAA permission to access Amazon Web Services services and + // resources used by your environment. For example, + // arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA + // Execution role // (https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html). // // This member is required. @@ -57,8 +58,8 @@ type CreateEnvironmentInput struct { Name *string // The VPC networking components used to secure and enable network traffic between - // the AWS resources for your environment. To learn more, see About networking on - // Amazon MWAA + // the Amazon Web Services resources for your environment. To learn more, see About + // networking on Amazon MWAA // (https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html). // // This member is required. @@ -79,8 +80,10 @@ type CreateEnvironmentInput struct { // (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html). AirflowConfigurationOptions map[string]string - // The Apache Airflow version for your environment. For example, v1.10.12. If no - // value is specified, defaults to the latest version. Valid values: v1.10.12. + // The Apache Airflow version for your environment. If no value is specified, + // defaults to the latest version. Valid values: 1.10.12, 2.0.2. To learn more, see + // Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (MWAA) + // (https://docs.aws.amazon.com/mwaa/latest/userguide/airflow-versions.html). AirflowVersion *string // The environment class type. Valid values: mw1.small, mw1.medium, mw1.large. To @@ -88,14 +91,13 @@ type CreateEnvironmentInput struct { // (https://docs.aws.amazon.com/mwaa/latest/userguide/environment-class.html). EnvironmentClass *string - // The AWS Key Management Service (KMS) key to encrypt the data in your - // environment. You can use an AWS owned CMK, or a Customer managed CMK (advanced). - // To learn more, see Get started with Amazon Managed Workflows for Apache Airflow - // (https://docs.aws.amazon.com/mwaa/latest/userguide/get-started.html). + // The Amazon Web Services Key Management Service (KMS) key to encrypt the data in + // your environment. You can use an Amazon Web Services owned CMK, or a Customer + // managed CMK (advanced). To learn more, see Create an Amazon MWAA environment + // (https://docs.aws.amazon.com/mwaa/latest/userguide/create-environment.html). KmsKey *string - // Defines the Apache Airflow logs to send to CloudWatch Logs: DagProcessingLogs, - // SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs. + // Defines the Apache Airflow logs to send to CloudWatch Logs. LoggingConfiguration *types.LoggingConfigurationInput // The maximum number of workers that you want to run in your environment. MWAA @@ -136,12 +138,18 @@ type CreateEnvironmentInput struct { // (https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags-dependencies.html). RequirementsS3Path *string - // The number of Apache Airflow schedulers to run in your environment. + // The number of Apache Airflow schedulers to run in your environment. Valid + // values: + // + // * v2.0.2 - Accepts between 2 to 5. Defaults to 2. + // + // * v1.10.12 - Accepts + // 1. Schedulers *int32 // The key-value tag pairs you want to associate to your environment. For example, - // "Environment": "Staging". To learn more, see Tagging AWS resources - // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + // "Environment": "Staging". To learn more, see Tagging Amazon Web Services + // resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). Tags map[string]string // The Apache Airflow Web server access mode. To learn more, see Apache Airflow @@ -149,12 +157,10 @@ type CreateEnvironmentInput struct { // (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html). WebserverAccessMode types.WebserverAccessMode - // The day and time of the week to start weekly maintenance updates of your - // environment in the following format: DAY:HH:MM. For example: TUE:03:30. You can - // specify a start time in 30 minute increments only. Supported input includes the - // following: - // - // * MON|TUE|WED|THU|FRI|SAT|SUN:([01]\\d|2[0-3]):(00|30) + // The day and time of the week in Coordinated Universal Time (UTC) 24-hour + // standard time to start weekly maintenance updates of your environment in the + // following format: DAY:HH:MM. For example: TUE:03:30. You can specify a start + // time in 30 minute increments only. WeeklyMaintenanceWindowStart *string noSmithyDocumentSerde diff --git a/service/mwaa/api_op_CreateWebLoginToken.go b/service/mwaa/api_op_CreateWebLoginToken.go index 20d4c4a7e44..c0ab6cc03f3 100644 --- a/service/mwaa/api_op_CreateWebLoginToken.go +++ b/service/mwaa/api_op_CreateWebLoginToken.go @@ -11,8 +11,9 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Create a JWT token to be used to login to Airflow Web UI with claims based -// Authentication. +// Creates a web login token for the Airflow Web UI. To learn more, see Creating an +// Apache Airflow web login token +// (https://docs.aws.amazon.com/mwaa/latest/userguide/call-mwaa-apis-web.html). func (c *Client) CreateWebLoginToken(ctx context.Context, params *CreateWebLoginTokenInput, optFns ...func(*Options)) (*CreateWebLoginTokenOutput, error) { if params == nil { params = &CreateWebLoginTokenInput{} @@ -30,7 +31,7 @@ func (c *Client) CreateWebLoginToken(ctx context.Context, params *CreateWebLogin type CreateWebLoginTokenInput struct { - // Create an Airflow Web UI login token request for a MWAA environment. + // The name of the Amazon MWAA environment. For example, MyMWAAEnvironment. // // This member is required. Name *string @@ -40,11 +41,10 @@ type CreateWebLoginTokenInput struct { type CreateWebLoginTokenOutput struct { - // Create an Airflow Web UI login token response for the provided webserver - // hostname. + // The Airflow web server hostname for the environment. WebServerHostname *string - // Create an Airflow Web UI login token response for the provided JWT token. + // An Airflow web server login token. WebToken *string // Metadata pertaining to the operation's result. diff --git a/service/mwaa/api_op_GetEnvironment.go b/service/mwaa/api_op_GetEnvironment.go index ef0ff094603..4c80e1978e3 100644 --- a/service/mwaa/api_op_GetEnvironment.go +++ b/service/mwaa/api_op_GetEnvironment.go @@ -12,8 +12,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Retrieves the details of an Amazon Managed Workflows for Apache Airflow (MWAA) -// environment. +// Describes an Amazon Managed Workflows for Apache Airflow (MWAA) environment. func (c *Client) GetEnvironment(ctx context.Context, params *GetEnvironmentInput, optFns ...func(*Options)) (*GetEnvironmentOutput, error) { if params == nil { params = &GetEnvironmentInput{} diff --git a/service/mwaa/api_op_ListEnvironments.go b/service/mwaa/api_op_ListEnvironments.go index 8cb7ec711de..91a036c9da7 100644 --- a/service/mwaa/api_op_ListEnvironments.go +++ b/service/mwaa/api_op_ListEnvironments.go @@ -41,7 +41,7 @@ type ListEnvironmentsInput struct { type ListEnvironmentsOutput struct { - // Returns the list of Amazon MWAA environments. + // Returns a list of Amazon MWAA environments. // // This member is required. Environments []string diff --git a/service/mwaa/api_op_ListTagsForResource.go b/service/mwaa/api_op_ListTagsForResource.go index 84a86d34227..0b5b2c3a803 100644 --- a/service/mwaa/api_op_ListTagsForResource.go +++ b/service/mwaa/api_op_ListTagsForResource.go @@ -42,7 +42,7 @@ type ListTagsForResourceInput struct { type ListTagsForResourceOutput struct { // The key-value tag pairs associated to your environment. To learn more, see - // Tagging AWS resources + // Tagging Amazon Web Services resources // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). Tags map[string]string diff --git a/service/mwaa/api_op_PublishMetrics.go b/service/mwaa/api_op_PublishMetrics.go index 16941328450..989bd04cb45 100644 --- a/service/mwaa/api_op_PublishMetrics.go +++ b/service/mwaa/api_op_PublishMetrics.go @@ -12,7 +12,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// An operation for publishing metrics from the customers to the Ops plane. +// Internal only. Publishes environment health metrics to Amazon CloudWatch. func (c *Client) PublishMetrics(ctx context.Context, params *PublishMetricsInput, optFns ...func(*Options)) (*PublishMetricsOutput, error) { if params == nil { params = &PublishMetricsInput{} @@ -30,13 +30,15 @@ func (c *Client) PublishMetrics(ctx context.Context, params *PublishMetricsInput type PublishMetricsInput struct { - // Publishes environment metric data to Amazon CloudWatch. + // Internal only. The name of the environment. // // This member is required. EnvironmentName *string - // Publishes metric data points to Amazon CloudWatch. CloudWatch associates the - // data points with the specified metrica. + // Internal only. Publishes metrics to Amazon CloudWatch. To learn more about the + // metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in + // Amazon CloudWatch + // (https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html). // // This member is required. MetricData []types.MetricDatum diff --git a/service/mwaa/api_op_TagResource.go b/service/mwaa/api_op_TagResource.go index a2a6cc66308..30765ea5540 100644 --- a/service/mwaa/api_op_TagResource.go +++ b/service/mwaa/api_op_TagResource.go @@ -37,8 +37,8 @@ type TagResourceInput struct { ResourceArn *string // The key-value tag pairs you want to associate to your environment. For example, - // "Environment": "Staging". To learn more, see Tagging AWS resources - // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + // "Environment": "Staging". To learn more, see Tagging Amazon Web Services + // resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). // // This member is required. Tags map[string]string diff --git a/service/mwaa/api_op_UpdateEnvironment.go b/service/mwaa/api_op_UpdateEnvironment.go index bcc785a1f5a..b031a3158b2 100644 --- a/service/mwaa/api_op_UpdateEnvironment.go +++ b/service/mwaa/api_op_UpdateEnvironment.go @@ -41,8 +41,8 @@ type UpdateEnvironmentInput struct { // (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html). AirflowConfigurationOptions map[string]string - // The Apache Airflow version for your environment. For example, v1.10.12. If no - // value is specified, defaults to the latest version. Valid values: v1.10.12. + // The Apache Airflow version for your environment. If no value is specified, + // defaults to the latest version. Valid values: 1.10.12, 2.0.2. AirflowVersion *string // The relative path to the DAGs folder on your Amazon S3 bucket. For example, @@ -56,14 +56,13 @@ type UpdateEnvironmentInput struct { EnvironmentClass *string // The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to - // access AWS resources in your environment. For example, + // access Amazon Web Services resources in your environment. For example, // arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA // Execution role // (https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html). ExecutionRoleArn *string - // Defines the Apache Airflow logs to send to CloudWatch Logs: DagProcessingLogs, - // SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs. + // The Apache Airflow log types to send to CloudWatch Logs. LoggingConfiguration *types.LoggingConfigurationInput // The maximum number of workers that you want to run in your environment. MWAA @@ -81,8 +80,8 @@ type UpdateEnvironmentInput struct { MinWorkers *int32 // The VPC networking components used to secure and enable network traffic between - // the AWS resources for your environment. To learn more, see About networking on - // Amazon MWAA + // the Amazon Web Services resources for your environment. To learn more, see About + // networking on Amazon MWAA // (https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html). NetworkConfiguration *types.UpdateNetworkConfigurationInput @@ -125,12 +124,10 @@ type UpdateEnvironmentInput struct { // (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-networking.html). WebserverAccessMode types.WebserverAccessMode - // The day and time of the week to start weekly maintenance updates of your - // environment in the following format: DAY:HH:MM. For example: TUE:03:30. You can - // specify a start time in 30 minute increments only. Supported input includes the - // following: - // - // * MON|TUE|WED|THU|FRI|SAT|SUN:([01]\\d|2[0-3]):(00|30) + // The day and time of the week in Coordinated Universal Time (UTC) 24-hour + // standard time to start weekly maintenance updates of your environment in the + // following format: DAY:HH:MM. For example: TUE:03:30. You can specify a start + // time in 30 minute increments only. WeeklyMaintenanceWindowStart *string noSmithyDocumentSerde diff --git a/service/mwaa/deserializers.go b/service/mwaa/deserializers.go index a24c40293d2..123f2551c4d 100644 --- a/service/mwaa/deserializers.go +++ b/service/mwaa/deserializers.go @@ -2080,6 +2080,15 @@ func awsRestjson1_deserializeDocumentLastUpdate(v **types.LastUpdate, value inte return err } + case "Source": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected UpdateSource to be of type string, got %T instead", value) + } + sv.Source = ptr.String(jtv) + } + case "Status": if value != nil { jtv, ok := value.(string) diff --git a/service/mwaa/doc.go b/service/mwaa/doc.go index 8381485c9f9..67f2ea34796 100644 --- a/service/mwaa/doc.go +++ b/service/mwaa/doc.go @@ -7,4 +7,62 @@ // Managed Workflows for Apache Airflow (MWAA) API reference documentation. For // more information, see What Is Amazon MWAA? // (https://docs.aws.amazon.com/mwaa/latest/userguide/what-is-mwaa.html). +// Endpoints +// +// * api.airflow.{region}.amazonaws.com - This endpoint is used for +// environment management. +// +// * CreateEnvironment +// (https://docs.aws.amazon.com/mwaa/latest/API/API_CreateEnvironment.html) +// +// * +// DeleteEnvironment +// (https://docs.aws.amazon.com/mwaa/latest/API/API_DeleteEnvironment.html) +// +// * +// GetEnvironment +// (https://docs.aws.amazon.com/mwaa/latest/API/API_GetEnvironment.html) +// +// * +// ListEnvironments +// (https://docs.aws.amazon.com/mwaa/latest/API/API_ListEnvironments.html) +// +// * +// ListTagsForResource +// (https://docs.aws.amazon.com/mwaa/latest/API/API_ListTagsForResource.html) +// +// * +// TagResource +// (https://docs.aws.amazon.com/mwaa/latest/API/API_TagResource.html) +// +// * +// UntagResource +// (https://docs.aws.amazon.com/mwaa/latest/API/API_UntagResource.html) +// +// * +// UpdateEnvironment +// (https://docs.aws.amazon.com/mwaa/latest/API/API_UpdateEnvironment.html) +// +// * +// env.airflow.{region}.amazonaws.com - This endpoint is used to operate the +// Airflow environment. +// +// * CreateCliToken +// (https://docs.aws.amazon.com/mwaa/latest/API/API_CreateCliToken.html) +// +// * +// CreateWebLoginToken +// (https://docs.aws.amazon.com/mwaa/latest/API/API_CreateWebLoginToken.html) +// +// * +// ops.airflow.{region}.amazonaws.com - This endpoint is used to push environment +// metrics that track environment health. +// +// * PublishMetrics +// (https://docs.aws.amazon.com/mwaa/latest/API/API_PublishMetrics.html) +// +// Regions +// For a list of regions that Amazon MWAA supports, see Region availability +// (https://docs.aws.amazon.com/mwaa/latest/userguide/what-is-mwaa.html#regions-mwaa) +// in the Amazon MWAA User Guide. package mwaa diff --git a/service/mwaa/types/errors.go b/service/mwaa/types/errors.go index 758c12301d1..ffa72a876c4 100644 --- a/service/mwaa/types/errors.go +++ b/service/mwaa/types/errors.go @@ -7,8 +7,9 @@ import ( smithy "github.com/aws/smithy-go" ) -// Access to the Airflow Web UI or CLI has been Denied. Please follow the MWAA user -// guide to setup permissions to access the Web UI and CLI functionality. +// Access to the Apache Airflow Web UI or CLI has been denied due to insufficient +// permissions. To learn more, see Accessing an Amazon MWAA environment +// (https://docs.aws.amazon.com/mwaa/latest/userguide/access-policies.html). type AccessDeniedException struct { Message *string diff --git a/service/mwaa/types/types.go b/service/mwaa/types/types.go index 94acdd13742..2697bd05b2e 100644 --- a/service/mwaa/types/types.go +++ b/service/mwaa/types/types.go @@ -7,15 +7,18 @@ import ( "time" ) -// Internal only API. +// Internal only. Represents the dimensions of a metric. To learn more about the +// metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in +// Amazon CloudWatch +// (https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html). type Dimension struct { - // Internal only API. + // Internal only. The name of the dimension. // // This member is required. Name *string - // Internal only API. + // Internal only. The value of the dimension. // // This member is required. Value *string @@ -23,7 +26,7 @@ type Dimension struct { noSmithyDocumentSerde } -// The Amazon Managed Workflows for Apache Airflow (MWAA) environment. +// Describes an Amazon Managed Workflows for Apache Airflow (MWAA) environment. type Environment struct { // A list of key-value pairs containing the Apache Airflow configuration options @@ -32,7 +35,7 @@ type Environment struct { // (https://docs.aws.amazon.com/mwaa/latest/userguide/configuring-env-variables.html). AirflowConfigurationOptions map[string]string - // The Apache Airflow version on your environment. For example, v1.10.12. + // The Apache Airflow version on your environment. Valid values: 1.10.12, 2.0.2. AirflowVersion *string // The Amazon Resource Name (ARN) of the Amazon MWAA environment. @@ -52,22 +55,20 @@ type Environment struct { EnvironmentClass *string // The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to - // access AWS resources in your environment. For example, + // access Amazon Web Services resources in your environment. For example, // arn:aws:iam::123456789:role/my-execution-role. To learn more, see Amazon MWAA // Execution role // (https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html). ExecutionRoleArn *string - // The Key Management Service (KMS) encryption key used to encrypt the data in your - // environment. + // The Amazon Web Services Key Management Service (KMS) encryption key used to + // encrypt the data in your environment. KmsKey *string - // The status of the last update on the environment, and any errors that were - // encountered. + // The status of the last update on the environment. LastUpdate *LastUpdate - // The Apache Airflow logs being sent to CloudWatch Logs: DagProcessingLogs, - // SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs. + // The Apache Airflow logs published to CloudWatch Logs. LoggingConfiguration *LoggingConfiguration // The maximum number of workers that run in your environment. For example, 20. @@ -79,9 +80,9 @@ type Environment struct { // The name of the Amazon MWAA environment. For example, MyMWAAEnvironment. Name *string - // The VPC networking components used to secure and enable network traffic between - // the AWS resources for your environment. To learn more, see About networking on - // Amazon MWAA + // Describes the VPC networking components used to secure and enable network + // traffic between the Amazon Web Services resources for your environment. To learn + // more, see About networking on Amazon MWAA // (https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html). NetworkConfiguration *NetworkConfiguration @@ -157,8 +158,8 @@ type Environment struct { Status EnvironmentStatus // The key-value tag pairs associated to your environment. For example, - // "Environment": "Staging". To learn more, see Tagging AWS resources - // (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + // "Environment": "Staging". To learn more, see Tagging Amazon Web Services + // resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). Tags map[string]string // The Apache Airflow Web server access mode. To learn more, see Apache Airflow @@ -171,15 +172,16 @@ type Environment struct { // (https://docs.aws.amazon.com/mwaa/latest/userguide/access-airflow-ui.html). WebserverUrl *string - // The day and time of the week that weekly maintenance updates are scheduled. For - // example: TUE:03:30. + // The day and time of the week in Coordinated Universal Time (UTC) 24-hour + // standard time that weekly maintenance updates are scheduled. For example: + // TUE:03:30. WeeklyMaintenanceWindowStart *string noSmithyDocumentSerde } -// The status of the last update on the environment, and any errors that were -// encountered. +// Describes the status of the last update on the environment, and any errors that +// were encountered. type LastUpdate struct { // The day and time of the last update on the environment. @@ -188,97 +190,90 @@ type LastUpdate struct { // The error that was encountered during the last update of the environment. Error *UpdateError - // The status of the last update on the environment. Valid values: SUCCESS, - // PENDING, FAILED. + // The source of the last update to the environment. Includes internal processes by + // Amazon MWAA, such as an environment maintenance update. + Source *string + + // The status of the last update on the environment. Status UpdateStatus noSmithyDocumentSerde } -// Defines the Apache Airflow logs to send to CloudWatch Logs: DagProcessingLogs, -// SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs. +// Describes the Apache Airflow log types that are published to CloudWatch Logs. type LoggingConfiguration struct { - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // The Airflow DAG processing logs published to CloudWatch Logs and the log level. DagProcessingLogs *ModuleLoggingConfiguration - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // The Airflow scheduler logs published to CloudWatch Logs and the log level. SchedulerLogs *ModuleLoggingConfiguration - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // The Airflow task logs published to CloudWatch Logs and the log level. TaskLogs *ModuleLoggingConfiguration - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // The Airflow web server logs published to CloudWatch Logs and the log level. WebserverLogs *ModuleLoggingConfiguration - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // The Airflow worker logs published to CloudWatch Logs and the log level. WorkerLogs *ModuleLoggingConfiguration noSmithyDocumentSerde } -// Defines the Apache Airflow logs to send to CloudWatch Logs: DagProcessingLogs, -// SchedulerLogs, TaskLogs, WebserverLogs, WorkerLogs. +// Defines the Apache Airflow log types to send to CloudWatch Logs. type LoggingConfigurationInput struct { - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // Publishes Airflow DAG processing logs to CloudWatch Logs. DagProcessingLogs *ModuleLoggingConfigurationInput - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // Publishes Airflow scheduler logs to CloudWatch Logs. SchedulerLogs *ModuleLoggingConfigurationInput - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // Publishes Airflow task logs to CloudWatch Logs. TaskLogs *ModuleLoggingConfigurationInput - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // Publishes Airflow web server logs to CloudWatch Logs. WebserverLogs *ModuleLoggingConfigurationInput - // Defines the type of logs to send for the Apache Airflow log type (e.g. - // DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. + // Publishes Airflow worker logs to CloudWatch Logs. WorkerLogs *ModuleLoggingConfigurationInput noSmithyDocumentSerde } -// Internal only API. +// Internal only. Collects Apache Airflow metrics. To learn more about the metrics +// published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon +// CloudWatch (https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html). type MetricDatum struct { - // Internal only API. + // Internal only. The name of the metric. // // This member is required. MetricName *string - // Internal only API. + // Internal only. The time the metric data was received. // // This member is required. Timestamp *time.Time - // Internal only API. + // Internal only. The dimensions associated with the metric. Dimensions []Dimension - // Internal only API. + // Internal only. The statistical values for the metric. StatisticValues *StatisticSet - // Unit + // Internal only. The unit used to store the metric. Unit Unit - // Internal only API. + // Internal only. The value for the metric. Value *float64 noSmithyDocumentSerde } -// Defines the type of logs to send for the Apache Airflow log type (e.g. -// DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. +// Describes the Apache Airflow log details for the log type (e.g. +// DagProcessingLogs). type ModuleLoggingConfiguration struct { // The Amazon Resource Name (ARN) for the CloudWatch Logs group where the Apache @@ -286,31 +281,27 @@ type ModuleLoggingConfiguration struct { // arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:*. CloudWatchLogGroupArn *string - // Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs) - // in CloudWatch Logs. + // Indicates whether the Apache Airflow log type (e.g. DagProcessingLogs) is + // enabled. Enabled *bool - // Defines the Apache Airflow logs to send for the log type (e.g. - // DagProcessingLogs) to CloudWatch Logs. Valid values: CRITICAL, ERROR, WARNING, - // INFO. + // The Apache Airflow log level for the log type (e.g. DagProcessingLogs). LogLevel LoggingLevel noSmithyDocumentSerde } -// Defines the type of logs to send for the Apache Airflow log type (e.g. -// DagProcessingLogs). Valid values: CloudWatchLogGroupArn, Enabled, LogLevel. +// Enables the Apache Airflow log type (e.g. DagProcessingLogs) and defines the log +// level to send to CloudWatch Logs (e.g. INFO). type ModuleLoggingConfigurationInput struct { - // Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs) - // in CloudWatch Logs. + // Indicates whether to enable the Apache Airflow log type (e.g. + // DagProcessingLogs). // // This member is required. Enabled *bool - // Defines the Apache Airflow logs to send for the log type (e.g. - // DagProcessingLogs) to CloudWatch Logs. Valid values: CRITICAL, ERROR, WARNING, - // INFO. + // Defines the Apache Airflow log level (e.g. INFO) to send to CloudWatch Logs. // // This member is required. LogLevel LoggingLevel @@ -318,46 +309,45 @@ type ModuleLoggingConfigurationInput struct { noSmithyDocumentSerde } -// The VPC networking components used to secure and enable network traffic between -// the AWS resources for your environment. To learn more, see About networking on -// Amazon MWAA +// Describes the VPC networking components used to secure and enable network +// traffic between the Amazon Web Services resources for your environment. To learn +// more, see About networking on Amazon MWAA // (https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html). type NetworkConfiguration struct { - // A list of 1 or more security group IDs. Accepts up to 5 security group IDs. A - // security group must be attached to the same VPC as the subnets. To learn more, - // see Security in your VPC on Amazon MWAA - // (https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html). + // A list of security group IDs. To learn more, see Security in your VPC on Amazon + // MWAA (https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html). SecurityGroupIds []string - // A list of 2 subnet IDs. Required to create an environment. Must be private - // subnets in two different availability zones. A subnet must be attached to the - // same VPC as the security group. + // A list of subnet IDs. To learn more, see About networking on Amazon MWAA + // (https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html). SubnetIds []string noSmithyDocumentSerde } -// Internal only API. +// Internal only. Represents a set of statistics that describe a specific metric. +// To learn more about the metrics published to Amazon CloudWatch, see Amazon MWAA +// performance metrics in Amazon CloudWatch +// (https://docs.aws.amazon.com/mwaa/latest/userguide/cw-metrics.html). type StatisticSet struct { - // Internal only API. + // Internal only. The maximum value of the sample set. Maximum *float64 - // Internal only API. + // Internal only. The minimum value of the sample set. Minimum *float64 - // Internal only API. + // Internal only. The number of samples used for the statistic set. SampleCount *int32 - // Internal only API. + // Internal only. The sum of values for the sample set. Sum *float64 noSmithyDocumentSerde } -// An object containing the error encountered with the last update: ErrorCode, -// ErrorMessage. +// Describes the error(s) encountered with the last update of the environment. type UpdateError struct { // The error code that corresponds to the error with the last update. @@ -369,15 +359,14 @@ type UpdateError struct { noSmithyDocumentSerde } -// The VPC networking components used to secure and enable network traffic between -// the AWS resources for your environment. To learn more, see About networking on -// Amazon MWAA +// Defines the VPC networking components used to secure and enable network traffic +// between the Amazon Web Services resources for your environment. To learn more, +// see About networking on Amazon MWAA // (https://docs.aws.amazon.com/mwaa/latest/userguide/networking-about.html). type UpdateNetworkConfigurationInput struct { - // A list of 1 or more security group IDs. Accepts up to 5 security group IDs. A - // security group must be attached to the same VPC as the subnets. To learn more, - // see Security in your VPC on Amazon MWAA + // A list of security group IDs. A security group must be attached to the same VPC + // as the subnets. To learn more, see Security in your VPC on Amazon MWAA // (https://docs.aws.amazon.com/mwaa/latest/userguide/vpc-security.html). // // This member is required. diff --git a/service/nimble/api_op_CreateStreamingSession.go b/service/nimble/api_op_CreateStreamingSession.go index 035b558c742..04dd45aaf52 100644 --- a/service/nimble/api_op_CreateStreamingSession.go +++ b/service/nimble/api_op_CreateStreamingSession.go @@ -47,7 +47,9 @@ type CreateStreamingSessionInput struct { // The launch profile ID. LaunchProfileId *string - // The user ID of the user that owns the streaming session. + // The user ID of the user that owns the streaming session. The user that owns the + // session will be logging into the session and interacting with the virtual + // workstation. OwnedBy *string // The ID of the streaming image. diff --git a/service/nimble/api_op_GetStreamingSession.go b/service/nimble/api_op_GetStreamingSession.go index 04f8e0acad4..5c8554396eb 100644 --- a/service/nimble/api_op_GetStreamingSession.go +++ b/service/nimble/api_op_GetStreamingSession.go @@ -16,7 +16,7 @@ import ( "time" ) -// Gets StreamingSession resource. anvoke this operation to poll for a streaming +// Gets StreamingSession resource. Invoke this operation to poll for a streaming // session state while creating or deleting a session. func (c *Client) GetStreamingSession(ctx context.Context, params *GetStreamingSessionInput, optFns ...func(*Options)) (*GetStreamingSessionOutput, error) { if params == nil { diff --git a/service/nimble/api_op_ListLaunchProfiles.go b/service/nimble/api_op_ListLaunchProfiles.go index 3658f6c4f81..420591ded2b 100644 --- a/service/nimble/api_op_ListLaunchProfiles.go +++ b/service/nimble/api_op_ListLaunchProfiles.go @@ -45,7 +45,7 @@ type ListLaunchProfilesInput struct { PrincipalId *string // Filter this request to launch profiles in any of the given states. - States []string + States []types.LaunchProfileState noSmithyDocumentSerde } diff --git a/service/nimble/api_op_ListStudioComponents.go b/service/nimble/api_op_ListStudioComponents.go index 3f8ba99d5e0..c068fb9bf50 100644 --- a/service/nimble/api_op_ListStudioComponents.go +++ b/service/nimble/api_op_ListStudioComponents.go @@ -42,10 +42,10 @@ type ListStudioComponentsInput struct { NextToken *string // Filters the request to studio components that are in one of the given states. - States []string + States []types.StudioComponentState // Filters the request to studio components that are of one of the given types. - Types []string + Types []types.StudioComponentType noSmithyDocumentSerde } diff --git a/service/nimble/deserializers.go b/service/nimble/deserializers.go index 72f136fa533..c73ca1942ef 100644 --- a/service/nimble/deserializers.go +++ b/service/nimble/deserializers.go @@ -8611,6 +8611,11 @@ func awsRestjson1_deserializeDocumentLaunchProfile(v **types.LaunchProfile, valu sv.UpdatedBy = ptr.String(jtv) } + case "validationResults": + if err := awsRestjson1_deserializeDocumentValidationResults(&sv.ValidationResults, value); err != nil { + return err + } + default: _, _ = key, value @@ -11377,3 +11382,104 @@ func awsRestjson1_deserializeDocumentValidationException(v **types.ValidationExc *v = sv return nil } + +func awsRestjson1_deserializeDocumentValidationResult(v **types.ValidationResult, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.ValidationResult + if *v == nil { + sv = &types.ValidationResult{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "state": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LaunchProfileValidationState to be of type string, got %T instead", value) + } + sv.State = types.LaunchProfileValidationState(jtv) + } + + case "statusCode": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LaunchProfileValidationStatusCode to be of type string, got %T instead", value) + } + sv.StatusCode = types.LaunchProfileValidationStatusCode(jtv) + } + + case "statusMessage": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LaunchProfileValidationStatusMessage to be of type string, got %T instead", value) + } + sv.StatusMessage = ptr.String(jtv) + } + + case "type": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LaunchProfileValidationType to be of type string, got %T instead", value) + } + sv.Type = types.LaunchProfileValidationType(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentValidationResults(v *[]types.ValidationResult, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.ValidationResult + if *v == nil { + cv = []types.ValidationResult{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.ValidationResult + destAddr := &col + if err := awsRestjson1_deserializeDocumentValidationResult(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} diff --git a/service/nimble/serializers.go b/service/nimble/serializers.go index a3a1f3549c7..137505ccf29 100644 --- a/service/nimble/serializers.go +++ b/service/nimble/serializers.go @@ -2293,7 +2293,7 @@ func awsRestjson1_serializeOpHttpBindingsListLaunchProfilesInput(v *ListLaunchPr if v.States != nil { for i := range v.States { - encoder.AddQuery("states").String(v.States[i]) + encoder.AddQuery("states").String(string(v.States[i])) } } @@ -2505,7 +2505,7 @@ func awsRestjson1_serializeOpHttpBindingsListStudioComponentsInput(v *ListStudio if v.States != nil { for i := range v.States { - encoder.AddQuery("states").String(v.States[i]) + encoder.AddQuery("states").String(string(v.States[i])) } } @@ -2520,7 +2520,7 @@ func awsRestjson1_serializeOpHttpBindingsListStudioComponentsInput(v *ListStudio if v.Types != nil { for i := range v.Types { - encoder.AddQuery("types").String(v.Types[i]) + encoder.AddQuery("types").String(string(v.Types[i])) } } diff --git a/service/nimble/types/enums.go b/service/nimble/types/enums.go index 6320a26ce27..d92711603f6 100644 --- a/service/nimble/types/enums.go +++ b/service/nimble/types/enums.go @@ -106,6 +106,85 @@ func (LaunchProfileStatusCode) Values() []LaunchProfileStatusCode { } } +type LaunchProfileValidationState string + +// Enum values for LaunchProfileValidationState +const ( + LaunchProfileValidationStateValidationNotStarted LaunchProfileValidationState = "VALIDATION_NOT_STARTED" + LaunchProfileValidationStateValidationInProgress LaunchProfileValidationState = "VALIDATION_IN_PROGRESS" + LaunchProfileValidationStateValidationSuccess LaunchProfileValidationState = "VALIDATION_SUCCESS" + LaunchProfileValidationStateValidationFailed LaunchProfileValidationState = "VALIDATION_FAILED" + LaunchProfileValidationStateValidationFailedInternalServerError LaunchProfileValidationState = "VALIDATION_FAILED_INTERNAL_SERVER_ERROR" +) + +// Values returns all known values for LaunchProfileValidationState. Note that this +// can be expanded in the future, and so it is only as up to date as the client. +// The ordering of this slice is not guaranteed to be stable across updates. +func (LaunchProfileValidationState) Values() []LaunchProfileValidationState { + return []LaunchProfileValidationState{ + "VALIDATION_NOT_STARTED", + "VALIDATION_IN_PROGRESS", + "VALIDATION_SUCCESS", + "VALIDATION_FAILED", + "VALIDATION_FAILED_INTERNAL_SERVER_ERROR", + } +} + +type LaunchProfileValidationStatusCode string + +// Enum values for LaunchProfileValidationStatusCode +const ( + LaunchProfileValidationStatusCodeValidationNotStarted LaunchProfileValidationStatusCode = "VALIDATION_NOT_STARTED" + LaunchProfileValidationStatusCodeValidationInProgress LaunchProfileValidationStatusCode = "VALIDATION_IN_PROGRESS" + LaunchProfileValidationStatusCodeValidationSuccess LaunchProfileValidationStatusCode = "VALIDATION_SUCCESS" + LaunchProfileValidationStatusCodeValidationFailedInvalidSubnetRouteTableAssociation LaunchProfileValidationStatusCode = "VALIDATION_FAILED_INVALID_SUBNET_ROUTE_TABLE_ASSOCIATION" + LaunchProfileValidationStatusCodeValidationFailedSubnetNotFound LaunchProfileValidationStatusCode = "VALIDATION_FAILED_SUBNET_NOT_FOUND" + LaunchProfileValidationStatusCodeValidationFailedInvalidSecurityGroupAssociation LaunchProfileValidationStatusCode = "VALIDATION_FAILED_INVALID_SECURITY_GROUP_ASSOCIATION" + LaunchProfileValidationStatusCodeValidationFailedInvalidActiveDirectory LaunchProfileValidationStatusCode = "VALIDATION_FAILED_INVALID_ACTIVE_DIRECTORY" + LaunchProfileValidationStatusCodeValidationFailedUnauthorized LaunchProfileValidationStatusCode = "VALIDATION_FAILED_UNAUTHORIZED" + LaunchProfileValidationStatusCodeValidationFailedInternalServerError LaunchProfileValidationStatusCode = "VALIDATION_FAILED_INTERNAL_SERVER_ERROR" +) + +// Values returns all known values for LaunchProfileValidationStatusCode. Note that +// this can be expanded in the future, and so it is only as up to date as the +// client. The ordering of this slice is not guaranteed to be stable across +// updates. +func (LaunchProfileValidationStatusCode) Values() []LaunchProfileValidationStatusCode { + return []LaunchProfileValidationStatusCode{ + "VALIDATION_NOT_STARTED", + "VALIDATION_IN_PROGRESS", + "VALIDATION_SUCCESS", + "VALIDATION_FAILED_INVALID_SUBNET_ROUTE_TABLE_ASSOCIATION", + "VALIDATION_FAILED_SUBNET_NOT_FOUND", + "VALIDATION_FAILED_INVALID_SECURITY_GROUP_ASSOCIATION", + "VALIDATION_FAILED_INVALID_ACTIVE_DIRECTORY", + "VALIDATION_FAILED_UNAUTHORIZED", + "VALIDATION_FAILED_INTERNAL_SERVER_ERROR", + } +} + +type LaunchProfileValidationType string + +// Enum values for LaunchProfileValidationType +const ( + LaunchProfileValidationTypeValidateActiveDirectoryStudioComponent LaunchProfileValidationType = "VALIDATE_ACTIVE_DIRECTORY_STUDIO_COMPONENT" + LaunchProfileValidationTypeValidateSubnetAssociation LaunchProfileValidationType = "VALIDATE_SUBNET_ASSOCIATION" + LaunchProfileValidationTypeValidateNetworkAclAssociation LaunchProfileValidationType = "VALIDATE_NETWORK_ACL_ASSOCIATION" + LaunchProfileValidationTypeValidateSecurityGroupAssociation LaunchProfileValidationType = "VALIDATE_SECURITY_GROUP_ASSOCIATION" +) + +// Values returns all known values for LaunchProfileValidationType. Note that this +// can be expanded in the future, and so it is only as up to date as the client. +// The ordering of this slice is not guaranteed to be stable across updates. +func (LaunchProfileValidationType) Values() []LaunchProfileValidationType { + return []LaunchProfileValidationType{ + "VALIDATE_ACTIVE_DIRECTORY_STUDIO_COMPONENT", + "VALIDATE_SUBNET_ASSOCIATION", + "VALIDATE_NETWORK_ACL_ASSOCIATION", + "VALIDATE_SECURITY_GROUP_ASSOCIATION", + } +} + type StreamingClipboardMode string // Enum values for StreamingClipboardMode @@ -280,6 +359,7 @@ const ( StreamingSessionStatusCodeStreamingSessionStarted StreamingSessionStatusCode = "STREAMING_SESSION_STARTED" StreamingSessionStatusCodeStreamingSessionStopInProgress StreamingSessionStatusCode = "STREAMING_SESSION_STOP_IN_PROGRESS" StreamingSessionStatusCodeStreamingSessionStartInProgress StreamingSessionStatusCode = "STREAMING_SESSION_START_IN_PROGRESS" + StreamingSessionStatusCodeAmiValidationError StreamingSessionStatusCode = "AMI_VALIDATION_ERROR" ) // Values returns all known values for StreamingSessionStatusCode. Note that this @@ -302,6 +382,7 @@ func (StreamingSessionStatusCode) Values() []StreamingSessionStatusCode { "STREAMING_SESSION_STARTED", "STREAMING_SESSION_STOP_IN_PROGRESS", "STREAMING_SESSION_START_IN_PROGRESS", + "AMI_VALIDATION_ERROR", } } diff --git a/service/nimble/types/types.go b/service/nimble/types/types.go index 4a6e04d387e..29c14d1c621 100644 --- a/service/nimble/types/types.go +++ b/service/nimble/types/types.go @@ -154,6 +154,9 @@ type LaunchProfile struct { // The user ID of the user that most recently updated the resource. UpdatedBy *string + // The list of the latest validation results. + ValidationResults []ValidationResult + noSmithyDocumentSerde } @@ -546,7 +549,9 @@ type StreamingSession struct { // The ID of the launch profile used to control access from the streaming session. LaunchProfileId *string - // The user ID of the user that owns the streaming session. + // The user ID of the user that owns the streaming session. The user that owns the + // session will be logging into the session and interacting with the virtual + // workstation. OwnedBy *string // The session ID. @@ -601,12 +606,10 @@ type StreamingSession struct { // are uploaded. type StreamingSessionStorageRoot struct { - // The folder path in Linux workstations where files are uploaded. The default path - // is $HOME/Downloads. + // The folder path in Linux workstations where files are uploaded. Linux *string - // The folder path in Windows workstations where files are uploaded. The default - // path is %HOMEPATH%\Downloads. + // The folder path in Windows workstations where files are uploaded. Windows *string noSmithyDocumentSerde @@ -627,7 +630,9 @@ type StreamingSessionStream struct { // The Unix epoch timestamp in seconds for when the resource expires. ExpiresAt *time.Time - // The user ID of the user that owns the streaming session. + // The user ID of the user that owns the streaming session. The user that owns the + // session will be logging into the session and interacting with the virtual + // workstation. OwnedBy *string // The current state. @@ -899,4 +904,31 @@ type StudioMembership struct { noSmithyDocumentSerde } +// The launch profile validation result. +type ValidationResult struct { + + // The current state. + // + // This member is required. + State LaunchProfileValidationState + + // The status code. This will contain the failure reason if the state is + // VALIDATION_FAILED. + // + // This member is required. + StatusCode LaunchProfileValidationStatusCode + + // The status message for the validation result. + // + // This member is required. + StatusMessage *string + + // The type of the validation result. + // + // This member is required. + Type LaunchProfileValidationType + + noSmithyDocumentSerde +} + type noSmithyDocumentSerde = smithydocument.NoSerde diff --git a/service/opensearch/deserializers.go b/service/opensearch/deserializers.go index 3b459642ec4..78c42f57ecb 100644 --- a/service/opensearch/deserializers.go +++ b/service/opensearch/deserializers.go @@ -6911,6 +6911,31 @@ func awsRestjson1_deserializeDocumentAdvancedSecurityOptions(v **types.AdvancedS for key, value := range shape { switch key { + case "AnonymousAuthDisableDate": + if value != nil { + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + sv.AnonymousAuthDisableDate = ptr.Time(smithytime.ParseEpochSeconds(f64)) + + default: + return fmt.Errorf("expected DisableTimestamp to be a JSON Number, got %T instead", value) + + } + } + + case "AnonymousAuthEnabled": + if value != nil { + jtv, ok := value.(bool) + if !ok { + return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value) + } + sv.AnonymousAuthEnabled = ptr.Bool(jtv) + } + case "Enabled": if value != nil { jtv, ok := value.(bool) diff --git a/service/opensearch/serializers.go b/service/opensearch/serializers.go index bfb9fc285e7..f25aa4cc9eb 100644 --- a/service/opensearch/serializers.go +++ b/service/opensearch/serializers.go @@ -2865,6 +2865,11 @@ func awsRestjson1_serializeDocumentAdvancedSecurityOptionsInput(v *types.Advance object := value.Object() defer object.Close() + if v.AnonymousAuthEnabled != nil { + ok := object.Key("AnonymousAuthEnabled") + ok.Boolean(*v.AnonymousAuthEnabled) + } + if v.Enabled != nil { ok := object.Key("Enabled") ok.Boolean(*v.Enabled) diff --git a/service/opensearch/types/types.go b/service/opensearch/types/types.go index d9f3c6b3155..73b167f5e3f 100644 --- a/service/opensearch/types/types.go +++ b/service/opensearch/types/types.go @@ -90,6 +90,13 @@ type AdvancedOptionsStatus struct { // whether the internal database option is enabled. type AdvancedSecurityOptions struct { + // Specifies the Anonymous Auth Disable Date when Anonymous Auth is enabled. + AnonymousAuthDisableDate *time.Time + + // True if Anonymous auth is enabled. Anonymous auth can be enabled only when + // AdvancedSecurity is enabled on existing domains. + AnonymousAuthEnabled *bool + // True if advanced security is enabled. Enabled *bool @@ -107,6 +114,10 @@ type AdvancedSecurityOptions struct { // (if internal database is enabled), and master user ARN (if IAM is enabled). type AdvancedSecurityOptionsInput struct { + // True if Anonymous auth is enabled. Anonymous auth can be enabled only when + // AdvancedSecurity is enabled on existing domains. + AnonymousAuthEnabled *bool + // True if advanced security is enabled. Enabled *bool diff --git a/service/pi/api_op_DescribeDimensionKeys.go b/service/pi/api_op_DescribeDimensionKeys.go index ba187fdcec2..2a0d38be8a2 100644 --- a/service/pi/api_op_DescribeDimensionKeys.go +++ b/service/pi/api_op_DescribeDimensionKeys.go @@ -4,6 +4,7 @@ package pi import ( "context" + "fmt" awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" "github.com/aws/aws-sdk-go-v2/aws/signer/v4" "github.com/aws/aws-sdk-go-v2/service/pi/types" @@ -49,10 +50,10 @@ type DescribeDimensionKeysInput struct { // This member is required. GroupBy *types.DimensionGroup - // An immutable, AWS Region-unique identifier for a data source. Performance - // Insights gathers metrics from this data source. To use an Amazon RDS instance as - // a data source, you specify its DbiResourceId value. For example, specify - // db-FAIHNTYBKTGAUSUZQYPDS2GW4A + // An immutable, Amazon Web Services Region-unique identifier for a data source. + // Performance Insights gathers metrics from this data source. To use an Amazon RDS + // instance as a data source, you specify its DbiResourceId value. For example, + // specify db-FAIHNTYBKTGAUSUZQYPDS2GW4A. // // This member is required. Identifier *string @@ -77,8 +78,8 @@ type DescribeDimensionKeysInput struct { // This member is required. Metric *string - // The AWS service for which Performance Insights will return metrics. The only - // valid value for ServiceType is RDS. + // The Amazon Web Services service for which Performance Insights will return + // metrics. The only valid value for ServiceType is RDS. // // This member is required. ServiceType types.ServiceType @@ -91,6 +92,12 @@ type DescribeDimensionKeysInput struct { // This member is required. StartTime *time.Time + // Additional metrics for the top N dimension keys. If the specified dimension + // group in the GroupBy parameter is db.sql_tokenized, you can specify per-SQL + // metrics to get the values for the top N SQL digests. The response syntax is + // "AdditionalMetrics" : { "string" : "string" }. + AdditionalMetrics []string + // One or more filters to apply in the request. Restrictions: // // * Any number of @@ -152,9 +159,9 @@ type DescribeDimensionKeysOutput struct { // The dimension keys that were requested. Keys []types.DimensionKeyDescription - // An optional pagination token provided by a previous request. If this parameter - // is specified, the response includes only records beyond the token, up to the - // value specified by MaxRecords. + // A pagination token that indicates the response didn’t return all available + // records because MaxRecords was specified in the previous request. To get the + // remaining records, specify NextToken in a separate request with this value. NextToken *string // If PartitionBy was present in the request, PartitionKeys contains the breakdown @@ -230,6 +237,99 @@ func (c *Client) addOperationDescribeDimensionKeysMiddlewares(stack *middleware. return nil } +// DescribeDimensionKeysAPIClient is a client that implements the +// DescribeDimensionKeys operation. +type DescribeDimensionKeysAPIClient interface { + DescribeDimensionKeys(context.Context, *DescribeDimensionKeysInput, ...func(*Options)) (*DescribeDimensionKeysOutput, error) +} + +var _ DescribeDimensionKeysAPIClient = (*Client)(nil) + +// DescribeDimensionKeysPaginatorOptions is the paginator options for +// DescribeDimensionKeys +type DescribeDimensionKeysPaginatorOptions struct { + // The maximum number of items to return in the response. If more items exist than + // the specified MaxRecords value, a pagination token is included in the response + // so that the remaining results can be retrieved. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// DescribeDimensionKeysPaginator is a paginator for DescribeDimensionKeys +type DescribeDimensionKeysPaginator struct { + options DescribeDimensionKeysPaginatorOptions + client DescribeDimensionKeysAPIClient + params *DescribeDimensionKeysInput + nextToken *string + firstPage bool +} + +// NewDescribeDimensionKeysPaginator returns a new DescribeDimensionKeysPaginator +func NewDescribeDimensionKeysPaginator(client DescribeDimensionKeysAPIClient, params *DescribeDimensionKeysInput, optFns ...func(*DescribeDimensionKeysPaginatorOptions)) *DescribeDimensionKeysPaginator { + if params == nil { + params = &DescribeDimensionKeysInput{} + } + + options := DescribeDimensionKeysPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &DescribeDimensionKeysPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *DescribeDimensionKeysPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next DescribeDimensionKeys page. +func (p *DescribeDimensionKeysPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*DescribeDimensionKeysOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.DescribeDimensionKeys(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + func newServiceMetadataMiddleware_opDescribeDimensionKeys(region string) *awsmiddleware.RegisterServiceMetadata { return &awsmiddleware.RegisterServiceMetadata{ Region: region, diff --git a/service/pi/api_op_GetDimensionKeyDetails.go b/service/pi/api_op_GetDimensionKeyDetails.go index 98f7cd8ce60..3d1a64ca001 100644 --- a/service/pi/api_op_GetDimensionKeyDetails.go +++ b/service/pi/api_op_GetDimensionKeyDetails.go @@ -13,7 +13,7 @@ import ( // Get the attributes of the specified dimension group for a DB instance or data // source. For example, if you specify a SQL ID, GetDimensionKeyDetails retrieves -// the full text of the dimension db.sql.statement associated with this ID. This +// the full text of the dimension db.sql.statementcassociated with this ID. This // operation is useful because GetResourceMetrics and DescribeDimensionKeys don't // support retrieval of large SQL statement text. func (c *Client) GetDimensionKeyDetails(ctx context.Context, params *GetDimensionKeyDetailsInput, optFns ...func(*Options)) (*GetDimensionKeyDetailsOutput, error) { @@ -46,15 +46,15 @@ type GetDimensionKeyDetailsInput struct { GroupIdentifier *string // The ID for a data source from which to gather dimension data. This ID must be - // immutable and unique within an AWS Region. When a DB instance is the data - // source, specify its DbiResourceId value. For example, specify + // immutable and unique within an Amazon Web Services Region. When a DB instance is + // the data source, specify its DbiResourceId value. For example, specify // db-ABCDEFGHIJKLMNOPQRSTU1VW2X. // // This member is required. Identifier *string - // The AWS service for which Performance Insights returns data. The only valid - // value is RDS. + // The Amazon Web Services service for which Performance Insights returns data. The + // only valid value is RDS. // // This member is required. ServiceType types.ServiceType diff --git a/service/pi/api_op_GetResourceMetadata.go b/service/pi/api_op_GetResourceMetadata.go new file mode 100644 index 00000000000..70f0f750a7b --- /dev/null +++ b/service/pi/api_op_GetResourceMetadata.go @@ -0,0 +1,137 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package pi + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/pi/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Retrieve the metadata for different features. For example, the metadata might +// indicate that a feature is turned on or off on a specific DB instance. +func (c *Client) GetResourceMetadata(ctx context.Context, params *GetResourceMetadataInput, optFns ...func(*Options)) (*GetResourceMetadataOutput, error) { + if params == nil { + params = &GetResourceMetadataInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "GetResourceMetadata", params, optFns, c.addOperationGetResourceMetadataMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*GetResourceMetadataOutput) + out.ResultMetadata = metadata + return out, nil +} + +type GetResourceMetadataInput struct { + + // An immutable identifier for a data source that is unique for an Amazon Web + // Services Region. Performance Insights gathers metrics from this data source. To + // use a DB instance as a data source, specify its DbiResourceId value. For + // example, specify db-ABCDEFGHIJKLMNOPQRSTU1VW2X. + // + // This member is required. + Identifier *string + + // The Amazon Web Services service for which Performance Insights returns metrics. + // + // This member is required. + ServiceType types.ServiceType + + noSmithyDocumentSerde +} + +type GetResourceMetadataOutput struct { + + // The metadata for different features. For example, the metadata might indicate + // that a feature is turned on or off on a specific DB instance. + Features map[string]types.FeatureMetadata + + // An immutable identifier for a data source that is unique for an Amazon Web + // Services Region. Performance Insights gathers metrics from this data source. To + // use a DB instance as a data source, specify its DbiResourceId value. For + // example, specify db-ABCDEFGHIJKLMNOPQRSTU1VW2X. + Identifier *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationGetResourceMetadataMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsAwsjson11_serializeOpGetResourceMetadata{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpGetResourceMetadata{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpGetResourceMetadataValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetResourceMetadata(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opGetResourceMetadata(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "pi", + OperationName: "GetResourceMetadata", + } +} diff --git a/service/pi/api_op_GetResourceMetrics.go b/service/pi/api_op_GetResourceMetrics.go index 809eb8c0a6c..de92dc68102 100644 --- a/service/pi/api_op_GetResourceMetrics.go +++ b/service/pi/api_op_GetResourceMetrics.go @@ -4,6 +4,7 @@ package pi import ( "context" + "fmt" awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" "github.com/aws/aws-sdk-go-v2/aws/signer/v4" "github.com/aws/aws-sdk-go-v2/service/pi/types" @@ -42,9 +43,9 @@ type GetResourceMetricsInput struct { // This member is required. EndTime *time.Time - // An immutable, AWS Region-unique identifier for a data source. Performance - // Insights gathers metrics from this data source. To use a DB instance as a data - // source, specify its DbiResourceId value. For example, specify + // An immutable, Amazon Web Services Region-unique identifier for a data source. + // Performance Insights gathers metrics from this data source. To use a DB instance + // as a data source, specify its DbiResourceId value. For example, specify // db-FAIHNTYBKTGAUSUZQYPDS2GW4A. // // This member is required. @@ -57,8 +58,8 @@ type GetResourceMetricsInput struct { // This member is required. MetricQueries []types.MetricQuery - // The AWS service for which Performance Insights returns metrics. The only valid - // value for ServiceType is RDS. + // The Amazon Web Services service for which Performance Insights returns metrics. + // The only valid value for ServiceType is RDS. // // This member is required. ServiceType types.ServiceType @@ -116,9 +117,9 @@ type GetResourceMetricsOutput struct { // to the value of the user-specified StartTime. AlignedStartTime *time.Time - // An immutable, AWS Region-unique identifier for a data source. Performance - // Insights gathers metrics from this data source. To use a DB instance as a data - // source, you specify its DbiResourceId value - for example: + // An immutable, Amazon Web Services Region-unique identifier for a data source. + // Performance Insights gathers metrics from this data source. To use a DB instance + // as a data source, you specify its DbiResourceId value - for example: // db-FAIHNTYBKTGAUSUZQYPDS2GW4A Identifier *string @@ -200,6 +201,99 @@ func (c *Client) addOperationGetResourceMetricsMiddlewares(stack *middleware.Sta return nil } +// GetResourceMetricsAPIClient is a client that implements the GetResourceMetrics +// operation. +type GetResourceMetricsAPIClient interface { + GetResourceMetrics(context.Context, *GetResourceMetricsInput, ...func(*Options)) (*GetResourceMetricsOutput, error) +} + +var _ GetResourceMetricsAPIClient = (*Client)(nil) + +// GetResourceMetricsPaginatorOptions is the paginator options for +// GetResourceMetrics +type GetResourceMetricsPaginatorOptions struct { + // The maximum number of items to return in the response. If more items exist than + // the specified MaxRecords value, a pagination token is included in the response + // so that the remaining results can be retrieved. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// GetResourceMetricsPaginator is a paginator for GetResourceMetrics +type GetResourceMetricsPaginator struct { + options GetResourceMetricsPaginatorOptions + client GetResourceMetricsAPIClient + params *GetResourceMetricsInput + nextToken *string + firstPage bool +} + +// NewGetResourceMetricsPaginator returns a new GetResourceMetricsPaginator +func NewGetResourceMetricsPaginator(client GetResourceMetricsAPIClient, params *GetResourceMetricsInput, optFns ...func(*GetResourceMetricsPaginatorOptions)) *GetResourceMetricsPaginator { + if params == nil { + params = &GetResourceMetricsInput{} + } + + options := GetResourceMetricsPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &GetResourceMetricsPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *GetResourceMetricsPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next GetResourceMetrics page. +func (p *GetResourceMetricsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*GetResourceMetricsOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.GetResourceMetrics(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + func newServiceMetadataMiddleware_opGetResourceMetrics(region string) *awsmiddleware.RegisterServiceMetadata { return &awsmiddleware.RegisterServiceMetadata{ Region: region, diff --git a/service/pi/api_op_ListAvailableResourceDimensions.go b/service/pi/api_op_ListAvailableResourceDimensions.go new file mode 100644 index 00000000000..2e4b0b4c4d3 --- /dev/null +++ b/service/pi/api_op_ListAvailableResourceDimensions.go @@ -0,0 +1,247 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package pi + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/pi/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Retrieve the dimensions that can be queried for each specified metric type on a +// specified DB instance. +func (c *Client) ListAvailableResourceDimensions(ctx context.Context, params *ListAvailableResourceDimensionsInput, optFns ...func(*Options)) (*ListAvailableResourceDimensionsOutput, error) { + if params == nil { + params = &ListAvailableResourceDimensionsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ListAvailableResourceDimensions", params, optFns, c.addOperationListAvailableResourceDimensionsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ListAvailableResourceDimensionsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ListAvailableResourceDimensionsInput struct { + + // An immutable identifier for a data source that is unique within an Amazon Web + // Services Region. Performance Insights gathers metrics from this data source. To + // use an Amazon RDS DB instance as a data source, specify its DbiResourceId value. + // For example, specify db-ABCDEFGHIJKLMNOPQRSTU1VWZ. + // + // This member is required. + Identifier *string + + // The types of metrics for which to retrieve dimensions. Valid values include + // db.load. + // + // This member is required. + Metrics []string + + // The Amazon Web Services service for which Performance Insights returns metrics. + // + // This member is required. + ServiceType types.ServiceType + + // The maximum number of items to return in the response. If more items exist than + // the specified MaxRecords value, a pagination token is included in the response + // so that the remaining results can be retrieved. + MaxResults *int32 + + // An optional pagination token provided by a previous request. If this parameter + // is specified, the response includes only records beyond the token, up to the + // value specified by MaxRecords. + NextToken *string + + noSmithyDocumentSerde +} + +type ListAvailableResourceDimensionsOutput struct { + + // The dimension information returned for requested metric types. + MetricDimensions []types.MetricDimensionGroups + + // An optional pagination token provided by a previous request. If this parameter + // is specified, the response includes only records beyond the token, up to the + // value specified by MaxRecords. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationListAvailableResourceDimensionsMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsAwsjson11_serializeOpListAvailableResourceDimensions{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpListAvailableResourceDimensions{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpListAvailableResourceDimensionsValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListAvailableResourceDimensions(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +// ListAvailableResourceDimensionsAPIClient is a client that implements the +// ListAvailableResourceDimensions operation. +type ListAvailableResourceDimensionsAPIClient interface { + ListAvailableResourceDimensions(context.Context, *ListAvailableResourceDimensionsInput, ...func(*Options)) (*ListAvailableResourceDimensionsOutput, error) +} + +var _ ListAvailableResourceDimensionsAPIClient = (*Client)(nil) + +// ListAvailableResourceDimensionsPaginatorOptions is the paginator options for +// ListAvailableResourceDimensions +type ListAvailableResourceDimensionsPaginatorOptions struct { + // The maximum number of items to return in the response. If more items exist than + // the specified MaxRecords value, a pagination token is included in the response + // so that the remaining results can be retrieved. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// ListAvailableResourceDimensionsPaginator is a paginator for +// ListAvailableResourceDimensions +type ListAvailableResourceDimensionsPaginator struct { + options ListAvailableResourceDimensionsPaginatorOptions + client ListAvailableResourceDimensionsAPIClient + params *ListAvailableResourceDimensionsInput + nextToken *string + firstPage bool +} + +// NewListAvailableResourceDimensionsPaginator returns a new +// ListAvailableResourceDimensionsPaginator +func NewListAvailableResourceDimensionsPaginator(client ListAvailableResourceDimensionsAPIClient, params *ListAvailableResourceDimensionsInput, optFns ...func(*ListAvailableResourceDimensionsPaginatorOptions)) *ListAvailableResourceDimensionsPaginator { + if params == nil { + params = &ListAvailableResourceDimensionsInput{} + } + + options := ListAvailableResourceDimensionsPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &ListAvailableResourceDimensionsPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *ListAvailableResourceDimensionsPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next ListAvailableResourceDimensions page. +func (p *ListAvailableResourceDimensionsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListAvailableResourceDimensionsOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.ListAvailableResourceDimensions(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +func newServiceMetadataMiddleware_opListAvailableResourceDimensions(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "pi", + OperationName: "ListAvailableResourceDimensions", + } +} diff --git a/service/pi/api_op_ListAvailableResourceMetrics.go b/service/pi/api_op_ListAvailableResourceMetrics.go new file mode 100644 index 00000000000..77a7a0ef4d8 --- /dev/null +++ b/service/pi/api_op_ListAvailableResourceMetrics.go @@ -0,0 +1,256 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package pi + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/pi/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Retrieve metrics of the specified types that can be queried for a specified DB +// instance. +func (c *Client) ListAvailableResourceMetrics(ctx context.Context, params *ListAvailableResourceMetricsInput, optFns ...func(*Options)) (*ListAvailableResourceMetricsOutput, error) { + if params == nil { + params = &ListAvailableResourceMetricsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ListAvailableResourceMetrics", params, optFns, c.addOperationListAvailableResourceMetricsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ListAvailableResourceMetricsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ListAvailableResourceMetricsInput struct { + + // An immutable identifier for a data source that is unique within an Amazon Web + // Services Region. Performance Insights gathers metrics from this data source. To + // use an Amazon RDS DB instance as a data source, specify its DbiResourceId value. + // For example, specify db-ABCDEFGHIJKLMNOPQRSTU1VWZ. + // + // This member is required. + Identifier *string + + // The types of metrics to return in the response. Valid values in the array + // include the following: + // + // * os (OS counter metrics) + // + // * db (DB load metrics) + // + // * + // db.sql.stats (per-SQL metrics) + // + // * db.sql_tokenized.stats (per-SQL digest + // metrics) + // + // This member is required. + MetricTypes []string + + // The Amazon Web Services service for which Performance Insights returns metrics. + // + // This member is required. + ServiceType types.ServiceType + + // The maximum number of items to return. If the MaxRecords value is less than the + // number of existing items, the response includes a pagination token. + MaxResults *int32 + + // An optional pagination token provided by a previous request. If this parameter + // is specified, the response includes only records beyond the token, up to the + // value specified by MaxRecords. + NextToken *string + + noSmithyDocumentSerde +} + +type ListAvailableResourceMetricsOutput struct { + + // An array of metrics available to query. Each array element contains the full + // name, description, and unit of the metric. + Metrics []types.ResponseResourceMetric + + // A pagination token that indicates the response didn’t return all available + // records because MaxRecords was specified in the previous request. To get the + // remaining records, specify NextToken in a separate request with this value. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationListAvailableResourceMetricsMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsAwsjson11_serializeOpListAvailableResourceMetrics{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpListAvailableResourceMetrics{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpListAvailableResourceMetricsValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListAvailableResourceMetrics(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +// ListAvailableResourceMetricsAPIClient is a client that implements the +// ListAvailableResourceMetrics operation. +type ListAvailableResourceMetricsAPIClient interface { + ListAvailableResourceMetrics(context.Context, *ListAvailableResourceMetricsInput, ...func(*Options)) (*ListAvailableResourceMetricsOutput, error) +} + +var _ ListAvailableResourceMetricsAPIClient = (*Client)(nil) + +// ListAvailableResourceMetricsPaginatorOptions is the paginator options for +// ListAvailableResourceMetrics +type ListAvailableResourceMetricsPaginatorOptions struct { + // The maximum number of items to return. If the MaxRecords value is less than the + // number of existing items, the response includes a pagination token. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// ListAvailableResourceMetricsPaginator is a paginator for +// ListAvailableResourceMetrics +type ListAvailableResourceMetricsPaginator struct { + options ListAvailableResourceMetricsPaginatorOptions + client ListAvailableResourceMetricsAPIClient + params *ListAvailableResourceMetricsInput + nextToken *string + firstPage bool +} + +// NewListAvailableResourceMetricsPaginator returns a new +// ListAvailableResourceMetricsPaginator +func NewListAvailableResourceMetricsPaginator(client ListAvailableResourceMetricsAPIClient, params *ListAvailableResourceMetricsInput, optFns ...func(*ListAvailableResourceMetricsPaginatorOptions)) *ListAvailableResourceMetricsPaginator { + if params == nil { + params = &ListAvailableResourceMetricsInput{} + } + + options := ListAvailableResourceMetricsPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &ListAvailableResourceMetricsPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *ListAvailableResourceMetricsPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next ListAvailableResourceMetrics page. +func (p *ListAvailableResourceMetricsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListAvailableResourceMetricsOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.ListAvailableResourceMetrics(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +func newServiceMetadataMiddleware_opListAvailableResourceMetrics(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "pi", + OperationName: "ListAvailableResourceMetrics", + } +} diff --git a/service/pi/deserializers.go b/service/pi/deserializers.go index bd4da836388..0fc94f6a21d 100644 --- a/service/pi/deserializers.go +++ b/service/pi/deserializers.go @@ -254,6 +254,123 @@ func awsAwsjson11_deserializeOpErrorGetDimensionKeyDetails(response *smithyhttp. } } +type awsAwsjson11_deserializeOpGetResourceMetadata struct { +} + +func (*awsAwsjson11_deserializeOpGetResourceMetadata) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsjson11_deserializeOpGetResourceMetadata) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsjson11_deserializeOpErrorGetResourceMetadata(response, &metadata) + } + output := &GetResourceMetadataOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsAwsjson11_deserializeOpDocumentGetResourceMetadataOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsjson11_deserializeOpErrorGetResourceMetadata(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("InternalServiceError", errorCode): + return awsAwsjson11_deserializeErrorInternalServiceError(response, errorBody) + + case strings.EqualFold("InvalidArgumentException", errorCode): + return awsAwsjson11_deserializeErrorInvalidArgumentException(response, errorBody) + + case strings.EqualFold("NotAuthorizedException", errorCode): + return awsAwsjson11_deserializeErrorNotAuthorizedException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsAwsjson11_deserializeOpGetResourceMetrics struct { } @@ -371,6 +488,240 @@ func awsAwsjson11_deserializeOpErrorGetResourceMetrics(response *smithyhttp.Resp } } +type awsAwsjson11_deserializeOpListAvailableResourceDimensions struct { +} + +func (*awsAwsjson11_deserializeOpListAvailableResourceDimensions) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsjson11_deserializeOpListAvailableResourceDimensions) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsjson11_deserializeOpErrorListAvailableResourceDimensions(response, &metadata) + } + output := &ListAvailableResourceDimensionsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsAwsjson11_deserializeOpDocumentListAvailableResourceDimensionsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsjson11_deserializeOpErrorListAvailableResourceDimensions(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("InternalServiceError", errorCode): + return awsAwsjson11_deserializeErrorInternalServiceError(response, errorBody) + + case strings.EqualFold("InvalidArgumentException", errorCode): + return awsAwsjson11_deserializeErrorInvalidArgumentException(response, errorBody) + + case strings.EqualFold("NotAuthorizedException", errorCode): + return awsAwsjson11_deserializeErrorNotAuthorizedException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +type awsAwsjson11_deserializeOpListAvailableResourceMetrics struct { +} + +func (*awsAwsjson11_deserializeOpListAvailableResourceMetrics) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsjson11_deserializeOpListAvailableResourceMetrics) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsjson11_deserializeOpErrorListAvailableResourceMetrics(response, &metadata) + } + output := &ListAvailableResourceMetricsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsAwsjson11_deserializeOpDocumentListAvailableResourceMetricsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsjson11_deserializeOpErrorListAvailableResourceMetrics(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("InternalServiceError", errorCode): + return awsAwsjson11_deserializeErrorInternalServiceError(response, errorBody) + + case strings.EqualFold("InvalidArgumentException", errorCode): + return awsAwsjson11_deserializeErrorInvalidArgumentException(response, errorBody) + + case strings.EqualFold("NotAuthorizedException", errorCode): + return awsAwsjson11_deserializeErrorNotAuthorizedException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + func awsAwsjson11_deserializeErrorInternalServiceError(response *smithyhttp.Response, errorBody *bytes.Reader) error { var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) @@ -459,21 +810,82 @@ func awsAwsjson11_deserializeErrorNotAuthorizedException(response *smithyhttp.Re return err } - output := &types.NotAuthorizedException{} - err := awsAwsjson11_deserializeDocumentNotAuthorizedException(&output, shape) + output := &types.NotAuthorizedException{} + err := awsAwsjson11_deserializeDocumentNotAuthorizedException(&output, shape) + + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + return output +} + +func awsAwsjson11_deserializeDocumentAdditionalMetricsMap(v *map[string]float64, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var mv map[string]float64 + if *v == nil { + mv = map[string]float64{} + } else { + mv = *v + } + + for key, value := range shape { + var parsedVal float64 + if value != nil { + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + parsedVal = f64 + + case string: + var f64 float64 + switch { + case strings.EqualFold(jtv, "NaN"): + f64 = math.NaN() + + case strings.EqualFold(jtv, "Infinity"): + f64 = math.Inf(1) + + case strings.EqualFold(jtv, "-Infinity"): + f64 = math.Inf(-1) + + default: + return fmt.Errorf("unknown JSON number value: %s", jtv) + + } + parsedVal = f64 + + default: + return fmt.Errorf("expected Double to be a JSON Number, got %T instead", value) - if err != nil { - var snapshot bytes.Buffer - io.Copy(&snapshot, ringBuffer) - err = &smithy.DeserializationError{ - Err: fmt.Errorf("failed to decode response body, %w", err), - Snapshot: snapshot.Bytes(), + } } - return err - } + mv[key] = parsedVal - errorBody.Seek(0, io.SeekStart) - return output + } + *v = mv + return nil } func awsAwsjson11_deserializeDocumentDataPoint(v **types.DataPoint, value interface{}) error { @@ -591,6 +1003,159 @@ func awsAwsjson11_deserializeDocumentDataPointsList(v *[]types.DataPoint, value return nil } +func awsAwsjson11_deserializeDocumentDimensionDetail(v **types.DimensionDetail, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.DimensionDetail + if *v == nil { + sv = &types.DimensionDetail{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Identifier": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Identifier = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsAwsjson11_deserializeDocumentDimensionDetailList(v *[]types.DimensionDetail, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.DimensionDetail + if *v == nil { + cv = []types.DimensionDetail{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.DimensionDetail + destAddr := &col + if err := awsAwsjson11_deserializeDocumentDimensionDetail(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsAwsjson11_deserializeDocumentDimensionGroupDetail(v **types.DimensionGroupDetail, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.DimensionGroupDetail + if *v == nil { + sv = &types.DimensionGroupDetail{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Dimensions": + if err := awsAwsjson11_deserializeDocumentDimensionDetailList(&sv.Dimensions, value); err != nil { + return err + } + + case "Group": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Group = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsAwsjson11_deserializeDocumentDimensionGroupDetailList(v *[]types.DimensionGroupDetail, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.DimensionGroupDetail + if *v == nil { + cv = []types.DimensionGroupDetail{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.DimensionGroupDetail + destAddr := &col + if err := awsAwsjson11_deserializeDocumentDimensionGroupDetail(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentDimensionKeyDescription(v **types.DimensionKeyDescription, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -613,6 +1178,11 @@ func awsAwsjson11_deserializeDocumentDimensionKeyDescription(v **types.Dimension for key, value := range shape { switch key { + case "AdditionalMetrics": + if err := awsAwsjson11_deserializeDocumentAdditionalMetricsMap(&sv.AdditionalMetrics, value); err != nil { + return err + } + case "Dimensions": if err := awsAwsjson11_deserializeDocumentDimensionMap(&sv.Dimensions, value); err != nil { return err @@ -819,16 +1389,131 @@ func awsAwsjson11_deserializeDocumentDimensionMap(v *map[string]string, value in if !ok { return fmt.Errorf("expected RequestString to be of type string, got %T instead", value) } - parsedVal = jtv - } - mv[key] = parsedVal + parsedVal = jtv + } + mv[key] = parsedVal + + } + *v = mv + return nil +} + +func awsAwsjson11_deserializeDocumentFeatureMetadata(v **types.FeatureMetadata, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.FeatureMetadata + if *v == nil { + sv = &types.FeatureMetadata{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Status": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected FeatureStatus to be of type string, got %T instead", value) + } + sv.Status = types.FeatureStatus(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsAwsjson11_deserializeDocumentFeatureMetadataMap(v *map[string]types.FeatureMetadata, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var mv map[string]types.FeatureMetadata + if *v == nil { + mv = map[string]types.FeatureMetadata{} + } else { + mv = *v + } + + for key, value := range shape { + var parsedVal types.FeatureMetadata + mapVar := parsedVal + destAddr := &mapVar + if err := awsAwsjson11_deserializeDocumentFeatureMetadata(&destAddr, value); err != nil { + return err + } + parsedVal = *destAddr + mv[key] = parsedVal + + } + *v = mv + return nil +} + +func awsAwsjson11_deserializeDocumentInternalServiceError(v **types.InternalServiceError, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.InternalServiceError + if *v == nil { + sv = &types.InternalServiceError{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Message": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ErrorString to be of type string, got %T instead", value) + } + sv.Message = ptr.String(jtv) + } + default: + _, _ = key, value + + } } - *v = mv + *v = sv return nil } -func awsAwsjson11_deserializeDocumentInternalServiceError(v **types.InternalServiceError, value interface{}) error { +func awsAwsjson11_deserializeDocumentInvalidArgumentException(v **types.InvalidArgumentException, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -841,9 +1526,9 @@ func awsAwsjson11_deserializeDocumentInternalServiceError(v **types.InternalServ return fmt.Errorf("unexpected JSON type %v", value) } - var sv *types.InternalServiceError + var sv *types.InvalidArgumentException if *v == nil { - sv = &types.InternalServiceError{} + sv = &types.InvalidArgumentException{} } else { sv = *v } @@ -868,7 +1553,7 @@ func awsAwsjson11_deserializeDocumentInternalServiceError(v **types.InternalServ return nil } -func awsAwsjson11_deserializeDocumentInvalidArgumentException(v **types.InvalidArgumentException, value interface{}) error { +func awsAwsjson11_deserializeDocumentMetricDimensionGroups(v **types.MetricDimensionGroups, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -881,22 +1566,27 @@ func awsAwsjson11_deserializeDocumentInvalidArgumentException(v **types.InvalidA return fmt.Errorf("unexpected JSON type %v", value) } - var sv *types.InvalidArgumentException + var sv *types.MetricDimensionGroups if *v == nil { - sv = &types.InvalidArgumentException{} + sv = &types.MetricDimensionGroups{} } else { sv = *v } for key, value := range shape { switch key { - case "Message": + case "Groups": + if err := awsAwsjson11_deserializeDocumentDimensionGroupDetailList(&sv.Groups, value); err != nil { + return err + } + + case "Metric": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected ErrorString to be of type string, got %T instead", value) + return fmt.Errorf("expected String to be of type string, got %T instead", value) } - sv.Message = ptr.String(jtv) + sv.Metric = ptr.String(jtv) } default: @@ -908,6 +1598,40 @@ func awsAwsjson11_deserializeDocumentInvalidArgumentException(v **types.InvalidA return nil } +func awsAwsjson11_deserializeDocumentMetricDimensionsList(v *[]types.MetricDimensionGroups, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.MetricDimensionGroups + if *v == nil { + cv = []types.MetricDimensionGroups{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.MetricDimensionGroups + destAddr := &col + if err := awsAwsjson11_deserializeDocumentMetricDimensionGroups(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentMetricKeyDataPoints(v **types.MetricKeyDataPoints, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -1154,6 +1878,64 @@ func awsAwsjson11_deserializeDocumentResponsePartitionKeyList(v *[]types.Respons return nil } +func awsAwsjson11_deserializeDocumentResponseResourceMetric(v **types.ResponseResourceMetric, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.ResponseResourceMetric + if *v == nil { + sv = &types.ResponseResourceMetric{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Description": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Description to be of type string, got %T instead", value) + } + sv.Description = ptr.String(jtv) + } + + case "Metric": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Metric = ptr.String(jtv) + } + + case "Unit": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Unit = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsAwsjson11_deserializeDocumentResponseResourceMetricKey(v **types.ResponseResourceMetricKey, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -1199,6 +1981,40 @@ func awsAwsjson11_deserializeDocumentResponseResourceMetricKey(v **types.Respons return nil } +func awsAwsjson11_deserializeDocumentResponseResourceMetricList(v *[]types.ResponseResourceMetric, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.ResponseResourceMetric + if *v == nil { + cv = []types.ResponseResourceMetric{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.ResponseResourceMetric + destAddr := &col + if err := awsAwsjson11_deserializeDocumentResponseResourceMetric(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeOpDocumentDescribeDimensionKeysOutput(v **DescribeDimensionKeysOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -1317,6 +2133,51 @@ func awsAwsjson11_deserializeOpDocumentGetDimensionKeyDetailsOutput(v **GetDimen return nil } +func awsAwsjson11_deserializeOpDocumentGetResourceMetadataOutput(v **GetResourceMetadataOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *GetResourceMetadataOutput + if *v == nil { + sv = &GetResourceMetadataOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Features": + if err := awsAwsjson11_deserializeDocumentFeatureMetadataMap(&sv.Features, value); err != nil { + return err + } + + case "Identifier": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Identifier = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsAwsjson11_deserializeOpDocumentGetResourceMetricsOutput(v **GetResourceMetricsOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -1402,3 +2263,93 @@ func awsAwsjson11_deserializeOpDocumentGetResourceMetricsOutput(v **GetResourceM *v = sv return nil } + +func awsAwsjson11_deserializeOpDocumentListAvailableResourceDimensionsOutput(v **ListAvailableResourceDimensionsOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *ListAvailableResourceDimensionsOutput + if *v == nil { + sv = &ListAvailableResourceDimensionsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "MetricDimensions": + if err := awsAwsjson11_deserializeDocumentMetricDimensionsList(&sv.MetricDimensions, value); err != nil { + return err + } + + case "NextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected NextToken to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsAwsjson11_deserializeOpDocumentListAvailableResourceMetricsOutput(v **ListAvailableResourceMetricsOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *ListAvailableResourceMetricsOutput + if *v == nil { + sv = &ListAvailableResourceMetricsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Metrics": + if err := awsAwsjson11_deserializeDocumentResponseResourceMetricList(&sv.Metrics, value); err != nil { + return err + } + + case "NextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected NextToken to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} diff --git a/service/pi/doc.go b/service/pi/doc.go index ce46503b2b1..a040fcdc276 100644 --- a/service/pi/doc.go +++ b/service/pi/doc.go @@ -9,17 +9,17 @@ // Performance Insights data types, parameters and errors. When Performance // Insights is enabled, the Amazon RDS Performance Insights API provides visibility // into the performance of your DB instance. Amazon CloudWatch provides the -// authoritative source for AWS service-vended monitoring metrics. Performance -// Insights offers a domain-specific view of DB load. DB load is measured as -// Average Active Sessions. Performance Insights provides the data to API consumers -// as a two-dimensional time-series dataset. The time dimension provides DB load -// data for each time point in the queried time range. Each time point decomposes -// overall load in relation to the requested dimensions, measured at that time -// point. Examples include SQL, Wait event, User, and Host. +// authoritative source for Amazon Web Services service-vended monitoring metrics. +// Performance Insights offers a domain-specific view of DB load. DB load is +// measured as average active sessions. Performance Insights provides the data to +// API consumers as a two-dimensional time-series dataset. The time dimension +// provides DB load data for each time point in the queried time range. Each time +// point decomposes overall load in relation to the requested dimensions, measured +// at that time point. Examples include SQL, Wait event, User, and Host. // -// * To learn more about -// Performance Insights and Amazon Aurora DB instances, go to the Amazon Aurora -// User Guide +// * To +// learn more about Performance Insights and Amazon Aurora DB instances, go to the +// Amazon Aurora User Guide // (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_PerfInsights.html). // // * diff --git a/service/pi/generated.json b/service/pi/generated.json index d9aea34401d..f1485089782 100644 --- a/service/pi/generated.json +++ b/service/pi/generated.json @@ -9,7 +9,10 @@ "api_client.go", "api_op_DescribeDimensionKeys.go", "api_op_GetDimensionKeyDetails.go", + "api_op_GetResourceMetadata.go", "api_op_GetResourceMetrics.go", + "api_op_ListAvailableResourceDimensions.go", + "api_op_ListAvailableResourceMetrics.go", "deserializers.go", "doc.go", "endpoints.go", diff --git a/service/pi/serializers.go b/service/pi/serializers.go index 9a13767e459..fe82361ced1 100644 --- a/service/pi/serializers.go +++ b/service/pi/serializers.go @@ -126,6 +126,61 @@ func (m *awsAwsjson11_serializeOpGetDimensionKeyDetails) HandleSerialize(ctx con return next.HandleSerialize(ctx, in) } +type awsAwsjson11_serializeOpGetResourceMetadata struct { +} + +func (*awsAwsjson11_serializeOpGetResourceMetadata) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsjson11_serializeOpGetResourceMetadata) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*GetResourceMetadataInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1") + httpBindingEncoder.SetHeader("X-Amz-Target").String("PerformanceInsightsv20180227.GetResourceMetadata") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsAwsjson11_serializeOpDocumentGetResourceMetadataInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + type awsAwsjson11_serializeOpGetResourceMetrics struct { } @@ -180,6 +235,127 @@ func (m *awsAwsjson11_serializeOpGetResourceMetrics) HandleSerialize(ctx context return next.HandleSerialize(ctx, in) } + +type awsAwsjson11_serializeOpListAvailableResourceDimensions struct { +} + +func (*awsAwsjson11_serializeOpListAvailableResourceDimensions) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsjson11_serializeOpListAvailableResourceDimensions) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*ListAvailableResourceDimensionsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1") + httpBindingEncoder.SetHeader("X-Amz-Target").String("PerformanceInsightsv20180227.ListAvailableResourceDimensions") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsAwsjson11_serializeOpDocumentListAvailableResourceDimensionsInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + +type awsAwsjson11_serializeOpListAvailableResourceMetrics struct { +} + +func (*awsAwsjson11_serializeOpListAvailableResourceMetrics) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsjson11_serializeOpListAvailableResourceMetrics) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*ListAvailableResourceMetricsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1") + httpBindingEncoder.SetHeader("X-Amz-Target").String("PerformanceInsightsv20180227.ListAvailableResourceMetrics") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsAwsjson11_serializeOpDocumentListAvailableResourceMetricsInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsAwsjson11_serializeDocumentAdditionalMetricsList(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + func awsAwsjson11_serializeDocumentDimensionGroup(v *types.DimensionGroup, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -204,6 +380,17 @@ func awsAwsjson11_serializeDocumentDimensionGroup(v *types.DimensionGroup, value return nil } +func awsAwsjson11_serializeDocumentDimensionsMetricList(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + func awsAwsjson11_serializeDocumentMetricQuery(v *types.MetricQuery, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -254,6 +441,17 @@ func awsAwsjson11_serializeDocumentMetricQueryList(v []types.MetricQuery, value return nil } +func awsAwsjson11_serializeDocumentMetricTypeList(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + func awsAwsjson11_serializeDocumentRequestedDimensionList(v []string, value smithyjson.Value) error { array := value.Array() defer array.Close() @@ -280,6 +478,13 @@ func awsAwsjson11_serializeOpDocumentDescribeDimensionKeysInput(v *DescribeDimen object := value.Object() defer object.Close() + if v.AdditionalMetrics != nil { + ok := object.Key("AdditionalMetrics") + if err := awsAwsjson11_serializeDocumentAdditionalMetricsList(v.AdditionalMetrics, ok); err != nil { + return err + } + } + if v.EndTime != nil { ok := object.Key("EndTime") ok.Double(smithytime.FormatEpochSeconds(*v.EndTime)) @@ -378,6 +583,23 @@ func awsAwsjson11_serializeOpDocumentGetDimensionKeyDetailsInput(v *GetDimension return nil } +func awsAwsjson11_serializeOpDocumentGetResourceMetadataInput(v *GetResourceMetadataInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Identifier != nil { + ok := object.Key("Identifier") + ok.String(*v.Identifier) + } + + if len(v.ServiceType) > 0 { + ok := object.Key("ServiceType") + ok.String(string(v.ServiceType)) + } + + return nil +} + func awsAwsjson11_serializeOpDocumentGetResourceMetricsInput(v *GetResourceMetricsInput, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -426,3 +648,71 @@ func awsAwsjson11_serializeOpDocumentGetResourceMetricsInput(v *GetResourceMetri return nil } + +func awsAwsjson11_serializeOpDocumentListAvailableResourceDimensionsInput(v *ListAvailableResourceDimensionsInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Identifier != nil { + ok := object.Key("Identifier") + ok.String(*v.Identifier) + } + + if v.MaxResults != nil { + ok := object.Key("MaxResults") + ok.Integer(*v.MaxResults) + } + + if v.Metrics != nil { + ok := object.Key("Metrics") + if err := awsAwsjson11_serializeDocumentDimensionsMetricList(v.Metrics, ok); err != nil { + return err + } + } + + if v.NextToken != nil { + ok := object.Key("NextToken") + ok.String(*v.NextToken) + } + + if len(v.ServiceType) > 0 { + ok := object.Key("ServiceType") + ok.String(string(v.ServiceType)) + } + + return nil +} + +func awsAwsjson11_serializeOpDocumentListAvailableResourceMetricsInput(v *ListAvailableResourceMetricsInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Identifier != nil { + ok := object.Key("Identifier") + ok.String(*v.Identifier) + } + + if v.MaxResults != nil { + ok := object.Key("MaxResults") + ok.Integer(*v.MaxResults) + } + + if v.MetricTypes != nil { + ok := object.Key("MetricTypes") + if err := awsAwsjson11_serializeDocumentMetricTypeList(v.MetricTypes, ok); err != nil { + return err + } + } + + if v.NextToken != nil { + ok := object.Key("NextToken") + ok.String(*v.NextToken) + } + + if len(v.ServiceType) > 0 { + ok := object.Key("ServiceType") + ok.String(string(v.ServiceType)) + } + + return nil +} diff --git a/service/pi/types/enums.go b/service/pi/types/enums.go index ee860aa6f3d..e048143c3b7 100644 --- a/service/pi/types/enums.go +++ b/service/pi/types/enums.go @@ -22,11 +22,38 @@ func (DetailStatus) Values() []DetailStatus { } } +type FeatureStatus string + +// Enum values for FeatureStatus +const ( + FeatureStatusEnabled FeatureStatus = "ENABLED" + FeatureStatusDisabled FeatureStatus = "DISABLED" + FeatureStatusUnsupported FeatureStatus = "UNSUPPORTED" + FeatureStatusEnabledPendingReboot FeatureStatus = "ENABLED_PENDING_REBOOT" + FeatureStatusDisabledPendingReboot FeatureStatus = "DISABLED_PENDING_REBOOT" + FeatureStatusUnknown FeatureStatus = "UNKNOWN" +) + +// Values returns all known values for FeatureStatus. Note that this can be +// expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (FeatureStatus) Values() []FeatureStatus { + return []FeatureStatus{ + "ENABLED", + "DISABLED", + "UNSUPPORTED", + "ENABLED_PENDING_REBOOT", + "DISABLED_PENDING_REBOOT", + "UNKNOWN", + } +} + type ServiceType string // Enum values for ServiceType const ( - ServiceTypeRds ServiceType = "RDS" + ServiceTypeRds ServiceType = "RDS" + ServiceTypeDocdb ServiceType = "DOCDB" ) // Values returns all known values for ServiceType. Note that this can be expanded @@ -35,5 +62,6 @@ const ( func (ServiceType) Values() []ServiceType { return []ServiceType{ "RDS", + "DOCDB", } } diff --git a/service/pi/types/types.go b/service/pi/types/types.go index ccf22cf00b3..c02b199abcc 100644 --- a/service/pi/types/types.go +++ b/service/pi/types/types.go @@ -24,6 +24,15 @@ type DataPoint struct { noSmithyDocumentSerde } +// The information about a dimension. +type DimensionDetail struct { + + // The identifier of a dimension. + Identifier *string + + noSmithyDocumentSerde +} + // A logical grouping of Performance Insights metrics for a related subject area. // For example, the db.sql dimension group consists of the following dimensions: // db.sql.id, db.sql.db_id, db.sql.statement, and db.sql.tokenized_id. Each @@ -34,21 +43,21 @@ type DimensionGroup struct { // The name of the dimension group. Valid values are: // // * db - The name of the - // database to which the client is connected (only Aurora PostgreSQL, RDS - // PostgreSQL, Aurora MySQL, RDS MySQL, and MariaDB) + // database to which the client is connected (only Aurora PostgreSQL, Amazon RDS + // PostgreSQL, Aurora MySQL, Amazon RDS MySQL, and MariaDB) // - // * db.application - The name - // of the application that is connected to the database (only Aurora PostgreSQL and - // RDS PostgreSQL) + // * db.application - The + // name of the application that is connected to the database (only Aurora + // PostgreSQL and RDS PostgreSQL) // - // * db.host - The host name of the connected client (all - // engines) + // * db.host - The host name of the connected + // client (all engines) // - // * db.session_type - The type of the current session (only Aurora - // PostgreSQL and RDS PostgreSQL) + // * db.session_type - The type of the current session (only + // Aurora PostgreSQL and RDS PostgreSQL) // - // * db.sql - The SQL that is currently executing - // (all engines) + // * db.sql - The SQL that is currently + // executing (all engines) // // * db.sql_tokenized - The SQL digest (all engines) // @@ -80,11 +89,11 @@ type DimensionGroup struct { // The host name of the connected client (all engines) // // * db.name - The name of the - // database to which the client is connected (only Aurora PostgreSQL, RDS - // PostgreSQL, Aurora MySQL, RDS MySQL, and MariaDB) + // database to which the client is connected (only Aurora PostgreSQL, Amazon RDS + // PostgreSQL, Aurora MySQL, Amazon RDS MySQL, and MariaDB) // - // * db.session_type.name - The - // type of the current session (only Aurora PostgreSQL and RDS PostgreSQL) + // * db.session_type.name + // - The type of the current session (only Aurora PostgreSQL and RDS PostgreSQL) // // * // db.sql.id - The SQL ID generated by Performance Insights (all engines) @@ -129,17 +138,32 @@ type DimensionGroup struct { noSmithyDocumentSerde } -// An array of descriptions and aggregated values for each dimension within a -// dimension group. +// Information about dimensions within a dimension group. +type DimensionGroupDetail struct { + + // The dimensions within a dimension group. + Dimensions []DimensionDetail + + // The name of the dimension group. + Group *string + + noSmithyDocumentSerde +} + +// An object that includes the requested dimension key values and aggregated metric +// values within a dimension group. type DimensionKeyDescription struct { + // A map that contains the value for each additional metric. + AdditionalMetrics map[string]float64 + // A map of name-value pairs for the dimensions in the group. Dimensions map[string]string // If PartitionBy was specified, PartitionKeys contains the dimensions that were. Partitions []float64 - // The aggregated metric value for the dimension(s), over the requested time range. + // The aggregated metric value for the dimensions, over the requested time range. Total *float64 noSmithyDocumentSerde @@ -173,6 +197,46 @@ type DimensionKeyDetail struct { noSmithyDocumentSerde } +// The metadata for a feature. For example, the metadata might indicate that a +// feature is turned on or off on a specific DB instance. +type FeatureMetadata struct { + + // The status of the feature on the DB instance. Possible values include the + // following: + // + // * ENABLED: the feature is enabled on the instance. + // + // * DISABLED: the + // feature is disabled on the instance. + // + // * UNSUPPORTED: the feature isn't supported + // on the instance. + // + // * ENABLED_PENDING_REBOOT: the feature is enabled on the + // instance but requires a reboot to take effect. + // + // * DISABLED_PENDING_REBOOT: the + // feature is disabled on the instance but requires a reboot to take effect. + // + // * + // UNKNOWN: the feature status couldn't be determined. + Status FeatureStatus + + noSmithyDocumentSerde +} + +// The available dimension information for a metric type. +type MetricDimensionGroups struct { + + // The available dimension groups for a metric type. + Groups []DimensionGroupDetail + + // The metric type to which the dimension information belongs. + Metric *string + + noSmithyDocumentSerde +} + // A time-ordered series of data points, corresponding to a dimension of a // Performance Insights metric. type MetricKeyDataPoints struct { @@ -181,16 +245,16 @@ type MetricKeyDataPoints struct { // time. DataPoints []DataPoint - // The dimension(s) to which the data points apply. + // The dimensions to which the data points apply. Key *ResponseResourceMetricKey noSmithyDocumentSerde } // A single query to be processed. You must provide the metric to query. If no -// other parameters are specified, Performance Insights returns all of the data -// points for that metric. You can optionally request that the data points be -// aggregated by dimension group ( GroupBy), and return only those data points that +// other parameters are specified, Performance Insights returns all data points for +// the specified metric. Optionally, you can request that the data points be +// aggregated by dimension group (GroupBy), and return only those data points that // match your criteria (Filter). type MetricQuery struct { @@ -237,7 +301,7 @@ type MetricQuery struct { // are returned in an array. Each element in the array specifies one dimension. type ResponsePartitionKey struct { - // A dimension map that contains the dimension(s) for this partition. + // A dimension map that contains the dimensions for this partition. // // This member is required. Dimensions map[string]string @@ -245,6 +309,21 @@ type ResponsePartitionKey struct { noSmithyDocumentSerde } +// An object that contains the full name, description, and unit of a metric. +type ResponseResourceMetric struct { + + // The description of the metric. + Description *string + + // The full name of the metric. + Metric *string + + // The unit of the metric. + Unit *string + + noSmithyDocumentSerde +} + // An object describing a Performance Insights metric and one or more dimensions // for that metric. type ResponseResourceMetricKey struct { diff --git a/service/pi/validators.go b/service/pi/validators.go index 2be4c8cd6c2..4dc59658b79 100644 --- a/service/pi/validators.go +++ b/service/pi/validators.go @@ -50,6 +50,26 @@ func (m *validateOpGetDimensionKeyDetails) HandleInitialize(ctx context.Context, return next.HandleInitialize(ctx, in) } +type validateOpGetResourceMetadata struct { +} + +func (*validateOpGetResourceMetadata) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpGetResourceMetadata) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*GetResourceMetadataInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpGetResourceMetadataInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpGetResourceMetrics struct { } @@ -70,6 +90,46 @@ func (m *validateOpGetResourceMetrics) HandleInitialize(ctx context.Context, in return next.HandleInitialize(ctx, in) } +type validateOpListAvailableResourceDimensions struct { +} + +func (*validateOpListAvailableResourceDimensions) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpListAvailableResourceDimensions) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*ListAvailableResourceDimensionsInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpListAvailableResourceDimensionsInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + +type validateOpListAvailableResourceMetrics struct { +} + +func (*validateOpListAvailableResourceMetrics) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpListAvailableResourceMetrics) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*ListAvailableResourceMetricsInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpListAvailableResourceMetricsInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + func addOpDescribeDimensionKeysValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDescribeDimensionKeys{}, middleware.After) } @@ -78,10 +138,22 @@ func addOpGetDimensionKeyDetailsValidationMiddleware(stack *middleware.Stack) er return stack.Initialize.Add(&validateOpGetDimensionKeyDetails{}, middleware.After) } +func addOpGetResourceMetadataValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpGetResourceMetadata{}, middleware.After) +} + func addOpGetResourceMetricsValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpGetResourceMetrics{}, middleware.After) } +func addOpListAvailableResourceDimensionsValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpListAvailableResourceDimensions{}, middleware.After) +} + +func addOpListAvailableResourceMetricsValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpListAvailableResourceMetrics{}, middleware.After) +} + func validateDimensionGroup(v *types.DimensionGroup) error { if v == nil { return nil @@ -197,6 +269,24 @@ func validateOpGetDimensionKeyDetailsInput(v *GetDimensionKeyDetailsInput) error } } +func validateOpGetResourceMetadataInput(v *GetResourceMetadataInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "GetResourceMetadataInput"} + if len(v.ServiceType) == 0 { + invalidParams.Add(smithy.NewErrParamRequired("ServiceType")) + } + if v.Identifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("Identifier")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpGetResourceMetricsInput(v *GetResourceMetricsInput) error { if v == nil { return nil @@ -227,3 +317,45 @@ func validateOpGetResourceMetricsInput(v *GetResourceMetricsInput) error { return nil } } + +func validateOpListAvailableResourceDimensionsInput(v *ListAvailableResourceDimensionsInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "ListAvailableResourceDimensionsInput"} + if len(v.ServiceType) == 0 { + invalidParams.Add(smithy.NewErrParamRequired("ServiceType")) + } + if v.Identifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("Identifier")) + } + if v.Metrics == nil { + invalidParams.Add(smithy.NewErrParamRequired("Metrics")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateOpListAvailableResourceMetricsInput(v *ListAvailableResourceMetricsInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "ListAvailableResourceMetricsInput"} + if len(v.ServiceType) == 0 { + invalidParams.Add(smithy.NewErrParamRequired("ServiceType")) + } + if v.Identifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("Identifier")) + } + if v.MetricTypes == nil { + invalidParams.Add(smithy.NewErrParamRequired("MetricTypes")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} diff --git a/service/pinpoint/serializers.go b/service/pinpoint/serializers.go index 0cc0dcaa21b..bda3af76997 100644 --- a/service/pinpoint/serializers.go +++ b/service/pinpoint/serializers.go @@ -10926,6 +10926,23 @@ func awsRestjson1_serializeDocumentInAppTemplateRequest(v *types.InAppTemplateRe return nil } +func awsRestjson1_serializeDocumentJourneyChannelSettings(v *types.JourneyChannelSettings, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.ConnectCampaignArn != nil { + ok := object.Key("ConnectCampaignArn") + ok.String(*v.ConnectCampaignArn) + } + + if v.ConnectCampaignExecutionRoleArn != nil { + ok := object.Key("ConnectCampaignExecutionRoleArn") + ok.String(*v.ConnectCampaignExecutionRoleArn) + } + + return nil +} + func awsRestjson1_serializeDocumentJourneyCustomMessage(v *types.JourneyCustomMessage, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -12990,6 +13007,13 @@ func awsRestjson1_serializeDocumentWriteJourneyRequest(v *types.WriteJourneyRequ ok.String(*v.CreationDate) } + if v.JourneyChannelSettings != nil { + ok := object.Key("JourneyChannelSettings") + if err := awsRestjson1_serializeDocumentJourneyChannelSettings(v.JourneyChannelSettings, ok); err != nil { + return err + } + } + if v.LastModifiedDate != nil { ok := object.Key("LastModifiedDate") ok.String(*v.LastModifiedDate) diff --git a/service/pinpoint/types/types.go b/service/pinpoint/types/types.go index d40c8eada05..a963fc7594d 100644 --- a/service/pinpoint/types/types.go +++ b/service/pinpoint/types/types.go @@ -6682,6 +6682,9 @@ type WriteJourneyRequest struct { // The date, in ISO 8601 format, when the journey was created. CreationDate *string + // The channel-specific configurations for the journey. + JourneyChannelSettings *JourneyChannelSettings + // The date, in ISO 8601 format, when the journey was last modified. LastModifiedDate *string diff --git a/service/rds/api_op_AddSourceIdentifierToSubscription.go b/service/rds/api_op_AddSourceIdentifierToSubscription.go index e5d23b1faaa..47289989a1e 100644 --- a/service/rds/api_op_AddSourceIdentifierToSubscription.go +++ b/service/rds/api_op_AddSourceIdentifierToSubscription.go @@ -51,6 +51,9 @@ type AddSourceIdentifierToSubscriptionInput struct { // * If the source type is a DB // cluster snapshot, a DBClusterSnapshotIdentifier value must be supplied. // + // * If + // the source type is an RDS Proxy, a DBProxyName value must be supplied. + // // This member is required. SourceIdentifier *string diff --git a/service/rds/api_op_CreateEventSubscription.go b/service/rds/api_op_CreateEventSubscription.go index 48351e3b2ca..a5b9d001083 100644 --- a/service/rds/api_op_CreateEventSubscription.go +++ b/service/rds/api_op_CreateEventSubscription.go @@ -21,14 +21,14 @@ import ( // be notified of. For example, you can specify SourceType = db-instance, SourceIds // = mydbinstance1, mydbinstance2 and EventCategories = Availability, Backup. If // you specify both the SourceType and SourceIds, such as SourceType = db-instance -// and SourceIdentifier = myDBInstance1, you are notified of all the db-instance -// events for the specified source. If you specify a SourceType but do not specify -// a SourceIdentifier, you receive notice of the events for that source type for -// all your RDS sources. If you don't specify either the SourceType or the -// SourceIdentifier, you are notified of events generated from all RDS sources -// belonging to your customer account. RDS event notification is only available for -// unencrypted SNS topics. If you specify an encrypted SNS topic, event -// notifications aren't sent for the topic. +// and SourceIds = myDBInstance1, you are notified of all the db-instance events +// for the specified source. If you specify a SourceType but do not specify +// SourceIds, you receive notice of the events for that source type for all your +// RDS sources. If you don't specify either the SourceType or the SourceIds, you +// are notified of events generated from all RDS sources belonging to your customer +// account. RDS event notification is only available for unencrypted SNS topics. If +// you specify an encrypted SNS topic, event notifications aren't sent for the +// topic. func (c *Client) CreateEventSubscription(ctx context.Context, params *CreateEventSubscriptionInput, optFns ...func(*Options)) (*CreateEventSubscriptionOutput, error) { if params == nil { params = &CreateEventSubscriptionInput{} @@ -66,9 +66,12 @@ type CreateEventSubscriptionInput struct { // A list of event categories for a particular source type (SourceType) that you // want to subscribe to. You can see a list of the categories for a given source - // type in Events - // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) in the - // Amazon RDS User Guide or by using the DescribeEventCategories operation. + // type in the "Amazon RDS event categories and event messages" section of the + // Amazon RDS User Guide + // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.Messages.html) + // or the Amazon Aurora User Guide + // (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Events.Messages.html). + // You can also see this list by using the DescribeEventCategories operation. EventCategories []string // The list of identifiers of the event sources for which events are returned. If @@ -97,13 +100,17 @@ type CreateEventSubscriptionInput struct { // // * If the source type is a DB // cluster snapshot, a DBClusterSnapshotIdentifier value must be supplied. + // + // * If + // the source type is an RDS Proxy, a DBProxyName value must be supplied. SourceIds []string // The type of source that is generating the events. For example, if you want to be // notified of events generated by a DB instance, you set this parameter to - // db-instance. If this value isn't specified, all events are returned. Valid - // values: db-instance | db-cluster | db-parameter-group | db-security-group | - // db-snapshot | db-cluster-snapshot + // db-instance. For RDS Proxy events, specify db-proxy. If this value isn't + // specified, all events are returned. Valid values: db-instance | db-cluster | + // db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | + // db-proxy SourceType *string // A list of tags. For more information, see Tagging Amazon RDS Resources diff --git a/service/rds/api_op_DescribeEventCategories.go b/service/rds/api_op_DescribeEventCategories.go index 2cd4e5d7641..a2c6d96ae05 100644 --- a/service/rds/api_op_DescribeEventCategories.go +++ b/service/rds/api_op_DescribeEventCategories.go @@ -12,10 +12,11 @@ import ( ) // Displays a list of categories for all event source types, or, if specified, for -// a specified source type. You can see a list of the event categories and source -// types in Events -// (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) in the -// Amazon RDS User Guide. +// a specified source type. You can also see this list in the "Amazon RDS event +// categories and event messages" section of the Amazon RDS User Guide +// (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.Messages.html) +// or the Amazon Aurora User Guide +// (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Events.Messages.html). func (c *Client) DescribeEventCategories(ctx context.Context, params *DescribeEventCategoriesInput, optFns ...func(*Options)) (*DescribeEventCategoriesOutput, error) { if params == nil { params = &DescribeEventCategoriesInput{} @@ -37,9 +38,9 @@ type DescribeEventCategoriesInput struct { // This parameter isn't currently supported. Filters []types.Filter - // The type of source that is generating the events. Valid values: db-instance | - // db-cluster | db-parameter-group | db-security-group | db-snapshot | - // db-cluster-snapshot + // The type of source that is generating the events. For RDS Proxy events, specify + // db-proxy. Valid values: db-instance | db-cluster | db-parameter-group | + // db-security-group | db-snapshot | db-cluster-snapshot | db-proxy SourceType *string noSmithyDocumentSerde diff --git a/service/rds/api_op_DescribeEvents.go b/service/rds/api_op_DescribeEvents.go index 23ea038188e..51c27407171 100644 --- a/service/rds/api_op_DescribeEvents.go +++ b/service/rds/api_op_DescribeEvents.go @@ -14,11 +14,11 @@ import ( ) // Returns events related to DB instances, DB clusters, DB parameter groups, DB -// security groups, DB snapshots, and DB cluster snapshots for the past 14 days. -// Events specific to a particular DB instances, DB clusters, DB parameter groups, -// DB security groups, DB snapshots, and DB cluster snapshots group can be obtained -// by providing the name as a parameter. By default, the past hour of events are -// returned. +// security groups, DB snapshots, DB cluster snapshots, and RDS Proxies for the +// past 14 days. Events specific to a particular DB instance, DB cluster, DB +// parameter group, DB security group, DB snapshot, DB cluster snapshot group, or +// RDS Proxy can be obtained by providing the name as a parameter. By default, RDS +// returns events that were generated in the past hour. func (c *Client) DescribeEvents(ctx context.Context, params *DescribeEventsInput, optFns ...func(*Options)) (*DescribeEventsOutput, error) { if params == nil { params = &DescribeEventsInput{} @@ -88,6 +88,9 @@ type DescribeEventsInput struct { // * If the source type is a DB // cluster snapshot, a DBClusterSnapshotIdentifier value must be supplied. // + // * If + // the source type is an RDS Proxy, a DBProxyName value must be supplied. + // // * Can't // end with a hyphen or contain two consecutive hyphens. SourceIdentifier *string diff --git a/service/rds/api_op_ModifyEventSubscription.go b/service/rds/api_op_ModifyEventSubscription.go index fb08a484cca..c745d1e8f4b 100644 --- a/service/rds/api_op_ModifyEventSubscription.go +++ b/service/rds/api_op_ModifyEventSubscription.go @@ -56,9 +56,10 @@ type ModifyEventSubscriptionInput struct { // The type of source that is generating the events. For example, if you want to be // notified of events generated by a DB instance, you would set this parameter to - // db-instance. If this value isn't specified, all events are returned. Valid - // values: db-instance | db-cluster | db-parameter-group | db-security-group | - // db-snapshot | db-cluster-snapshot + // db-instance. For RDS Proxy events, specify db-proxy. If this value isn't + // specified, all events are returned. Valid values: db-instance | db-cluster | + // db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | + // db-proxy SourceType *string noSmithyDocumentSerde diff --git a/service/rds/types/enums.go b/service/rds/types/enums.go index fbf1a908fc3..a55c7b42e21 100644 --- a/service/rds/types/enums.go +++ b/service/rds/types/enums.go @@ -275,6 +275,7 @@ const ( SourceTypeDbCluster SourceType = "db-cluster" SourceTypeDbClusterSnapshot SourceType = "db-cluster-snapshot" SourceTypeCustomEngineVersion SourceType = "custom-engine-version" + SourceTypeDbProxy SourceType = "db-proxy" ) // Values returns all known values for SourceType. Note that this can be expanded @@ -289,6 +290,7 @@ func (SourceType) Values() []SourceType { "db-cluster", "db-cluster-snapshot", "custom-engine-version", + "db-proxy", } } diff --git a/service/rds/types/types.go b/service/rds/types/types.go index e7c24192e8b..23f947ec076 100644 --- a/service/rds/types/types.go +++ b/service/rds/types/types.go @@ -249,19 +249,19 @@ type ConnectionPoolConfiguration struct { // initialization query InitQuery *string - // The maximum size of the connection pool for each target in a target group. For - // Aurora MySQL, it is expressed as a percentage of the max_connections setting for - // the RDS DB instance or Aurora DB cluster used by the target group. Default: 100 + // The maximum size of the connection pool for each target in a target group. The + // value is expressed as a percentage of the max_connections setting for the RDS DB + // instance or Aurora DB cluster used by the target group. Default: 100 // Constraints: between 1 and 100 MaxConnectionsPercent *int32 // Controls how actively the proxy closes idle database connections in the - // connection pool. A high value enables the proxy to leave a high percentage of - // idle connections open. A low value causes the proxy to close idle client - // connections and return the underlying database connections to the connection - // pool. For Aurora MySQL, it is expressed as a percentage of the max_connections + // connection pool. The value is expressed as a percentage of the max_connections // setting for the RDS DB instance or Aurora DB cluster used by the target group. - // Default: 50 Constraints: between 0 and MaxConnectionsPercent + // With a high value, the proxy leaves a high percentage of idle database + // connections open. A low value causes the proxy to close more idle connections + // and return them to the database. Default: 50 Constraints: between 0 and + // MaxConnectionsPercent MaxIdleConnectionsPercent *int32 // Each item in the list represents a class of SQL operations that normally cause @@ -290,17 +290,17 @@ type ConnectionPoolConfigurationInfo struct { // y=2. InitQuery *string - // The maximum size of the connection pool for each target in a target group. For - // Aurora MySQL, it is expressed as a percentage of the max_connections setting for - // the RDS DB instance or Aurora DB cluster used by the target group. + // The maximum size of the connection pool for each target in a target group. The + // value is expressed as a percentage of the max_connections setting for the RDS DB + // instance or Aurora DB cluster used by the target group. MaxConnectionsPercent int32 // Controls how actively the proxy closes idle database connections in the - // connection pool. A high value enables the proxy to leave a high percentage of - // idle connections open. A low value causes the proxy to close idle client - // connections and return the underlying database connections to the connection - // pool. For Aurora MySQL, it is expressed as a percentage of the max_connections + // connection pool. The value is expressed as a percentage of the max_connections // setting for the RDS DB instance or Aurora DB cluster used by the target group. + // With a high value, the proxy leaves a high percentage of idle database + // connections open. A low value causes the proxy to close more idle connections + // and return them to the database. MaxIdleConnectionsPercent int32 // Each item in the list represents a class of SQL operations that normally cause diff --git a/service/ssm/api_op_CreateAssociation.go b/service/ssm/api_op_CreateAssociation.go index 1d70a893c54..cd0f684c8c0 100644 --- a/service/ssm/api_op_CreateAssociation.go +++ b/service/ssm/api_op_CreateAssociation.go @@ -81,7 +81,13 @@ type CreateAssociationInput struct { ComplianceSeverity types.AssociationComplianceSeverity // The document version you want to associate with the target(s). Can be a specific - // version or the default version. + // version or the default version. State Manager doesn't support running + // associations that use a new version of a document if that document is shared + // from another account. State Manager always runs the default version of a + // document if shared from another account, even though the Systems Manager console + // shows that a new version was processed. If you want to run an association using + // a new version of a document shared form another account, you must set the + // document version to default. DocumentVersion *string // The managed node ID. InstanceId has been deprecated. To specify a managed node diff --git a/service/ssm/api_op_GetCommandInvocation.go b/service/ssm/api_op_GetCommandInvocation.go index 93258dbbd97..caadc1b01e3 100644 --- a/service/ssm/api_op_GetCommandInvocation.go +++ b/service/ssm/api_op_GetCommandInvocation.go @@ -179,18 +179,18 @@ type GetCommandInvocationOutput struct { // against the MaxErrors limit of the parent command. This is a terminal state. // // * - // Canceled: The command was terminated before it was completed. This is a terminal - // state. + // Cancelled: The command was terminated before it was completed. This is a + // terminal state. // - // * Undeliverable: The command can't be delivered to the managed node. The - // node might not exist or might not be responding. Undeliverable invocations don't - // count against the parent command's MaxErrors limit and don't contribute to - // whether the parent command status is Success or Incomplete. This is a terminal - // state. + // * Undeliverable: The command can't be delivered to the managed + // node. The node might not exist or might not be responding. Undeliverable + // invocations don't count against the parent command's MaxErrors limit and don't + // contribute to whether the parent command status is Success or Incomplete. This + // is a terminal state. // - // * Terminated: The parent command exceeded its MaxErrors limit and - // subsequent command invocations were canceled by the system. This is a terminal - // state. + // * Terminated: The parent command exceeded its MaxErrors + // limit and subsequent command invocations were canceled by the system. This is a + // terminal state. StatusDetails *string // Metadata pertaining to the operation's result. diff --git a/service/ssm/api_op_UpdateAssociation.go b/service/ssm/api_op_UpdateAssociation.go index 17fa86acb18..5a848677b62 100644 --- a/service/ssm/api_op_UpdateAssociation.go +++ b/service/ssm/api_op_UpdateAssociation.go @@ -13,14 +13,22 @@ import ( // Updates an association. You can update the association name and version, the // document version, schedule, parameters, and Amazon Simple Storage Service -// (Amazon S3) output. In order to call this API operation, your Identity and -// Access Management (IAM) user account, group, or role must be configured with -// permission to call the DescribeAssociation API operation. If you don't have -// permission to call DescribeAssociation, then you receive the following error: An -// error occurred (AccessDeniedException) when calling the UpdateAssociation -// operation: User: isn't authorized to perform: ssm:DescribeAssociation on -// resource: When you update an association, the association immediately runs -// against the specified targets. +// (Amazon S3) output. When you call UpdateAssociation, the system drops all +// optional parameters from the request and overwrites the association with null +// values for those parameters. This is by design. You must specify all optional +// parameters in the call, even if you are not changing the parameters. This +// includes the Name parameter. Before calling this API action, we recommend that +// you call the DescribeAssociation API operation and make a note of all optional +// parameters required for your UpdateAssociation call. In order to call this API +// operation, your Identity and Access Management (IAM) user account, group, or +// role must be configured with permission to call the DescribeAssociation API +// operation. If you don't have permission to call DescribeAssociation, then you +// receive the following error: An error occurred (AccessDeniedException) when +// calling the UpdateAssociation operation: User: isn't authorized to +// perform: ssm:DescribeAssociation on resource: When you update an +// association, the association immediately runs against the specified targets. You +// can add the ApplyOnlyAtCronInterval parameter to run the association during the +// next schedule run. func (c *Client) UpdateAssociation(ctx context.Context, params *UpdateAssociationInput, optFns ...func(*Options)) (*UpdateAssociationOutput, error) { if params == nil { params = &UpdateAssociationInput{} @@ -77,7 +85,13 @@ type UpdateAssociationInput struct { // The severity level to assign to the association. ComplianceSeverity types.AssociationComplianceSeverity - // The document version you want update for the association. + // The document version you want update for the association. State Manager doesn't + // support running associations that use a new version of a document if that + // document is shared from another account. State Manager always runs the default + // version of a document if shared from another account, even though the Systems + // Manager console shows that a new version was processed. If you want to run an + // association using a new version of a document shared form another account, you + // must set the document version to default. DocumentVersion *string // The maximum number of targets allowed to run the association at the same time. diff --git a/service/ssm/deserializers.go b/service/ssm/deserializers.go index a3391e94830..c0fe0cdc4a9 100644 --- a/service/ssm/deserializers.go +++ b/service/ssm/deserializers.go @@ -23200,6 +23200,78 @@ func awsAwsjson11_deserializeDocumentCalendarNameOrARNList(v *[]string, value in return nil } +func awsAwsjson11_deserializeDocumentCategoryEnumList(v *[]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []string + if *v == nil { + cv = []string{} + } else { + cv = *v + } + + for _, value := range shape { + var col string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Category to be of type string, got %T instead", value) + } + col = jtv + } + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsAwsjson11_deserializeDocumentCategoryList(v *[]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []string + if *v == nil { + cv = []string{} + } else { + cv = *v + } + + for _, value := range shape { + var col string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Category to be of type string, got %T instead", value) + } + col = jtv + } + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentCloudWatchOutputConfig(v **types.CloudWatchOutputConfig, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -24689,6 +24761,16 @@ func awsAwsjson11_deserializeDocumentDocumentDescription(v **types.DocumentDescr sv.Author = ptr.String(jtv) } + case "Category": + if err := awsAwsjson11_deserializeDocumentCategoryList(&sv.Category, value); err != nil { + return err + } + + case "CategoryEnum": + if err := awsAwsjson11_deserializeDocumentCategoryEnumList(&sv.CategoryEnum, value); err != nil { + return err + } + case "CreatedDate": if value != nil { switch jtv := value.(type) { diff --git a/service/ssm/doc.go b/service/ssm/doc.go index 5cb929ac36a..91a6d8fd42c 100644 --- a/service/ssm/doc.go +++ b/service/ssm/doc.go @@ -10,7 +10,7 @@ // Systems Manager lets you remotely and securely manage the configuration of your // managed nodes. A managed node is any Amazon Elastic Compute Cloud (Amazon EC2) // instance, edge device, or on-premises server or virtual machine (VM) that has -// been configured for Systems Manager. With support for IoT Greengrass Version 2 +// been configured for Systems Manager. With support for IoT Greengrass core // devices, the phrase managed instance has been changed to managed node in most of // the Systems Manager documentation. The Systems Manager console, API calls, error // messages, and SSM documents still use the term instance. This reference is diff --git a/service/ssm/types/types.go b/service/ssm/types/types.go index 43196883966..30e544b55af 100644 --- a/service/ssm/types/types.go +++ b/service/ssm/types/types.go @@ -74,7 +74,13 @@ type Association struct { // The association version. AssociationVersion *string - // The version of the document used in the association. + // The version of the document used in the association. State Manager doesn't + // support running associations that use a new version of a document if that + // document is shared from another account. State Manager always runs the default + // version of a document if shared from another account, even though the Systems + // Manager console shows that a new version was processed. If you want to run an + // association using a new version of a document shared form another account, you + // must set the document version to default. DocumentVersion *string // The managed node ID. @@ -848,7 +854,7 @@ type Command struct { // The number of targets for which the command invocation reached a terminal state. // Terminal states include the following: Success, Failed, Execution Timed Out, - // Delivery Timed Out, Canceled, Terminated, or Undeliverable. + // Delivery Timed Out, Cancelled, Terminated, or Undeliverable. CompletedCount int32 // The number of targets for which the status is Delivery Timed Out. @@ -953,7 +959,7 @@ type Command struct { // doesn't have a value of Success but not enough invocations failed for the status // to be Failed. This is a terminal state. // - // * Canceled: The command was terminated + // * Cancelled: The command was terminated // before it was completed. This is a terminal state. // // * Rate Exceeded: The number @@ -1179,7 +1185,7 @@ type CommandInvocation struct { // for one or more plugins wasn't zero. Invocation failures count against the // MaxErrors limit of the parent command. This is a terminal state. // - // * Canceled: + // * Cancelled: // The command was terminated before it was completed. This is a terminal state. // // * @@ -1290,7 +1296,7 @@ type CommandPlugin struct { // for one or more plugins wasn't zero. Invocation failures count against the // MaxErrors limit of the parent command. This is a terminal state. // - // * Canceled: + // * Cancelled: // The command was terminated before it was completed. This is a terminal state. // // * @@ -1582,7 +1588,7 @@ type DocumentDefaultVersionDescription struct { noSmithyDocumentSerde } -// Describes a Amazon Web Services Systems Manager document (SSM document). +// Describes an Amazon Web Services Systems Manager document (SSM document). type DocumentDescription struct { // The version of the document currently approved for use in the organization. @@ -1595,6 +1601,12 @@ type DocumentDescription struct { // The user in your organization who created the document. Author *string + // The classification of a document to help you identify and categorize its use. + Category []string + + // The value that identifies a document's category. + CategoryEnum []string + // The date when the document was created. CreatedDate *time.Time @@ -1640,7 +1652,7 @@ type DocumentDescription struct { // The version of the document that is currently under review. PendingReviewVersion *string - // The list of OS platforms compatible with this SSM document. + // The list of operating system (OS) platforms compatible with this SSM document. PlatformTypes []PlatformType // A list of SSM documents required by a document. For example, an diff --git a/service/sso/internal/endpoints/endpoints.go b/service/sso/internal/endpoints/endpoints.go index 712a3c10b15..c8d1689927d 100644 --- a/service/sso/internal/endpoints/endpoints.go +++ b/service/sso/internal/endpoints/endpoints.go @@ -369,6 +369,14 @@ var defaultPartitions = endpoints.Partitions{ RegionRegex: partitionRegexp.AwsUsGov, IsRegionalized: true, Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "us-gov-east-1", + }: endpoints.Endpoint{ + Hostname: "portal.sso.us-gov-east-1.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "us-gov-east-1", + }, + }, endpoints.EndpointKey{ Region: "us-gov-west-1", }: endpoints.Endpoint{ diff --git a/service/transcribe/api_op_CreateMedicalVocabulary.go b/service/transcribe/api_op_CreateMedicalVocabulary.go index 9f044aa2321..ae80119afec 100644 --- a/service/transcribe/api_op_CreateMedicalVocabulary.go +++ b/service/transcribe/api_op_CreateMedicalVocabulary.go @@ -42,14 +42,14 @@ type CreateMedicalVocabularyInput struct { // The location in Amazon S3 of the text file you use to define your custom // vocabulary. The URI must be in the same Amazon Web Services Region as the // resource that you're calling. Enter information about your VocabularyFileUri in - // the following format: https://s3..amazonaws.com/// The following is an example + // the following format: https://s3..amazonaws.com/// The following is an example // URI for a vocabulary file that is stored in Amazon S3: // https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt For more // information about Amazon S3 object names, see Object Keys // (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys) // in the Amazon S3 Developer Guide. For more information about custom // vocabularies, see Medical Custom Vocabularies - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary-med). + // (https://docs.aws.amazon.com/transcribe/latest/dg/vocabulary-med.html). // // This member is required. VocabularyFileUri *string diff --git a/service/transcribe/api_op_CreateVocabulary.go b/service/transcribe/api_op_CreateVocabulary.go index bda53164846..9aa2d64a7b9 100644 --- a/service/transcribe/api_op_CreateVocabulary.go +++ b/service/transcribe/api_op_CreateVocabulary.go @@ -32,7 +32,7 @@ func (c *Client) CreateVocabulary(ctx context.Context, params *CreateVocabularyI type CreateVocabularyInput struct { // The language code of the vocabulary entries. For a list of languages and their - // corresponding language codes, see transcribe-whatis. + // corresponding language codes, see table-language-matrix. // // This member is required. LanguageCode types.LanguageCode @@ -54,12 +54,13 @@ type CreateVocabularyInput struct { // The S3 location of the text file that contains the definition of the custom // vocabulary. The URI must be in the same region as the API endpoint that you are - // calling. The general form is: For more information about S3 object names, see - // Object Keys + // calling. The general form is: https://s3..amazonaws.com/// For example: + // https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt For more + // information about S3 object names, see Object Keys // (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys) // in the Amazon S3 Developer Guide. For more information about custom // vocabularies, see Custom vocabularies - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary). + // (https://docs.aws.amazon.com/transcribe/latest/dg/custom-vocabulary.html). VocabularyFileUri *string noSmithyDocumentSerde diff --git a/service/transcribe/api_op_CreateVocabularyFilter.go b/service/transcribe/api_op_CreateVocabularyFilter.go index 0295b39a3d5..3f7036cd9d1 100644 --- a/service/transcribe/api_op_CreateVocabularyFilter.go +++ b/service/transcribe/api_op_CreateVocabularyFilter.go @@ -52,8 +52,7 @@ type CreateVocabularyFilterInput struct { // The Amazon S3 location of a text file used as input to create the vocabulary // filter. Only use characters from the character set defined for custom // vocabularies. For a list of character sets, see Character Sets for Custom - // Vocabularies - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary.html#charsets). + // Vocabularies (https://docs.aws.amazon.com/transcribe/latest/dg/charsets.html). // The specified file must be less than 50 KB of UTF-8 characters. If you provide // the location of a list of words in the VocabularyFilterFileUri parameter, you // can't use the Words parameter. @@ -62,8 +61,8 @@ type CreateVocabularyFilterInput struct { // The words to use in the vocabulary filter. Only use characters from the // character set defined for custom vocabularies. For a list of character sets, see // Character Sets for Custom Vocabularies - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary.html#charsets). - // If you provide a list of words in the Words parameter, you can't use the + // (https://docs.aws.amazon.com/transcribe/latest/dg/charsets.html). If you provide + // a list of words in the Words parameter, you can't use the // VocabularyFilterFileUri parameter. Words []string diff --git a/service/transcribe/api_op_StartCallAnalyticsJob.go b/service/transcribe/api_op_StartCallAnalyticsJob.go index bd6be0cc1e2..b621804ef54 100644 --- a/service/transcribe/api_op_StartCallAnalyticsJob.go +++ b/service/transcribe/api_op_StartCallAnalyticsJob.go @@ -81,7 +81,7 @@ type StartCallAnalyticsJobInput struct { // ID:key/1234abcd-12ab-34cd-56ef1234567890ab" // // * ARN of a KMS Key Alias: - // "arn:aws:kms:region:account ID:alias/ExampleAlias" + // "arn:aws:kms:region:accountID:alias/ExampleAlias" // // If you don't specify an // encryption key, the output of the call analytics job is encrypted with the @@ -99,13 +99,13 @@ type StartCallAnalyticsJobInput struct { // // * s3://DOC-EXAMPLE-BUCKET1/folder/ f you specify a path, Amazon // Transcribe saves the output of the analytics job as - // s3://DOC-EXAMPLE-BUCKET1/folder/your-transcription-job-name.json If you specify + // s3://DOC-EXAMPLE-BUCKET1/folder/your-transcription-job-name.json. If you specify // a folder, you must provide a trailing slash. // // * - // s3://DOC-EXAMPLE-BUCKET1/folder/filename.json If you provide a path that has the - // filename specified, Amazon Transcribe saves the output of the analytics job as - // s3://DOC-EXAMPLEBUCKET1/folder/filename.json + // s3://DOC-EXAMPLE-BUCKET1/folder/filename.json. If you provide a path that has + // the filename specified, Amazon Transcribe saves the output of the analytics job + // as s3://DOC-EXAMPLEBUCKET1/folder/filename.json. // // You can specify an Amazon Web // Services Key Management Service (KMS) key to encrypt the output of our analytics diff --git a/service/transcribe/api_op_UpdateMedicalVocabulary.go b/service/transcribe/api_op_UpdateMedicalVocabulary.go index 077e33dcedb..aa4cd03a27c 100644 --- a/service/transcribe/api_op_UpdateMedicalVocabulary.go +++ b/service/transcribe/api_op_UpdateMedicalVocabulary.go @@ -34,7 +34,7 @@ func (c *Client) UpdateMedicalVocabulary(ctx context.Context, params *UpdateMedi type UpdateMedicalVocabularyInput struct { // The language code of the language used for the entries in the updated - // vocabulary. US English (en-US) is the only valid language code in Amazon + // vocabulary. U.S. English (en-US) is the only valid language code in Amazon // Transcribe Medical. // // This member is required. @@ -56,7 +56,7 @@ type UpdateMedicalVocabularyInput struct { // (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys) // in the Amazon S3 Developer Guide. For more information about custom vocabularies // in Amazon Transcribe Medical, see Medical Custom Vocabularies - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary). + // (https://docs.aws.amazon.com/transcribe/latest/dg/vocabulary-med.html). VocabularyFileUri *string noSmithyDocumentSerde diff --git a/service/transcribe/api_op_UpdateVocabulary.go b/service/transcribe/api_op_UpdateVocabulary.go index 550e2c84d12..6ee719f071a 100644 --- a/service/transcribe/api_op_UpdateVocabulary.go +++ b/service/transcribe/api_op_UpdateVocabulary.go @@ -33,7 +33,8 @@ func (c *Client) UpdateVocabulary(ctx context.Context, params *UpdateVocabularyI type UpdateVocabularyInput struct { // The language code of the vocabulary entries. For a list of languages and their - // corresponding language codes, see transcribe-whatis. + // corresponding language codes, see Supported languages + // (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html). // // This member is required. LanguageCode types.LanguageCode @@ -50,12 +51,13 @@ type UpdateVocabularyInput struct { // The S3 location of the text file that contains the definition of the custom // vocabulary. The URI must be in the same region as the API endpoint that you are - // calling. The general form is For example: For more information about S3 object - // names, see Object Keys + // calling. The general form is: https://s3..amazonaws.com/// For example: + // https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt For more + // information about S3 object names, see Object Keys // (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys) // in the Amazon S3 Developer Guide. For more information about custom // vocabularies, see Custom Vocabularies - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary). + // (https://docs.aws.amazon.com/transcribe/latest/dg/custom-vocabulary.html). VocabularyFileUri *string noSmithyDocumentSerde diff --git a/service/transcribe/api_op_UpdateVocabularyFilter.go b/service/transcribe/api_op_UpdateVocabularyFilter.go index 634d0062475..e1d77ff9ebf 100644 --- a/service/transcribe/api_op_UpdateVocabularyFilter.go +++ b/service/transcribe/api_op_UpdateVocabularyFilter.go @@ -40,8 +40,7 @@ type UpdateVocabularyFilterInput struct { // The Amazon S3 location of a text file used as input to create the vocabulary // filter. Only use characters from the character set defined for custom // vocabularies. For a list of character sets, see Character Sets for Custom - // Vocabularies - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary.html#charsets). + // Vocabularies (https://docs.aws.amazon.com/transcribe/latest/dg/charsets.html). // The specified file must be less than 50 KB of UTF-8 characters. If you provide // the location of a list of words in the VocabularyFilterFileUri parameter, you // can't use the Words parameter. @@ -50,8 +49,8 @@ type UpdateVocabularyFilterInput struct { // The words to use in the vocabulary filter. Only use characters from the // character set defined for custom vocabularies. For a list of character sets, see // Character Sets for Custom Vocabularies - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary.html#charsets). - // If you provide a list of words in the Words parameter, you can't use the + // (https://docs.aws.amazon.com/transcribe/latest/dg/charsets.html). If you provide + // a list of words in the Words parameter, you can't use the // VocabularyFilterFileUri parameter. Words []string diff --git a/service/transcribe/types/types.go b/service/transcribe/types/types.go index 0336054565e..4ebfc7baf29 100644 --- a/service/transcribe/types/types.go +++ b/service/transcribe/types/types.go @@ -112,7 +112,7 @@ type CallAnalyticsJob struct { // A value between zero and one that Amazon Transcribe assigned to the language // that it identified in the source audio. This value appears only when you don't // provide a single language code. Larger values indicate that Amazon Transcribe - // has higher confidence in the language that it identified + // has higher confidence in the language that it identified. IdentifiedLanguageScore *float32 // If you know the language spoken between the customer and the agent, specify a @@ -120,9 +120,9 @@ type CallAnalyticsJob struct { // field blank, and Amazon Transcribe will use machine learning to automatically // identify the language. To improve the accuracy of language identification, you // can provide an array containing the possible language codes for the language - // spoken in your audio. Refer to Supported languages and language-specific - // features (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html) - // for additional information. + // spoken in your audio. Refer to Supported languages + // (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html) for + // additional information. LanguageCode LanguageCode // Describes the input media file in a transcription request. @@ -168,8 +168,7 @@ type CallAnalyticsJobSettings struct { // machine learning to identify the language for you. To improve the ability of // Amazon Transcribe to correctly identify the language, you can provide an array // of the languages that can be present in the audio. Refer to Supported languages - // and language-specific features - // (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html) for + // (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html) for // additional information. LanguageOptions []LanguageCode @@ -356,19 +355,18 @@ type JobExecutionSettings struct { type LanguageIdSettings struct { // The name of the language model you want to use when transcribing your audio. The - // model you specify must have the same language code as the transcription job; if - // the languages don't match, the language model won't be applied. + // model you specify must have the same language codes as the transcription job; if + // the languages don't match, the language model isn't be applied. LanguageModelName *string // The name of the vocabulary filter you want to use when transcribing your audio. - // The filter you specify must have the same language code as the transcription - // job; if the languages don't match, the vocabulary filter won't be applied. + // The filter you specify must have the same language codes as the transcription + // job; if the languages don't match, the vocabulary filter isn't be applied. VocabularyFilterName *string // The name of the vocabulary you want to use when processing your transcription - // job. The vocabulary you specify must have the same language code as the - // transcription job; if the languages don't match, the vocabulary won't be - // applied. + // job. The vocabulary you specify must have the same language codes as the + // transcription job; if the languages don't match, the vocabulary isn't applied. VocabularyName *string noSmithyDocumentSerde @@ -416,8 +414,10 @@ type LanguageModel struct { type Media struct { // The S3 object location of the input media file. The URI must be in the same - // region as the API endpoint that you are calling. The general form is: For - // example: For more information about S3 object names, see Object Keys + // region as the API endpoint that you are calling. The general form is: s3://// + // For example: + // s3://AWSDOC-EXAMPLE-BUCKET/example.mp4s3://AWSDOC-EXAMPLE-BUCKET/mediadocs/example.mp4 + // For more information about S3 object names, see Object Keys // (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys) // in the Amazon S3 Developer Guide. MediaFileUri *string @@ -483,14 +483,14 @@ type MedicalTranscriptionJob struct { // Amazon Transcribe Medical can process. For more information, see Guidelines and // Quotas // (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits) - // in the Amazon Transcribe Medical Guide + // in the Amazon Transcribe Medical Guide. // // * Invalid number of channels: number of // channels too large- Your audio contains more channels than Amazon Transcribe // Medical is configured to process. To request additional channels, see Amazon // Transcribe Medical Endpoints and Quotas // (https://docs.aws.amazon.com/general/latest/gr/transcribe-medical.html) in the - // Amazon Web Services General Reference + // Amazon Web Services General Reference. FailureReason *string // The language code for the language spoken in the source audio file. US English @@ -507,9 +507,7 @@ type MedicalTranscriptionJob struct { // The sample rate, in Hertz, of the source audio containing medical information. // If you don't specify the sample rate, Amazon Transcribe Medical determines it // for you. If you choose to specify the sample rate, it must match the rate - // detected by Amazon Transcribe Medical. In most cases, you should leave the - // MedicalMediaSampleHertz blank and let Amazon Transcribe Medical determine the - // sample rate. + // detected by Amazon Transcribe Medical. MediaSampleRateHertz *int32 // The name for a given medical transcription job. @@ -603,7 +601,7 @@ type MedicalTranscriptionSetting struct { // alternative transcriptions of item. The alternative transcriptions also come // with confidence scores provided by Amazon Transcribe Medical. You can't set both // ShowSpeakerLabels and ChannelIdentification in the same request. If you set - // both, your request returns a BadRequestException + // both, your request returns a BadRequestException. ChannelIdentification *bool // The maximum number of alternatives that you tell the service to return. If you @@ -871,7 +869,7 @@ type Subtitles struct { type SubtitlesOutput struct { // Specify the output format for your subtitle file; if you select both SRT and VTT - // formats, two output files are genereated. + // formats, two output files are generated. Formats []SubtitleFormat // Choose the output location for your subtitle file. This location must be an S3 @@ -1025,7 +1023,7 @@ type TranscriptionJob struct { // Language-specific settings that can be specified when language identification is // enabled for your transcription job. These settings include VocabularyName, - // VocabularyFilterName, and LanguageModelNameLanguageModelName. + // VocabularyFilterName, and LanguageModelName. LanguageIdSettings map[string]LanguageIdSettings // An object that shows the optional array of languages inputted for transcription @@ -1038,7 +1036,7 @@ type TranscriptionJob struct { // The format of the input media file. MediaFormat MediaFormat - // The sample rate, in Hertz, of the audio track in the input media file. + // The sample rate, in Hertz (Hz), of the audio track in the input media file. MediaSampleRateHertz *int32 // An object containing the details of your custom language model. diff --git a/service/workspaces/api_op_CreateConnectClientAddIn.go b/service/workspaces/api_op_CreateConnectClientAddIn.go new file mode 100644 index 00000000000..e5447b80204 --- /dev/null +++ b/service/workspaces/api_op_CreateConnectClientAddIn.go @@ -0,0 +1,132 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package workspaces + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Creates a client-add-in for Amazon Connect within a directory. You can create +// only one Amazon Connect client add-in within a directory. This client add-in +// allows WorkSpaces users to seamlessly connect to Amazon Connect. +func (c *Client) CreateConnectClientAddIn(ctx context.Context, params *CreateConnectClientAddInInput, optFns ...func(*Options)) (*CreateConnectClientAddInOutput, error) { + if params == nil { + params = &CreateConnectClientAddInInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "CreateConnectClientAddIn", params, optFns, c.addOperationCreateConnectClientAddInMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*CreateConnectClientAddInOutput) + out.ResultMetadata = metadata + return out, nil +} + +type CreateConnectClientAddInInput struct { + + // The name of the client add-in. + // + // This member is required. + Name *string + + // The directory identifier for which to configure the client add-in. + // + // This member is required. + ResourceId *string + + // The endpoint URL of the Amazon Connect client add-in. + // + // This member is required. + URL *string + + noSmithyDocumentSerde +} + +type CreateConnectClientAddInOutput struct { + + // The client add-in identifier. + AddInId *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationCreateConnectClientAddInMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsAwsjson11_serializeOpCreateConnectClientAddIn{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpCreateConnectClientAddIn{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpCreateConnectClientAddInValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateConnectClientAddIn(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opCreateConnectClientAddIn(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "workspaces", + OperationName: "CreateConnectClientAddIn", + } +} diff --git a/service/workspaces/api_op_DeleteConnectClientAddIn.go b/service/workspaces/api_op_DeleteConnectClientAddIn.go new file mode 100644 index 00000000000..fa88c88d1ac --- /dev/null +++ b/service/workspaces/api_op_DeleteConnectClientAddIn.go @@ -0,0 +1,122 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package workspaces + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Deletes a client-add-in for Amazon Connect that is configured within a +// directory. +func (c *Client) DeleteConnectClientAddIn(ctx context.Context, params *DeleteConnectClientAddInInput, optFns ...func(*Options)) (*DeleteConnectClientAddInOutput, error) { + if params == nil { + params = &DeleteConnectClientAddInInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DeleteConnectClientAddIn", params, optFns, c.addOperationDeleteConnectClientAddInMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DeleteConnectClientAddInOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DeleteConnectClientAddInInput struct { + + // The identifier of the client add-in to delete. + // + // This member is required. + AddInId *string + + // The directory identifier for which the client add-in is configured. + // + // This member is required. + ResourceId *string + + noSmithyDocumentSerde +} + +type DeleteConnectClientAddInOutput struct { + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDeleteConnectClientAddInMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsAwsjson11_serializeOpDeleteConnectClientAddIn{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpDeleteConnectClientAddIn{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpDeleteConnectClientAddInValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteConnectClientAddIn(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opDeleteConnectClientAddIn(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "workspaces", + OperationName: "DeleteConnectClientAddIn", + } +} diff --git a/service/workspaces/api_op_DescribeConnectClientAddIns.go b/service/workspaces/api_op_DescribeConnectClientAddIns.go new file mode 100644 index 00000000000..634aa35d16c --- /dev/null +++ b/service/workspaces/api_op_DescribeConnectClientAddIns.go @@ -0,0 +1,132 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package workspaces + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/aws-sdk-go-v2/service/workspaces/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Retrieves a list of Amazon Connect client add-ins that have been created. +func (c *Client) DescribeConnectClientAddIns(ctx context.Context, params *DescribeConnectClientAddInsInput, optFns ...func(*Options)) (*DescribeConnectClientAddInsOutput, error) { + if params == nil { + params = &DescribeConnectClientAddInsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DescribeConnectClientAddIns", params, optFns, c.addOperationDescribeConnectClientAddInsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DescribeConnectClientAddInsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DescribeConnectClientAddInsInput struct { + + // The directory identifier for which the client add-in is configured. + // + // This member is required. + ResourceId *string + + // The maximum number of items to return. + MaxResults *int32 + + // If you received a NextToken from a previous call that was paginated, provide + // this token to receive the next set of results. + NextToken *string + + noSmithyDocumentSerde +} + +type DescribeConnectClientAddInsOutput struct { + + // Information about client add-ins. + AddIns []types.ConnectClientAddIn + + // The token to use to retrieve the next page of results. This value is null when + // there are no more results to return. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDescribeConnectClientAddInsMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsAwsjson11_serializeOpDescribeConnectClientAddIns{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpDescribeConnectClientAddIns{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpDescribeConnectClientAddInsValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeConnectClientAddIns(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opDescribeConnectClientAddIns(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "workspaces", + OperationName: "DescribeConnectClientAddIns", + } +} diff --git a/service/workspaces/api_op_UpdateConnectClientAddIn.go b/service/workspaces/api_op_UpdateConnectClientAddIn.go new file mode 100644 index 00000000000..06da44d3778 --- /dev/null +++ b/service/workspaces/api_op_UpdateConnectClientAddIn.go @@ -0,0 +1,128 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package workspaces + +import ( + "context" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Updates a Amazon Connect client add-in. Use this action to update the name and +// endpoint URL of a Amazon Connect client add-in. +func (c *Client) UpdateConnectClientAddIn(ctx context.Context, params *UpdateConnectClientAddInInput, optFns ...func(*Options)) (*UpdateConnectClientAddInOutput, error) { + if params == nil { + params = &UpdateConnectClientAddInInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "UpdateConnectClientAddIn", params, optFns, c.addOperationUpdateConnectClientAddInMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*UpdateConnectClientAddInOutput) + out.ResultMetadata = metadata + return out, nil +} + +type UpdateConnectClientAddInInput struct { + + // The identifier of the client add-in to update. + // + // This member is required. + AddInId *string + + // The directory identifier for which the client add-in is configured. + // + // This member is required. + ResourceId *string + + // The name of the client add-in. + Name *string + + // The endpoint URL of the Amazon Connect client add-in. + URL *string + + noSmithyDocumentSerde +} + +type UpdateConnectClientAddInOutput struct { + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationUpdateConnectClientAddInMiddlewares(stack *middleware.Stack, options Options) (err error) { + err = stack.Serialize.Add(&awsAwsjson11_serializeOpUpdateConnectClientAddIn{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpUpdateConnectClientAddIn{}, middleware.After) + if err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { + return err + } + if err = addRetryMiddlewares(stack, options); err != nil { + return err + } + if err = addHTTPSignerV4Middleware(stack, options); err != nil { + return err + } + if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { + return err + } + if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { + return err + } + if err = addClientUserAgent(stack); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addOpUpdateConnectClientAddInValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUpdateConnectClientAddIn(options.Region), middleware.Before); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opUpdateConnectClientAddIn(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + SigningName: "workspaces", + OperationName: "UpdateConnectClientAddIn", + } +} diff --git a/service/workspaces/deserializers.go b/service/workspaces/deserializers.go index 0db62114937..9339162dce2 100644 --- a/service/workspaces/deserializers.go +++ b/service/workspaces/deserializers.go @@ -523,6 +523,129 @@ func awsAwsjson11_deserializeOpErrorCopyWorkspaceImage(response *smithyhttp.Resp } } +type awsAwsjson11_deserializeOpCreateConnectClientAddIn struct { +} + +func (*awsAwsjson11_deserializeOpCreateConnectClientAddIn) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsjson11_deserializeOpCreateConnectClientAddIn) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsjson11_deserializeOpErrorCreateConnectClientAddIn(response, &metadata) + } + output := &CreateConnectClientAddInOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsAwsjson11_deserializeOpDocumentCreateConnectClientAddInOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsjson11_deserializeOpErrorCreateConnectClientAddIn(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InvalidParameterValuesException", errorCode): + return awsAwsjson11_deserializeErrorInvalidParameterValuesException(response, errorBody) + + case strings.EqualFold("ResourceAlreadyExistsException", errorCode): + return awsAwsjson11_deserializeErrorResourceAlreadyExistsException(response, errorBody) + + case strings.EqualFold("ResourceCreationFailedException", errorCode): + return awsAwsjson11_deserializeErrorResourceCreationFailedException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsAwsjson11_deserializeOpCreateConnectionAlias struct { } @@ -1258,6 +1381,123 @@ func awsAwsjson11_deserializeOpErrorCreateWorkspaces(response *smithyhttp.Respon } } +type awsAwsjson11_deserializeOpDeleteConnectClientAddIn struct { +} + +func (*awsAwsjson11_deserializeOpDeleteConnectClientAddIn) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsjson11_deserializeOpDeleteConnectClientAddIn) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsjson11_deserializeOpErrorDeleteConnectClientAddIn(response, &metadata) + } + output := &DeleteConnectClientAddInOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsAwsjson11_deserializeOpDocumentDeleteConnectClientAddInOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsjson11_deserializeOpErrorDeleteConnectClientAddIn(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InvalidParameterValuesException", errorCode): + return awsAwsjson11_deserializeErrorInvalidParameterValuesException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsAwsjson11_deserializeOpDeleteConnectionAlias struct { } @@ -2317,6 +2557,123 @@ func awsAwsjson11_deserializeOpErrorDescribeClientProperties(response *smithyhtt } } +type awsAwsjson11_deserializeOpDescribeConnectClientAddIns struct { +} + +func (*awsAwsjson11_deserializeOpDescribeConnectClientAddIns) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsjson11_deserializeOpDescribeConnectClientAddIns) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsjson11_deserializeOpErrorDescribeConnectClientAddIns(response, &metadata) + } + output := &DescribeConnectClientAddInsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsAwsjson11_deserializeOpDocumentDescribeConnectClientAddInsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsjson11_deserializeOpErrorDescribeConnectClientAddIns(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InvalidParameterValuesException", errorCode): + return awsAwsjson11_deserializeErrorInvalidParameterValuesException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsAwsjson11_deserializeOpDescribeConnectionAliases struct { } @@ -5609,7 +5966,115 @@ func (*awsAwsjson11_deserializeOpStartWorkspaces) ID() string { return "OperationDeserializer" } -func (m *awsAwsjson11_deserializeOpStartWorkspaces) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsjson11_deserializeOpStartWorkspaces) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsjson11_deserializeOpErrorStartWorkspaces(response, &metadata) + } + output := &StartWorkspacesOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + err = awsAwsjson11_deserializeOpDocumentStartWorkspacesOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsjson11_deserializeOpErrorStartWorkspaces(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + code := response.Header.Get("X-Amzn-ErrorType") + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + code, message, err := restjson.GetErrorInfo(decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return err + } + + errorBody.Seek(0, io.SeekStart) + if len(code) != 0 { + errorCode = restjson.SanitizeErrorCode(code) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +type awsAwsjson11_deserializeOpStopWorkspaces struct { +} + +func (*awsAwsjson11_deserializeOpStopWorkspaces) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsjson11_deserializeOpStopWorkspaces) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5623,9 +6088,9 @@ func (m *awsAwsjson11_deserializeOpStartWorkspaces) HandleDeserialize(ctx contex } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsjson11_deserializeOpErrorStartWorkspaces(response, &metadata) + return out, metadata, awsAwsjson11_deserializeOpErrorStopWorkspaces(response, &metadata) } - output := &StartWorkspacesOutput{} + output := &StopWorkspacesOutput{} out.Result = output var buff [1024]byte @@ -5645,7 +6110,7 @@ func (m *awsAwsjson11_deserializeOpStartWorkspaces) HandleDeserialize(ctx contex return out, metadata, err } - err = awsAwsjson11_deserializeOpDocumentStartWorkspacesOutput(&output, shape) + err = awsAwsjson11_deserializeOpDocumentStopWorkspacesOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -5659,7 +6124,7 @@ func (m *awsAwsjson11_deserializeOpStartWorkspaces) HandleDeserialize(ctx contex return out, metadata, err } -func awsAwsjson11_deserializeOpErrorStartWorkspaces(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsjson11_deserializeOpErrorStopWorkspaces(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5710,14 +6175,14 @@ func awsAwsjson11_deserializeOpErrorStartWorkspaces(response *smithyhttp.Respons } } -type awsAwsjson11_deserializeOpStopWorkspaces struct { +type awsAwsjson11_deserializeOpTerminateWorkspaces struct { } -func (*awsAwsjson11_deserializeOpStopWorkspaces) ID() string { +func (*awsAwsjson11_deserializeOpTerminateWorkspaces) ID() string { return "OperationDeserializer" } -func (m *awsAwsjson11_deserializeOpStopWorkspaces) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsjson11_deserializeOpTerminateWorkspaces) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5731,9 +6196,9 @@ func (m *awsAwsjson11_deserializeOpStopWorkspaces) HandleDeserialize(ctx context } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsjson11_deserializeOpErrorStopWorkspaces(response, &metadata) + return out, metadata, awsAwsjson11_deserializeOpErrorTerminateWorkspaces(response, &metadata) } - output := &StopWorkspacesOutput{} + output := &TerminateWorkspacesOutput{} out.Result = output var buff [1024]byte @@ -5753,7 +6218,7 @@ func (m *awsAwsjson11_deserializeOpStopWorkspaces) HandleDeserialize(ctx context return out, metadata, err } - err = awsAwsjson11_deserializeOpDocumentStopWorkspacesOutput(&output, shape) + err = awsAwsjson11_deserializeOpDocumentTerminateWorkspacesOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -5767,7 +6232,7 @@ func (m *awsAwsjson11_deserializeOpStopWorkspaces) HandleDeserialize(ctx context return out, metadata, err } -func awsAwsjson11_deserializeOpErrorStopWorkspaces(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsjson11_deserializeOpErrorTerminateWorkspaces(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5818,14 +6283,14 @@ func awsAwsjson11_deserializeOpErrorStopWorkspaces(response *smithyhttp.Response } } -type awsAwsjson11_deserializeOpTerminateWorkspaces struct { +type awsAwsjson11_deserializeOpUpdateConnectClientAddIn struct { } -func (*awsAwsjson11_deserializeOpTerminateWorkspaces) ID() string { +func (*awsAwsjson11_deserializeOpUpdateConnectClientAddIn) ID() string { return "OperationDeserializer" } -func (m *awsAwsjson11_deserializeOpTerminateWorkspaces) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsjson11_deserializeOpUpdateConnectClientAddIn) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5839,9 +6304,9 @@ func (m *awsAwsjson11_deserializeOpTerminateWorkspaces) HandleDeserialize(ctx co } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsjson11_deserializeOpErrorTerminateWorkspaces(response, &metadata) + return out, metadata, awsAwsjson11_deserializeOpErrorUpdateConnectClientAddIn(response, &metadata) } - output := &TerminateWorkspacesOutput{} + output := &UpdateConnectClientAddInOutput{} out.Result = output var buff [1024]byte @@ -5861,7 +6326,7 @@ func (m *awsAwsjson11_deserializeOpTerminateWorkspaces) HandleDeserialize(ctx co return out, metadata, err } - err = awsAwsjson11_deserializeOpDocumentTerminateWorkspacesOutput(&output, shape) + err = awsAwsjson11_deserializeOpDocumentUpdateConnectClientAddInOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -5875,7 +6340,7 @@ func (m *awsAwsjson11_deserializeOpTerminateWorkspaces) HandleDeserialize(ctx co return out, metadata, err } -func awsAwsjson11_deserializeOpErrorTerminateWorkspaces(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsjson11_deserializeOpErrorUpdateConnectClientAddIn(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5916,6 +6381,15 @@ func awsAwsjson11_deserializeOpErrorTerminateWorkspaces(response *smithyhttp.Res } switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InvalidParameterValuesException", errorCode): + return awsAwsjson11_deserializeErrorInvalidParameterValuesException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody) + default: genericError := &smithy.GenericAPIError{ Code: errorCode, @@ -7270,6 +7744,107 @@ func awsAwsjson11_deserializeDocumentComputeType(v **types.ComputeType, value in return nil } +func awsAwsjson11_deserializeDocumentConnectClientAddIn(v **types.ConnectClientAddIn, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.ConnectClientAddIn + if *v == nil { + sv = &types.ConnectClientAddIn{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "AddInId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AmazonUuid to be of type string, got %T instead", value) + } + sv.AddInId = ptr.String(jtv) + } + + case "Name": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AddInName to be of type string, got %T instead", value) + } + sv.Name = ptr.String(jtv) + } + + case "ResourceId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DirectoryId to be of type string, got %T instead", value) + } + sv.ResourceId = ptr.String(jtv) + } + + case "URL": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AddInUrl to be of type string, got %T instead", value) + } + sv.URL = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsAwsjson11_deserializeDocumentConnectClientAddInList(v *[]types.ConnectClientAddIn, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.ConnectClientAddIn + if *v == nil { + cv = []types.ConnectClientAddIn{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.ConnectClientAddIn + destAddr := &col + if err := awsAwsjson11_deserializeDocumentConnectClientAddIn(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentConnectionAlias(v **types.ConnectionAlias, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -10595,6 +11170,46 @@ func awsAwsjson11_deserializeOpDocumentCopyWorkspaceImageOutput(v **CopyWorkspac return nil } +func awsAwsjson11_deserializeOpDocumentCreateConnectClientAddInOutput(v **CreateConnectClientAddInOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *CreateConnectClientAddInOutput + if *v == nil { + sv = &CreateConnectClientAddInOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "AddInId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AmazonUuid to be of type string, got %T instead", value) + } + sv.AddInId = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsAwsjson11_deserializeOpDocumentCreateConnectionAliasOutput(v **CreateConnectionAliasOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -10823,6 +11438,37 @@ func awsAwsjson11_deserializeOpDocumentCreateWorkspacesOutput(v **CreateWorkspac return nil } +func awsAwsjson11_deserializeOpDocumentDeleteConnectClientAddInOutput(v **DeleteConnectClientAddInOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *DeleteConnectClientAddInOutput + if *v == nil { + sv = &DeleteConnectClientAddInOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsAwsjson11_deserializeOpDocumentDeleteConnectionAliasOutput(v **DeleteConnectionAliasOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -11139,6 +11785,51 @@ func awsAwsjson11_deserializeOpDocumentDescribeClientPropertiesOutput(v **Descri return nil } +func awsAwsjson11_deserializeOpDocumentDescribeConnectClientAddInsOutput(v **DescribeConnectClientAddInsOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *DescribeConnectClientAddInsOutput + if *v == nil { + sv = &DescribeConnectClientAddInsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "AddIns": + if err := awsAwsjson11_deserializeDocumentConnectClientAddInList(&sv.AddIns, value); err != nil { + return err + } + + case "NextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected PaginationToken to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsAwsjson11_deserializeOpDocumentDescribeConnectionAliasesOutput(v **DescribeConnectionAliasesOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -12325,6 +13016,37 @@ func awsAwsjson11_deserializeOpDocumentTerminateWorkspacesOutput(v **TerminateWo return nil } +func awsAwsjson11_deserializeOpDocumentUpdateConnectClientAddInOutput(v **UpdateConnectClientAddInOutput, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *UpdateConnectClientAddInOutput + if *v == nil { + sv = &UpdateConnectClientAddInOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsAwsjson11_deserializeOpDocumentUpdateConnectionAliasPermissionOutput(v **UpdateConnectionAliasPermissionOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/workspaces/generated.json b/service/workspaces/generated.json index 05fb45abd5a..f065633b611 100644 --- a/service/workspaces/generated.json +++ b/service/workspaces/generated.json @@ -11,12 +11,14 @@ "api_op_AssociateIpGroups.go", "api_op_AuthorizeIpRules.go", "api_op_CopyWorkspaceImage.go", + "api_op_CreateConnectClientAddIn.go", "api_op_CreateConnectionAlias.go", "api_op_CreateIpGroup.go", "api_op_CreateTags.go", "api_op_CreateUpdatedWorkspaceImage.go", "api_op_CreateWorkspaceBundle.go", "api_op_CreateWorkspaces.go", + "api_op_DeleteConnectClientAddIn.go", "api_op_DeleteConnectionAlias.go", "api_op_DeleteIpGroup.go", "api_op_DeleteTags.go", @@ -26,6 +28,7 @@ "api_op_DescribeAccount.go", "api_op_DescribeAccountModifications.go", "api_op_DescribeClientProperties.go", + "api_op_DescribeConnectClientAddIns.go", "api_op_DescribeConnectionAliasPermissions.go", "api_op_DescribeConnectionAliases.go", "api_op_DescribeIpGroups.go", @@ -57,6 +60,7 @@ "api_op_StartWorkspaces.go", "api_op_StopWorkspaces.go", "api_op_TerminateWorkspaces.go", + "api_op_UpdateConnectClientAddIn.go", "api_op_UpdateConnectionAliasPermission.go", "api_op_UpdateRulesOfIpGroup.go", "api_op_UpdateWorkspaceBundle.go", diff --git a/service/workspaces/serializers.go b/service/workspaces/serializers.go index 0bc4c6c5e4e..6c67021d59b 100644 --- a/service/workspaces/serializers.go +++ b/service/workspaces/serializers.go @@ -235,6 +235,61 @@ func (m *awsAwsjson11_serializeOpCopyWorkspaceImage) HandleSerialize(ctx context return next.HandleSerialize(ctx, in) } +type awsAwsjson11_serializeOpCreateConnectClientAddIn struct { +} + +func (*awsAwsjson11_serializeOpCreateConnectClientAddIn) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsjson11_serializeOpCreateConnectClientAddIn) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*CreateConnectClientAddInInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1") + httpBindingEncoder.SetHeader("X-Amz-Target").String("WorkspacesService.CreateConnectClientAddIn") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsAwsjson11_serializeOpDocumentCreateConnectClientAddInInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + type awsAwsjson11_serializeOpCreateConnectionAlias struct { } @@ -565,6 +620,61 @@ func (m *awsAwsjson11_serializeOpCreateWorkspaces) HandleSerialize(ctx context.C return next.HandleSerialize(ctx, in) } +type awsAwsjson11_serializeOpDeleteConnectClientAddIn struct { +} + +func (*awsAwsjson11_serializeOpDeleteConnectClientAddIn) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsjson11_serializeOpDeleteConnectClientAddIn) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DeleteConnectClientAddInInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1") + httpBindingEncoder.SetHeader("X-Amz-Target").String("WorkspacesService.DeleteConnectClientAddIn") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsAwsjson11_serializeOpDocumentDeleteConnectClientAddInInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + type awsAwsjson11_serializeOpDeleteConnectionAlias struct { } @@ -1060,6 +1170,61 @@ func (m *awsAwsjson11_serializeOpDescribeClientProperties) HandleSerialize(ctx c return next.HandleSerialize(ctx, in) } +type awsAwsjson11_serializeOpDescribeConnectClientAddIns struct { +} + +func (*awsAwsjson11_serializeOpDescribeConnectClientAddIns) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsjson11_serializeOpDescribeConnectClientAddIns) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DescribeConnectClientAddInsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1") + httpBindingEncoder.SetHeader("X-Amz-Target").String("WorkspacesService.DescribeConnectClientAddIns") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsAwsjson11_serializeOpDocumentDescribeConnectClientAddInsInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + type awsAwsjson11_serializeOpDescribeConnectionAliases struct { } @@ -2765,6 +2930,61 @@ func (m *awsAwsjson11_serializeOpTerminateWorkspaces) HandleSerialize(ctx contex return next.HandleSerialize(ctx, in) } +type awsAwsjson11_serializeOpUpdateConnectClientAddIn struct { +} + +func (*awsAwsjson11_serializeOpUpdateConnectClientAddIn) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsjson11_serializeOpUpdateConnectClientAddIn) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*UpdateConnectClientAddInInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1") + httpBindingEncoder.SetHeader("X-Amz-Target").String("WorkspacesService.UpdateConnectClientAddIn") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsAwsjson11_serializeOpDocumentUpdateConnectClientAddInInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} + type awsAwsjson11_serializeOpUpdateConnectionAliasPermission struct { } @@ -3656,6 +3876,28 @@ func awsAwsjson11_serializeOpDocumentCopyWorkspaceImageInput(v *CopyWorkspaceIma return nil } +func awsAwsjson11_serializeOpDocumentCreateConnectClientAddInInput(v *CreateConnectClientAddInInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Name != nil { + ok := object.Key("Name") + ok.String(*v.Name) + } + + if v.ResourceId != nil { + ok := object.Key("ResourceId") + ok.String(*v.ResourceId) + } + + if v.URL != nil { + ok := object.Key("URL") + ok.String(*v.URL) + } + + return nil +} + func awsAwsjson11_serializeOpDocumentCreateConnectionAliasInput(v *CreateConnectionAliasInput, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -3818,6 +4060,23 @@ func awsAwsjson11_serializeOpDocumentCreateWorkspacesInput(v *CreateWorkspacesIn return nil } +func awsAwsjson11_serializeOpDocumentDeleteConnectClientAddInInput(v *DeleteConnectClientAddInInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.AddInId != nil { + ok := object.Key("AddInId") + ok.String(*v.AddInId) + } + + if v.ResourceId != nil { + ok := object.Key("ResourceId") + ok.String(*v.ResourceId) + } + + return nil +} + func awsAwsjson11_serializeOpDocumentDeleteConnectionAliasInput(v *DeleteConnectionAliasInput, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -3930,6 +4189,28 @@ func awsAwsjson11_serializeOpDocumentDescribeClientPropertiesInput(v *DescribeCl return nil } +func awsAwsjson11_serializeOpDocumentDescribeConnectClientAddInsInput(v *DescribeConnectClientAddInsInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.MaxResults != nil { + ok := object.Key("MaxResults") + ok.Integer(*v.MaxResults) + } + + if v.NextToken != nil { + ok := object.Key("NextToken") + ok.String(*v.NextToken) + } + + if v.ResourceId != nil { + ok := object.Key("ResourceId") + ok.String(*v.ResourceId) + } + + return nil +} + func awsAwsjson11_serializeOpDocumentDescribeConnectionAliasesInput(v *DescribeConnectionAliasesInput, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -4568,6 +4849,33 @@ func awsAwsjson11_serializeOpDocumentTerminateWorkspacesInput(v *TerminateWorksp return nil } +func awsAwsjson11_serializeOpDocumentUpdateConnectClientAddInInput(v *UpdateConnectClientAddInInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.AddInId != nil { + ok := object.Key("AddInId") + ok.String(*v.AddInId) + } + + if v.Name != nil { + ok := object.Key("Name") + ok.String(*v.Name) + } + + if v.ResourceId != nil { + ok := object.Key("ResourceId") + ok.String(*v.ResourceId) + } + + if v.URL != nil { + ok := object.Key("URL") + ok.String(*v.URL) + } + + return nil +} + func awsAwsjson11_serializeOpDocumentUpdateConnectionAliasPermissionInput(v *UpdateConnectionAliasPermissionInput, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/workspaces/types/types.go b/service/workspaces/types/types.go index fa700f62fe1..68109f3ec14 100644 --- a/service/workspaces/types/types.go +++ b/service/workspaces/types/types.go @@ -66,6 +66,24 @@ type ComputeType struct { noSmithyDocumentSerde } +// Describes an Amazon Connect client add-in. +type ConnectClientAddIn struct { + + // The client add-in identifier. + AddInId *string + + // The name of the client add in. + Name *string + + // The directory identifier for which the client add-in is configured. + ResourceId *string + + // The endpoint URL of the client add-in. + URL *string + + noSmithyDocumentSerde +} + // Describes a connection alias. Connection aliases are used for cross-Region // redirection. For more information, see Cross-Region Redirection for Amazon // WorkSpaces diff --git a/service/workspaces/validators.go b/service/workspaces/validators.go index 7e154caefbb..5626e8c28c6 100644 --- a/service/workspaces/validators.go +++ b/service/workspaces/validators.go @@ -90,6 +90,26 @@ func (m *validateOpCopyWorkspaceImage) HandleInitialize(ctx context.Context, in return next.HandleInitialize(ctx, in) } +type validateOpCreateConnectClientAddIn struct { +} + +func (*validateOpCreateConnectClientAddIn) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpCreateConnectClientAddIn) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*CreateConnectClientAddInInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpCreateConnectClientAddInInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpCreateConnectionAlias struct { } @@ -210,6 +230,26 @@ func (m *validateOpCreateWorkspaces) HandleInitialize(ctx context.Context, in mi return next.HandleInitialize(ctx, in) } +type validateOpDeleteConnectClientAddIn struct { +} + +func (*validateOpDeleteConnectClientAddIn) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDeleteConnectClientAddIn) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DeleteConnectClientAddInInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDeleteConnectClientAddInInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDeleteConnectionAlias struct { } @@ -330,6 +370,26 @@ func (m *validateOpDescribeClientProperties) HandleInitialize(ctx context.Contex return next.HandleInitialize(ctx, in) } +type validateOpDescribeConnectClientAddIns struct { +} + +func (*validateOpDescribeConnectClientAddIns) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDescribeConnectClientAddIns) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DescribeConnectClientAddInsInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDescribeConnectClientAddInsInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDescribeConnectionAliasPermissions struct { } @@ -790,6 +850,26 @@ func (m *validateOpTerminateWorkspaces) HandleInitialize(ctx context.Context, in return next.HandleInitialize(ctx, in) } +type validateOpUpdateConnectClientAddIn struct { +} + +func (*validateOpUpdateConnectClientAddIn) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpUpdateConnectClientAddIn) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*UpdateConnectClientAddInInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpUpdateConnectClientAddInInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpUpdateConnectionAliasPermission struct { } @@ -866,6 +946,10 @@ func addOpCopyWorkspaceImageValidationMiddleware(stack *middleware.Stack) error return stack.Initialize.Add(&validateOpCopyWorkspaceImage{}, middleware.After) } +func addOpCreateConnectClientAddInValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpCreateConnectClientAddIn{}, middleware.After) +} + func addOpCreateConnectionAliasValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpCreateConnectionAlias{}, middleware.After) } @@ -890,6 +974,10 @@ func addOpCreateWorkspacesValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpCreateWorkspaces{}, middleware.After) } +func addOpDeleteConnectClientAddInValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDeleteConnectClientAddIn{}, middleware.After) +} + func addOpDeleteConnectionAliasValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDeleteConnectionAlias{}, middleware.After) } @@ -914,6 +1002,10 @@ func addOpDescribeClientPropertiesValidationMiddleware(stack *middleware.Stack) return stack.Initialize.Add(&validateOpDescribeClientProperties{}, middleware.After) } +func addOpDescribeConnectClientAddInsValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDescribeConnectClientAddIns{}, middleware.After) +} + func addOpDescribeConnectionAliasPermissionsValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDescribeConnectionAliasPermissions{}, middleware.After) } @@ -1006,6 +1098,10 @@ func addOpTerminateWorkspacesValidationMiddleware(stack *middleware.Stack) error return stack.Initialize.Add(&validateOpTerminateWorkspaces{}, middleware.After) } +func addOpUpdateConnectClientAddInValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpUpdateConnectClientAddIn{}, middleware.After) +} + func addOpUpdateConnectionAliasPermissionValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpUpdateConnectionAliasPermission{}, middleware.After) } @@ -1287,6 +1383,27 @@ func validateOpCopyWorkspaceImageInput(v *CopyWorkspaceImageInput) error { } } +func validateOpCreateConnectClientAddInInput(v *CreateConnectClientAddInInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "CreateConnectClientAddInInput"} + if v.ResourceId == nil { + invalidParams.Add(smithy.NewErrParamRequired("ResourceId")) + } + if v.Name == nil { + invalidParams.Add(smithy.NewErrParamRequired("Name")) + } + if v.URL == nil { + invalidParams.Add(smithy.NewErrParamRequired("URL")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpCreateConnectionAliasInput(v *CreateConnectionAliasInput) error { if v == nil { return nil @@ -1426,6 +1543,24 @@ func validateOpCreateWorkspacesInput(v *CreateWorkspacesInput) error { } } +func validateOpDeleteConnectClientAddInInput(v *DeleteConnectClientAddInInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DeleteConnectClientAddInInput"} + if v.AddInId == nil { + invalidParams.Add(smithy.NewErrParamRequired("AddInId")) + } + if v.ResourceId == nil { + invalidParams.Add(smithy.NewErrParamRequired("ResourceId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDeleteConnectionAliasInput(v *DeleteConnectionAliasInput) error { if v == nil { return nil @@ -1519,6 +1654,21 @@ func validateOpDescribeClientPropertiesInput(v *DescribeClientPropertiesInput) e } } +func validateOpDescribeConnectClientAddInsInput(v *DescribeConnectClientAddInsInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DescribeConnectClientAddInsInput"} + if v.ResourceId == nil { + invalidParams.Add(smithy.NewErrParamRequired("ResourceId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDescribeConnectionAliasPermissionsInput(v *DescribeConnectionAliasPermissionsInput) error { if v == nil { return nil @@ -1925,6 +2075,24 @@ func validateOpTerminateWorkspacesInput(v *TerminateWorkspacesInput) error { } } +func validateOpUpdateConnectClientAddInInput(v *UpdateConnectClientAddInInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "UpdateConnectClientAddInInput"} + if v.AddInId == nil { + invalidParams.Add(smithy.NewErrParamRequired("AddInId")) + } + if v.ResourceId == nil { + invalidParams.Add(smithy.NewErrParamRequired("ResourceId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpUpdateConnectionAliasPermissionInput(v *UpdateConnectionAliasPermissionInput) error { if v == nil { return nil